github.com/goharbor/go-client@v0.210.0/pkg/sdk/v2.0/client/member/member_client.go (about) 1 // Code generated by go-swagger; DO NOT EDIT. 2 3 package member 4 5 // This file was generated by the swagger tool. 6 // Editing this file might prove futile when you re-run the swagger generate command 7 8 import ( 9 "context" 10 11 "github.com/go-openapi/runtime" 12 13 strfmt "github.com/go-openapi/strfmt" 14 ) 15 16 //go:generate mockery -name API -inpkg 17 18 // API is the interface of the member client 19 type API interface { 20 /* 21 CreateProjectMember creates project member 22 23 Create project member relationship, the member can be one of the user_member and group_member, The user_member need to specify user_id or username. If the user already exist in harbor DB, specify the user_id, If does not exist in harbor DB, it will SearchAndOnBoard the user. The group_member need to specify id or ldap_group_dn. If the group already exist in harbor DB. specify the user group's id, If does not exist, it will SearchAndOnBoard the group. */ 24 CreateProjectMember(ctx context.Context, params *CreateProjectMemberParams) (*CreateProjectMemberCreated, error) 25 /* 26 DeleteProjectMember deletes project member*/ 27 DeleteProjectMember(ctx context.Context, params *DeleteProjectMemberParams) (*DeleteProjectMemberOK, error) 28 /* 29 GetProjectMember gets the project member information 30 31 Get the project member information*/ 32 GetProjectMember(ctx context.Context, params *GetProjectMemberParams) (*GetProjectMemberOK, error) 33 /* 34 ListProjectMembers gets all project member information 35 36 Get all project member information*/ 37 ListProjectMembers(ctx context.Context, params *ListProjectMembersParams) (*ListProjectMembersOK, error) 38 /* 39 UpdateProjectMember updates project member 40 41 Update project member relationship*/ 42 UpdateProjectMember(ctx context.Context, params *UpdateProjectMemberParams) (*UpdateProjectMemberOK, error) 43 } 44 45 // New creates a new member API client. 46 func New(transport runtime.ClientTransport, formats strfmt.Registry, authInfo runtime.ClientAuthInfoWriter) *Client { 47 return &Client{ 48 transport: transport, 49 formats: formats, 50 authInfo: authInfo, 51 } 52 } 53 54 /* 55 Client for member API 56 */ 57 type Client struct { 58 transport runtime.ClientTransport 59 formats strfmt.Registry 60 authInfo runtime.ClientAuthInfoWriter 61 } 62 63 /* 64 CreateProjectMember creates project member 65 66 Create project member relationship, the member can be one of the user_member and group_member, The user_member need to specify user_id or username. If the user already exist in harbor DB, specify the user_id, If does not exist in harbor DB, it will SearchAndOnBoard the user. The group_member need to specify id or ldap_group_dn. If the group already exist in harbor DB. specify the user group's id, If does not exist, it will SearchAndOnBoard the group. 67 */ 68 func (a *Client) CreateProjectMember(ctx context.Context, params *CreateProjectMemberParams) (*CreateProjectMemberCreated, error) { 69 70 result, err := a.transport.Submit(&runtime.ClientOperation{ 71 ID: "createProjectMember", 72 Method: "POST", 73 PathPattern: "/projects/{project_name_or_id}/members", 74 ProducesMediaTypes: []string{"application/json"}, 75 ConsumesMediaTypes: []string{"application/json"}, 76 Schemes: []string{"http", "https"}, 77 Params: params, 78 Reader: &CreateProjectMemberReader{formats: a.formats}, 79 AuthInfo: a.authInfo, 80 Context: ctx, 81 Client: params.HTTPClient, 82 }) 83 if err != nil { 84 return nil, err 85 } 86 return result.(*CreateProjectMemberCreated), nil 87 88 } 89 90 /* 91 DeleteProjectMember deletes project member 92 */ 93 func (a *Client) DeleteProjectMember(ctx context.Context, params *DeleteProjectMemberParams) (*DeleteProjectMemberOK, error) { 94 95 result, err := a.transport.Submit(&runtime.ClientOperation{ 96 ID: "deleteProjectMember", 97 Method: "DELETE", 98 PathPattern: "/projects/{project_name_or_id}/members/{mid}", 99 ProducesMediaTypes: []string{"application/json"}, 100 ConsumesMediaTypes: []string{"application/json"}, 101 Schemes: []string{"http", "https"}, 102 Params: params, 103 Reader: &DeleteProjectMemberReader{formats: a.formats}, 104 AuthInfo: a.authInfo, 105 Context: ctx, 106 Client: params.HTTPClient, 107 }) 108 if err != nil { 109 return nil, err 110 } 111 return result.(*DeleteProjectMemberOK), nil 112 113 } 114 115 /* 116 GetProjectMember gets the project member information 117 118 Get the project member information 119 */ 120 func (a *Client) GetProjectMember(ctx context.Context, params *GetProjectMemberParams) (*GetProjectMemberOK, error) { 121 122 result, err := a.transport.Submit(&runtime.ClientOperation{ 123 ID: "getProjectMember", 124 Method: "GET", 125 PathPattern: "/projects/{project_name_or_id}/members/{mid}", 126 ProducesMediaTypes: []string{"application/json"}, 127 ConsumesMediaTypes: []string{"application/json"}, 128 Schemes: []string{"http", "https"}, 129 Params: params, 130 Reader: &GetProjectMemberReader{formats: a.formats}, 131 AuthInfo: a.authInfo, 132 Context: ctx, 133 Client: params.HTTPClient, 134 }) 135 if err != nil { 136 return nil, err 137 } 138 return result.(*GetProjectMemberOK), nil 139 140 } 141 142 /* 143 ListProjectMembers gets all project member information 144 145 Get all project member information 146 */ 147 func (a *Client) ListProjectMembers(ctx context.Context, params *ListProjectMembersParams) (*ListProjectMembersOK, error) { 148 149 result, err := a.transport.Submit(&runtime.ClientOperation{ 150 ID: "listProjectMembers", 151 Method: "GET", 152 PathPattern: "/projects/{project_name_or_id}/members", 153 ProducesMediaTypes: []string{"application/json"}, 154 ConsumesMediaTypes: []string{"application/json"}, 155 Schemes: []string{"http", "https"}, 156 Params: params, 157 Reader: &ListProjectMembersReader{formats: a.formats}, 158 AuthInfo: a.authInfo, 159 Context: ctx, 160 Client: params.HTTPClient, 161 }) 162 if err != nil { 163 return nil, err 164 } 165 return result.(*ListProjectMembersOK), nil 166 167 } 168 169 /* 170 UpdateProjectMember updates project member 171 172 Update project member relationship 173 */ 174 func (a *Client) UpdateProjectMember(ctx context.Context, params *UpdateProjectMemberParams) (*UpdateProjectMemberOK, error) { 175 176 result, err := a.transport.Submit(&runtime.ClientOperation{ 177 ID: "updateProjectMember", 178 Method: "PUT", 179 PathPattern: "/projects/{project_name_or_id}/members/{mid}", 180 ProducesMediaTypes: []string{"application/json"}, 181 ConsumesMediaTypes: []string{"application/json"}, 182 Schemes: []string{"http", "https"}, 183 Params: params, 184 Reader: &UpdateProjectMemberReader{formats: a.formats}, 185 AuthInfo: a.authInfo, 186 Context: ctx, 187 Client: params.HTTPClient, 188 }) 189 if err != nil { 190 return nil, err 191 } 192 return result.(*UpdateProjectMemberOK), nil 193 194 }