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  }