github.com/goharbor/go-client@v0.210.0/pkg/sdk/v2.0/client/harbor_api_client.go (about)

     1  // Code generated by go-swagger; DO NOT EDIT.
     2  
     3  package client
     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  	"net/http"
    10  	"net/url"
    11  
    12  	"github.com/go-openapi/runtime"
    13  	rtclient "github.com/go-openapi/runtime/client"
    14  	"github.com/go-openapi/strfmt"
    15  
    16  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/artifact"
    17  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/auditlog"
    18  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/configure"
    19  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/gc"
    20  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/health"
    21  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/icon"
    22  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/immutable"
    23  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/jobservice"
    24  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/label"
    25  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/ldap"
    26  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/member"
    27  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/oidc"
    28  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/permissions"
    29  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/ping"
    30  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/preheat"
    31  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/project"
    32  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/project_metadata"
    33  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/purge"
    34  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/quota"
    35  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/registry"
    36  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/replication"
    37  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/repository"
    38  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/retention"
    39  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/robot"
    40  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/robotv1"
    41  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/scan"
    42  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/scan_all"
    43  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/scan_data_export"
    44  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/scanner"
    45  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/schedule"
    46  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/search"
    47  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/securityhub"
    48  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/statistic"
    49  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/system_cve_allowlist"
    50  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/systeminfo"
    51  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/user"
    52  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/usergroup"
    53  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/webhook"
    54  	"github.com/goharbor/go-client/pkg/sdk/v2.0/client/webhookjob"
    55  )
    56  
    57  const (
    58  	// DefaultHost is the default Host
    59  	// found in Meta (info) section of spec file
    60  	DefaultHost string = "localhost"
    61  	// DefaultBasePath is the default BasePath
    62  	// found in Meta (info) section of spec file
    63  	DefaultBasePath string = "/api/v2.0"
    64  )
    65  
    66  // DefaultSchemes are the default schemes found in Meta (info) section of spec file
    67  var DefaultSchemes = []string{"http", "https"}
    68  
    69  type Config struct {
    70  	// URL is the base URL of the upstream server
    71  	URL *url.URL
    72  	// Transport is an inner transport for the client
    73  	Transport http.RoundTripper
    74  	// AuthInfo is for authentication
    75  	AuthInfo runtime.ClientAuthInfoWriter
    76  }
    77  
    78  // New creates a new harbor API HTTP client.
    79  func New(c Config) *HarborAPI {
    80  	var (
    81  		host     = DefaultHost
    82  		basePath = DefaultBasePath
    83  		schemes  = DefaultSchemes
    84  	)
    85  
    86  	if c.URL != nil {
    87  		host = c.URL.Host
    88  		basePath = c.URL.Path
    89  		schemes = []string{c.URL.Scheme}
    90  	}
    91  
    92  	transport := rtclient.New(host, basePath, schemes)
    93  	if c.Transport != nil {
    94  		transport.Transport = c.Transport
    95  	}
    96  
    97  	cli := new(HarborAPI)
    98  	cli.Transport = transport
    99  	cli.Artifact = artifact.New(transport, strfmt.Default, c.AuthInfo)
   100  	cli.Auditlog = auditlog.New(transport, strfmt.Default, c.AuthInfo)
   101  	cli.Configure = configure.New(transport, strfmt.Default, c.AuthInfo)
   102  	cli.GC = gc.New(transport, strfmt.Default, c.AuthInfo)
   103  	cli.Health = health.New(transport, strfmt.Default, c.AuthInfo)
   104  	cli.Icon = icon.New(transport, strfmt.Default, c.AuthInfo)
   105  	cli.Immutable = immutable.New(transport, strfmt.Default, c.AuthInfo)
   106  	cli.Jobservice = jobservice.New(transport, strfmt.Default, c.AuthInfo)
   107  	cli.Label = label.New(transport, strfmt.Default, c.AuthInfo)
   108  	cli.Ldap = ldap.New(transport, strfmt.Default, c.AuthInfo)
   109  	cli.Member = member.New(transport, strfmt.Default, c.AuthInfo)
   110  	cli.OIDC = oidc.New(transport, strfmt.Default, c.AuthInfo)
   111  	cli.Permissions = permissions.New(transport, strfmt.Default, c.AuthInfo)
   112  	cli.Ping = ping.New(transport, strfmt.Default, c.AuthInfo)
   113  	cli.Preheat = preheat.New(transport, strfmt.Default, c.AuthInfo)
   114  	cli.Project = project.New(transport, strfmt.Default, c.AuthInfo)
   115  	cli.ProjectMetadata = project_metadata.New(transport, strfmt.Default, c.AuthInfo)
   116  	cli.Purge = purge.New(transport, strfmt.Default, c.AuthInfo)
   117  	cli.Quota = quota.New(transport, strfmt.Default, c.AuthInfo)
   118  	cli.Registry = registry.New(transport, strfmt.Default, c.AuthInfo)
   119  	cli.Replication = replication.New(transport, strfmt.Default, c.AuthInfo)
   120  	cli.Repository = repository.New(transport, strfmt.Default, c.AuthInfo)
   121  	cli.Retention = retention.New(transport, strfmt.Default, c.AuthInfo)
   122  	cli.Robot = robot.New(transport, strfmt.Default, c.AuthInfo)
   123  	cli.Robotv1 = robotv1.New(transport, strfmt.Default, c.AuthInfo)
   124  	cli.Scan = scan.New(transport, strfmt.Default, c.AuthInfo)
   125  	cli.ScanAll = scan_all.New(transport, strfmt.Default, c.AuthInfo)
   126  	cli.ScanDataExport = scan_data_export.New(transport, strfmt.Default, c.AuthInfo)
   127  	cli.Scanner = scanner.New(transport, strfmt.Default, c.AuthInfo)
   128  	cli.Schedule = schedule.New(transport, strfmt.Default, c.AuthInfo)
   129  	cli.Search = search.New(transport, strfmt.Default, c.AuthInfo)
   130  	cli.Securityhub = securityhub.New(transport, strfmt.Default, c.AuthInfo)
   131  	cli.Statistic = statistic.New(transport, strfmt.Default, c.AuthInfo)
   132  	cli.SystemCVEAllowlist = system_cve_allowlist.New(transport, strfmt.Default, c.AuthInfo)
   133  	cli.Systeminfo = systeminfo.New(transport, strfmt.Default, c.AuthInfo)
   134  	cli.User = user.New(transport, strfmt.Default, c.AuthInfo)
   135  	cli.Usergroup = usergroup.New(transport, strfmt.Default, c.AuthInfo)
   136  	cli.Webhook = webhook.New(transport, strfmt.Default, c.AuthInfo)
   137  	cli.Webhookjob = webhookjob.New(transport, strfmt.Default, c.AuthInfo)
   138  	return cli
   139  }
   140  
   141  // HarborAPI is a client for harbor API
   142  type HarborAPI struct {
   143  	Artifact           *artifact.Client
   144  	Auditlog           *auditlog.Client
   145  	Configure          *configure.Client
   146  	GC                 *gc.Client
   147  	Health             *health.Client
   148  	Icon               *icon.Client
   149  	Immutable          *immutable.Client
   150  	Jobservice         *jobservice.Client
   151  	Label              *label.Client
   152  	Ldap               *ldap.Client
   153  	Member             *member.Client
   154  	OIDC               *oidc.Client
   155  	Permissions        *permissions.Client
   156  	Ping               *ping.Client
   157  	Preheat            *preheat.Client
   158  	Project            *project.Client
   159  	ProjectMetadata    *project_metadata.Client
   160  	Purge              *purge.Client
   161  	Quota              *quota.Client
   162  	Registry           *registry.Client
   163  	Replication        *replication.Client
   164  	Repository         *repository.Client
   165  	Retention          *retention.Client
   166  	Robot              *robot.Client
   167  	Robotv1            *robotv1.Client
   168  	Scan               *scan.Client
   169  	ScanAll            *scan_all.Client
   170  	ScanDataExport     *scan_data_export.Client
   171  	Scanner            *scanner.Client
   172  	Schedule           *schedule.Client
   173  	Search             *search.Client
   174  	Securityhub        *securityhub.Client
   175  	Statistic          *statistic.Client
   176  	SystemCVEAllowlist *system_cve_allowlist.Client
   177  	Systeminfo         *systeminfo.Client
   178  	User               *user.Client
   179  	Usergroup          *usergroup.Client
   180  	Webhook            *webhook.Client
   181  	Webhookjob         *webhookjob.Client
   182  	Transport          runtime.ClientTransport
   183  }