github.com/sacloud/iaas-api-go@v1.12.0/zz_apis.go (about)

     1  // Copyright 2022-2023 The sacloud/iaas-api-go Authors
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //      http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // generated by 'github.com/sacloud/iaas-api-go/internal/tools/gen-api-interfaces'; DO NOT EDIT
    16  
    17  package iaas
    18  
    19  import (
    20  	"context"
    21  
    22  	"github.com/sacloud/iaas-api-go/types"
    23  )
    24  
    25  /*************************************************
    26  * ArchiveAPI
    27  *************************************************/
    28  
    29  // ArchiveAPI is interface for operate Archive resource
    30  type ArchiveAPI interface {
    31  	Find(ctx context.Context, zone string, conditions *FindCondition) (*ArchiveFindResult, error)
    32  	Create(ctx context.Context, zone string, param *ArchiveCreateRequest) (*Archive, error)
    33  	CreateBlank(ctx context.Context, zone string, param *ArchiveCreateBlankRequest) (*Archive, *FTPServer, error)
    34  	Read(ctx context.Context, zone string, id types.ID) (*Archive, error)
    35  	Update(ctx context.Context, zone string, id types.ID, param *ArchiveUpdateRequest) (*Archive, error)
    36  	Delete(ctx context.Context, zone string, id types.ID) error
    37  	OpenFTP(ctx context.Context, zone string, id types.ID, openOption *OpenFTPRequest) (*FTPServer, error)
    38  	CloseFTP(ctx context.Context, zone string, id types.ID) error
    39  	Share(ctx context.Context, zone string, id types.ID) (*ArchiveShareInfo, error)
    40  	CreateFromShared(ctx context.Context, zone string, sourceArchiveID types.ID, destZoneID types.ID, param *ArchiveCreateRequestFromShared) (*Archive, error)
    41  	Transfer(ctx context.Context, zone string, sourceArchiveID types.ID, destZoneID types.ID, param *ArchiveTransferRequest) (*Archive, error)
    42  }
    43  
    44  /*************************************************
    45  * AuthStatusAPI
    46  *************************************************/
    47  
    48  // AuthStatusAPI is interface for operate AuthStatus resource
    49  type AuthStatusAPI interface {
    50  	Read(ctx context.Context) (*AuthStatus, error)
    51  }
    52  
    53  /*************************************************
    54  * AutoBackupAPI
    55  *************************************************/
    56  
    57  // AutoBackupAPI is interface for operate AutoBackup resource
    58  type AutoBackupAPI interface {
    59  	Find(ctx context.Context, zone string, conditions *FindCondition) (*AutoBackupFindResult, error)
    60  	Create(ctx context.Context, zone string, param *AutoBackupCreateRequest) (*AutoBackup, error)
    61  	Read(ctx context.Context, zone string, id types.ID) (*AutoBackup, error)
    62  	Update(ctx context.Context, zone string, id types.ID, param *AutoBackupUpdateRequest) (*AutoBackup, error)
    63  	UpdateSettings(ctx context.Context, zone string, id types.ID, param *AutoBackupUpdateSettingsRequest) (*AutoBackup, error)
    64  	Delete(ctx context.Context, zone string, id types.ID) error
    65  }
    66  
    67  /*************************************************
    68  * AutoScaleAPI
    69  *************************************************/
    70  
    71  // AutoScaleAPI is interface for operate AutoScale resource
    72  type AutoScaleAPI interface {
    73  	Find(ctx context.Context, conditions *FindCondition) (*AutoScaleFindResult, error)
    74  	Create(ctx context.Context, param *AutoScaleCreateRequest) (*AutoScale, error)
    75  	Read(ctx context.Context, id types.ID) (*AutoScale, error)
    76  	Update(ctx context.Context, id types.ID, param *AutoScaleUpdateRequest) (*AutoScale, error)
    77  	UpdateSettings(ctx context.Context, id types.ID, param *AutoScaleUpdateSettingsRequest) (*AutoScale, error)
    78  	Delete(ctx context.Context, id types.ID) error
    79  	Status(ctx context.Context, id types.ID) (*AutoScaleStatus, error)
    80  	ScaleUp(ctx context.Context, id types.ID) error
    81  	ScaleDown(ctx context.Context, id types.ID) error
    82  }
    83  
    84  /*************************************************
    85  * BillAPI
    86  *************************************************/
    87  
    88  // BillAPI is interface for operate Bill resource
    89  type BillAPI interface {
    90  	ByContract(ctx context.Context, accountID types.ID) (*BillByContractResult, error)
    91  	ByContractYear(ctx context.Context, accountID types.ID, year int) (*BillByContractYearResult, error)
    92  	ByContractYearMonth(ctx context.Context, accountID types.ID, year int, month int) (*BillByContractYearMonthResult, error)
    93  	Read(ctx context.Context, id types.ID) (*BillReadResult, error)
    94  	Details(ctx context.Context, MemberCode string, id types.ID) (*BillDetailsResult, error)
    95  	DetailsCSV(ctx context.Context, MemberCode string, id types.ID) (*BillDetailCSV, error)
    96  }
    97  
    98  /*************************************************
    99  * BridgeAPI
   100  *************************************************/
   101  
   102  // BridgeAPI is interface for operate Bridge resource
   103  type BridgeAPI interface {
   104  	Find(ctx context.Context, zone string, conditions *FindCondition) (*BridgeFindResult, error)
   105  	Create(ctx context.Context, zone string, param *BridgeCreateRequest) (*Bridge, error)
   106  	Read(ctx context.Context, zone string, id types.ID) (*Bridge, error)
   107  	Update(ctx context.Context, zone string, id types.ID, param *BridgeUpdateRequest) (*Bridge, error)
   108  	Delete(ctx context.Context, zone string, id types.ID) error
   109  }
   110  
   111  /*************************************************
   112  * CDROMAPI
   113  *************************************************/
   114  
   115  // CDROMAPI is interface for operate CDROM resource
   116  type CDROMAPI interface {
   117  	Find(ctx context.Context, zone string, conditions *FindCondition) (*CDROMFindResult, error)
   118  	Create(ctx context.Context, zone string, param *CDROMCreateRequest) (*CDROM, *FTPServer, error)
   119  	Read(ctx context.Context, zone string, id types.ID) (*CDROM, error)
   120  	Update(ctx context.Context, zone string, id types.ID, param *CDROMUpdateRequest) (*CDROM, error)
   121  	Delete(ctx context.Context, zone string, id types.ID) error
   122  	OpenFTP(ctx context.Context, zone string, id types.ID, openOption *OpenFTPRequest) (*FTPServer, error)
   123  	CloseFTP(ctx context.Context, zone string, id types.ID) error
   124  }
   125  
   126  /*************************************************
   127  * CertificateAuthorityAPI
   128  *************************************************/
   129  
   130  // CertificateAuthorityAPI is interface for operate CertificateAuthority resource
   131  type CertificateAuthorityAPI interface {
   132  	Find(ctx context.Context, conditions *FindCondition) (*CertificateAuthorityFindResult, error)
   133  	Create(ctx context.Context, param *CertificateAuthorityCreateRequest) (*CertificateAuthority, error)
   134  	Read(ctx context.Context, id types.ID) (*CertificateAuthority, error)
   135  	Update(ctx context.Context, id types.ID, param *CertificateAuthorityUpdateRequest) (*CertificateAuthority, error)
   136  	Delete(ctx context.Context, id types.ID) error
   137  	Detail(ctx context.Context, id types.ID) (*CertificateAuthorityDetail, error)
   138  	AddClient(ctx context.Context, id types.ID, param *CertificateAuthorityAddClientParam) (*CertificateAuthorityAddClientOrServerResult, error)
   139  	ListClients(ctx context.Context, id types.ID) (*CertificateAuthorityListClientsResult, error)
   140  	ReadClient(ctx context.Context, id types.ID, clientID string) (*CertificateAuthorityClient, error)
   141  	RevokeClient(ctx context.Context, id types.ID, clientID string) error
   142  	HoldClient(ctx context.Context, id types.ID, clientID string) error
   143  	ResumeClient(ctx context.Context, id types.ID, clientID string) error
   144  	DenyClient(ctx context.Context, id types.ID, clientID string) error
   145  	AddServer(ctx context.Context, id types.ID, param *CertificateAuthorityAddServerParam) (*CertificateAuthorityAddClientOrServerResult, error)
   146  	ListServers(ctx context.Context, id types.ID) (*CertificateAuthorityListServersResult, error)
   147  	ReadServer(ctx context.Context, id types.ID, serverID string) (*CertificateAuthorityServer, error)
   148  	RevokeServer(ctx context.Context, id types.ID, serverID string) error
   149  	HoldServer(ctx context.Context, id types.ID, serverID string) error
   150  	ResumeServer(ctx context.Context, id types.ID, serverID string) error
   151  }
   152  
   153  /*************************************************
   154  * ContainerRegistryAPI
   155  *************************************************/
   156  
   157  // ContainerRegistryAPI is interface for operate ContainerRegistry resource
   158  type ContainerRegistryAPI interface {
   159  	Find(ctx context.Context, conditions *FindCondition) (*ContainerRegistryFindResult, error)
   160  	Create(ctx context.Context, param *ContainerRegistryCreateRequest) (*ContainerRegistry, error)
   161  	Read(ctx context.Context, id types.ID) (*ContainerRegistry, error)
   162  	Update(ctx context.Context, id types.ID, param *ContainerRegistryUpdateRequest) (*ContainerRegistry, error)
   163  	UpdateSettings(ctx context.Context, id types.ID, param *ContainerRegistryUpdateSettingsRequest) (*ContainerRegistry, error)
   164  	Delete(ctx context.Context, id types.ID) error
   165  	ListUsers(ctx context.Context, id types.ID) (*ContainerRegistryUsers, error)
   166  	AddUser(ctx context.Context, id types.ID, param *ContainerRegistryUserCreateRequest) error
   167  	UpdateUser(ctx context.Context, id types.ID, username string, param *ContainerRegistryUserUpdateRequest) error
   168  	DeleteUser(ctx context.Context, id types.ID, username string) error
   169  }
   170  
   171  /*************************************************
   172  * CouponAPI
   173  *************************************************/
   174  
   175  // CouponAPI is interface for operate Coupon resource
   176  type CouponAPI interface {
   177  	Find(ctx context.Context, accountID types.ID) (*CouponFindResult, error)
   178  }
   179  
   180  /*************************************************
   181  * DatabaseAPI
   182  *************************************************/
   183  
   184  // DatabaseAPI is interface for operate Database resource
   185  type DatabaseAPI interface {
   186  	Find(ctx context.Context, zone string, conditions *FindCondition) (*DatabaseFindResult, error)
   187  	Create(ctx context.Context, zone string, param *DatabaseCreateRequest) (*Database, error)
   188  	Read(ctx context.Context, zone string, id types.ID) (*Database, error)
   189  	Update(ctx context.Context, zone string, id types.ID, param *DatabaseUpdateRequest) (*Database, error)
   190  	UpdateSettings(ctx context.Context, zone string, id types.ID, param *DatabaseUpdateSettingsRequest) (*Database, error)
   191  	Delete(ctx context.Context, zone string, id types.ID) error
   192  	Config(ctx context.Context, zone string, id types.ID) error
   193  	Boot(ctx context.Context, zone string, id types.ID) error
   194  	Shutdown(ctx context.Context, zone string, id types.ID, shutdownOption *ShutdownOption) error
   195  	Reset(ctx context.Context, zone string, id types.ID) error
   196  	MonitorCPU(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*CPUTimeActivity, error)
   197  	MonitorDisk(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*DiskActivity, error)
   198  	MonitorInterface(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*InterfaceActivity, error)
   199  	MonitorDatabase(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*DatabaseActivity, error)
   200  	Status(ctx context.Context, zone string, id types.ID) (*DatabaseStatus, error)
   201  	GetParameter(ctx context.Context, zone string, id types.ID) (*DatabaseParameter, error)
   202  	SetParameter(ctx context.Context, zone string, id types.ID, param map[string]interface{}) error
   203  }
   204  
   205  /*************************************************
   206  * DiskAPI
   207  *************************************************/
   208  
   209  // DiskAPI is interface for operate Disk resource
   210  type DiskAPI interface {
   211  	Find(ctx context.Context, zone string, conditions *FindCondition) (*DiskFindResult, error)
   212  	Create(ctx context.Context, zone string, createParam *DiskCreateRequest, distantFrom []types.ID) (*Disk, error)
   213  	Config(ctx context.Context, zone string, id types.ID, edit *DiskEditRequest) error
   214  	CreateWithConfig(ctx context.Context, zone string, createParam *DiskCreateRequest, editParam *DiskEditRequest, bootAtAvailable bool, distantFrom []types.ID) (*Disk, error)
   215  	ResizePartition(ctx context.Context, zone string, id types.ID, param *DiskResizePartitionRequest) error
   216  	ConnectToServer(ctx context.Context, zone string, id types.ID, serverID types.ID) error
   217  	DisconnectFromServer(ctx context.Context, zone string, id types.ID) error
   218  	Read(ctx context.Context, zone string, id types.ID) (*Disk, error)
   219  	Update(ctx context.Context, zone string, id types.ID, param *DiskUpdateRequest) (*Disk, error)
   220  	Delete(ctx context.Context, zone string, id types.ID) error
   221  	Monitor(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*DiskActivity, error)
   222  	MonitorDisk(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*DiskActivity, error)
   223  }
   224  
   225  /*************************************************
   226  * DiskPlanAPI
   227  *************************************************/
   228  
   229  // DiskPlanAPI is interface for operate DiskPlan resource
   230  type DiskPlanAPI interface {
   231  	Find(ctx context.Context, zone string, conditions *FindCondition) (*DiskPlanFindResult, error)
   232  	Read(ctx context.Context, zone string, id types.ID) (*DiskPlan, error)
   233  }
   234  
   235  /*************************************************
   236  * DNSAPI
   237  *************************************************/
   238  
   239  // DNSAPI is interface for operate DNS resource
   240  type DNSAPI interface {
   241  	Find(ctx context.Context, conditions *FindCondition) (*DNSFindResult, error)
   242  	Create(ctx context.Context, param *DNSCreateRequest) (*DNS, error)
   243  	Read(ctx context.Context, id types.ID) (*DNS, error)
   244  	Update(ctx context.Context, id types.ID, param *DNSUpdateRequest) (*DNS, error)
   245  	UpdateSettings(ctx context.Context, id types.ID, param *DNSUpdateSettingsRequest) (*DNS, error)
   246  	Delete(ctx context.Context, id types.ID) error
   247  }
   248  
   249  /*************************************************
   250  * EnhancedDBAPI
   251  *************************************************/
   252  
   253  // EnhancedDBAPI is interface for operate EnhancedDB resource
   254  type EnhancedDBAPI interface {
   255  	Find(ctx context.Context, conditions *FindCondition) (*EnhancedDBFindResult, error)
   256  	Create(ctx context.Context, param *EnhancedDBCreateRequest) (*EnhancedDB, error)
   257  	Read(ctx context.Context, id types.ID) (*EnhancedDB, error)
   258  	Update(ctx context.Context, id types.ID, param *EnhancedDBUpdateRequest) (*EnhancedDB, error)
   259  	Delete(ctx context.Context, id types.ID) error
   260  	SetPassword(ctx context.Context, id types.ID, param *EnhancedDBSetPasswordRequest) error
   261  	GetConfig(ctx context.Context, id types.ID) (*EnhancedDBConfig, error)
   262  	SetConfig(ctx context.Context, id types.ID, param *EnhancedDBSetConfigRequest) error
   263  }
   264  
   265  /*************************************************
   266  * ESMEAPI
   267  *************************************************/
   268  
   269  // ESMEAPI is interface for operate ESME resource
   270  type ESMEAPI interface {
   271  	Find(ctx context.Context, conditions *FindCondition) (*ESMEFindResult, error)
   272  	Create(ctx context.Context, param *ESMECreateRequest) (*ESME, error)
   273  	Read(ctx context.Context, id types.ID) (*ESME, error)
   274  	Update(ctx context.Context, id types.ID, param *ESMEUpdateRequest) (*ESME, error)
   275  	Delete(ctx context.Context, id types.ID) error
   276  	SendMessageWithGeneratedOTP(ctx context.Context, id types.ID, param *ESMESendMessageWithGeneratedOTPRequest) (*ESMESendMessageResult, error)
   277  	SendMessageWithInputtedOTP(ctx context.Context, id types.ID, param *ESMESendMessageWithInputtedOTPRequest) (*ESMESendMessageResult, error)
   278  	Logs(ctx context.Context, id types.ID) ([]*ESMELogs, error)
   279  }
   280  
   281  /*************************************************
   282  * GSLBAPI
   283  *************************************************/
   284  
   285  // GSLBAPI is interface for operate GSLB resource
   286  type GSLBAPI interface {
   287  	Find(ctx context.Context, conditions *FindCondition) (*GSLBFindResult, error)
   288  	Create(ctx context.Context, param *GSLBCreateRequest) (*GSLB, error)
   289  	Read(ctx context.Context, id types.ID) (*GSLB, error)
   290  	Update(ctx context.Context, id types.ID, param *GSLBUpdateRequest) (*GSLB, error)
   291  	UpdateSettings(ctx context.Context, id types.ID, param *GSLBUpdateSettingsRequest) (*GSLB, error)
   292  	Delete(ctx context.Context, id types.ID) error
   293  }
   294  
   295  /*************************************************
   296  * IconAPI
   297  *************************************************/
   298  
   299  // IconAPI is interface for operate Icon resource
   300  type IconAPI interface {
   301  	Find(ctx context.Context, conditions *FindCondition) (*IconFindResult, error)
   302  	Create(ctx context.Context, param *IconCreateRequest) (*Icon, error)
   303  	Read(ctx context.Context, id types.ID) (*Icon, error)
   304  	Update(ctx context.Context, id types.ID, param *IconUpdateRequest) (*Icon, error)
   305  	Delete(ctx context.Context, id types.ID) error
   306  }
   307  
   308  /*************************************************
   309  * InterfaceAPI
   310  *************************************************/
   311  
   312  // InterfaceAPI is interface for operate Interface resource
   313  type InterfaceAPI interface {
   314  	Find(ctx context.Context, zone string, conditions *FindCondition) (*InterfaceFindResult, error)
   315  	Create(ctx context.Context, zone string, param *InterfaceCreateRequest) (*Interface, error)
   316  	Read(ctx context.Context, zone string, id types.ID) (*Interface, error)
   317  	Update(ctx context.Context, zone string, id types.ID, param *InterfaceUpdateRequest) (*Interface, error)
   318  	Delete(ctx context.Context, zone string, id types.ID) error
   319  	Monitor(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*InterfaceActivity, error)
   320  	ConnectToSharedSegment(ctx context.Context, zone string, id types.ID) error
   321  	ConnectToSwitch(ctx context.Context, zone string, id types.ID, switchID types.ID) error
   322  	DisconnectFromSwitch(ctx context.Context, zone string, id types.ID) error
   323  	ConnectToPacketFilter(ctx context.Context, zone string, id types.ID, packetFilterID types.ID) error
   324  	DisconnectFromPacketFilter(ctx context.Context, zone string, id types.ID) error
   325  }
   326  
   327  /*************************************************
   328  * InternetAPI
   329  *************************************************/
   330  
   331  // InternetAPI is interface for operate Internet resource
   332  type InternetAPI interface {
   333  	Find(ctx context.Context, zone string, conditions *FindCondition) (*InternetFindResult, error)
   334  	Create(ctx context.Context, zone string, param *InternetCreateRequest) (*Internet, error)
   335  	Read(ctx context.Context, zone string, id types.ID) (*Internet, error)
   336  	Update(ctx context.Context, zone string, id types.ID, param *InternetUpdateRequest) (*Internet, error)
   337  	Delete(ctx context.Context, zone string, id types.ID) error
   338  	UpdateBandWidth(ctx context.Context, zone string, id types.ID, param *InternetUpdateBandWidthRequest) (*Internet, error)
   339  	AddSubnet(ctx context.Context, zone string, id types.ID, param *InternetAddSubnetRequest) (*InternetSubnetOperationResult, error)
   340  	UpdateSubnet(ctx context.Context, zone string, id types.ID, subnetID types.ID, param *InternetUpdateSubnetRequest) (*InternetSubnetOperationResult, error)
   341  	DeleteSubnet(ctx context.Context, zone string, id types.ID, subnetID types.ID) error
   342  	Monitor(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*RouterActivity, error)
   343  	MonitorRouter(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*RouterActivity, error)
   344  	EnableIPv6(ctx context.Context, zone string, id types.ID) (*IPv6NetInfo, error)
   345  	DisableIPv6(ctx context.Context, zone string, id types.ID, ipv6netID types.ID) error
   346  }
   347  
   348  /*************************************************
   349  * InternetPlanAPI
   350  *************************************************/
   351  
   352  // InternetPlanAPI is interface for operate InternetPlan resource
   353  type InternetPlanAPI interface {
   354  	Find(ctx context.Context, zone string, conditions *FindCondition) (*InternetPlanFindResult, error)
   355  	Read(ctx context.Context, zone string, id types.ID) (*InternetPlan, error)
   356  }
   357  
   358  /*************************************************
   359  * IPAddressAPI
   360  *************************************************/
   361  
   362  // IPAddressAPI is interface for operate IPAddress resource
   363  type IPAddressAPI interface {
   364  	List(ctx context.Context, zone string) (*IPAddressListResult, error)
   365  	Read(ctx context.Context, zone string, ipAddress string) (*IPAddress, error)
   366  	UpdateHostName(ctx context.Context, zone string, ipAddress string, hostName string) (*IPAddress, error)
   367  }
   368  
   369  /*************************************************
   370  * IPv6NetAPI
   371  *************************************************/
   372  
   373  // IPv6NetAPI is interface for operate IPv6Net resource
   374  type IPv6NetAPI interface {
   375  	List(ctx context.Context, zone string) (*IPv6NetListResult, error)
   376  	Find(ctx context.Context, zone string, conditions *FindCondition) (*IPv6NetFindResult, error)
   377  	Read(ctx context.Context, zone string, id types.ID) (*IPv6Net, error)
   378  }
   379  
   380  /*************************************************
   381  * IPv6AddrAPI
   382  *************************************************/
   383  
   384  // IPv6AddrAPI is interface for operate IPv6Addr resource
   385  type IPv6AddrAPI interface {
   386  	Find(ctx context.Context, zone string, conditions *FindCondition) (*IPv6AddrFindResult, error)
   387  	Create(ctx context.Context, zone string, param *IPv6AddrCreateRequest) (*IPv6Addr, error)
   388  	Read(ctx context.Context, zone string, ipv6addr string) (*IPv6Addr, error)
   389  	Update(ctx context.Context, zone string, ipv6addr string, param *IPv6AddrUpdateRequest) (*IPv6Addr, error)
   390  	Delete(ctx context.Context, zone string, ipv6addr string) error
   391  }
   392  
   393  /*************************************************
   394  * LicenseAPI
   395  *************************************************/
   396  
   397  // LicenseAPI is interface for operate License resource
   398  type LicenseAPI interface {
   399  	Find(ctx context.Context, conditions *FindCondition) (*LicenseFindResult, error)
   400  	Create(ctx context.Context, param *LicenseCreateRequest) (*License, error)
   401  	Read(ctx context.Context, id types.ID) (*License, error)
   402  	Update(ctx context.Context, id types.ID, param *LicenseUpdateRequest) (*License, error)
   403  	Delete(ctx context.Context, id types.ID) error
   404  }
   405  
   406  /*************************************************
   407  * LicenseInfoAPI
   408  *************************************************/
   409  
   410  // LicenseInfoAPI is interface for operate LicenseInfo resource
   411  type LicenseInfoAPI interface {
   412  	Find(ctx context.Context, conditions *FindCondition) (*LicenseInfoFindResult, error)
   413  	Read(ctx context.Context, id types.ID) (*LicenseInfo, error)
   414  }
   415  
   416  /*************************************************
   417  * LoadBalancerAPI
   418  *************************************************/
   419  
   420  // LoadBalancerAPI is interface for operate LoadBalancer resource
   421  type LoadBalancerAPI interface {
   422  	Find(ctx context.Context, zone string, conditions *FindCondition) (*LoadBalancerFindResult, error)
   423  	Create(ctx context.Context, zone string, param *LoadBalancerCreateRequest) (*LoadBalancer, error)
   424  	Read(ctx context.Context, zone string, id types.ID) (*LoadBalancer, error)
   425  	Update(ctx context.Context, zone string, id types.ID, param *LoadBalancerUpdateRequest) (*LoadBalancer, error)
   426  	UpdateSettings(ctx context.Context, zone string, id types.ID, param *LoadBalancerUpdateSettingsRequest) (*LoadBalancer, error)
   427  	Delete(ctx context.Context, zone string, id types.ID) error
   428  	Config(ctx context.Context, zone string, id types.ID) error
   429  	Boot(ctx context.Context, zone string, id types.ID) error
   430  	Shutdown(ctx context.Context, zone string, id types.ID, shutdownOption *ShutdownOption) error
   431  	Reset(ctx context.Context, zone string, id types.ID) error
   432  	MonitorCPU(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*CPUTimeActivity, error)
   433  	MonitorInterface(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*InterfaceActivity, error)
   434  	Status(ctx context.Context, zone string, id types.ID) (*LoadBalancerStatusResult, error)
   435  }
   436  
   437  /*************************************************
   438  * LocalRouterAPI
   439  *************************************************/
   440  
   441  // LocalRouterAPI is interface for operate LocalRouter resource
   442  type LocalRouterAPI interface {
   443  	Find(ctx context.Context, conditions *FindCondition) (*LocalRouterFindResult, error)
   444  	Create(ctx context.Context, param *LocalRouterCreateRequest) (*LocalRouter, error)
   445  	Read(ctx context.Context, id types.ID) (*LocalRouter, error)
   446  	Update(ctx context.Context, id types.ID, param *LocalRouterUpdateRequest) (*LocalRouter, error)
   447  	UpdateSettings(ctx context.Context, id types.ID, param *LocalRouterUpdateSettingsRequest) (*LocalRouter, error)
   448  	Delete(ctx context.Context, id types.ID) error
   449  	HealthStatus(ctx context.Context, id types.ID) (*LocalRouterHealth, error)
   450  	MonitorLocalRouter(ctx context.Context, id types.ID, condition *MonitorCondition) (*LocalRouterActivity, error)
   451  }
   452  
   453  /*************************************************
   454  * MobileGatewayAPI
   455  *************************************************/
   456  
   457  // MobileGatewayAPI is interface for operate MobileGateway resource
   458  type MobileGatewayAPI interface {
   459  	Find(ctx context.Context, zone string, conditions *FindCondition) (*MobileGatewayFindResult, error)
   460  	Create(ctx context.Context, zone string, param *MobileGatewayCreateRequest) (*MobileGateway, error)
   461  	Read(ctx context.Context, zone string, id types.ID) (*MobileGateway, error)
   462  	Update(ctx context.Context, zone string, id types.ID, param *MobileGatewayUpdateRequest) (*MobileGateway, error)
   463  	UpdateSettings(ctx context.Context, zone string, id types.ID, param *MobileGatewayUpdateSettingsRequest) (*MobileGateway, error)
   464  	Delete(ctx context.Context, zone string, id types.ID) error
   465  	Config(ctx context.Context, zone string, id types.ID) error
   466  	Boot(ctx context.Context, zone string, id types.ID) error
   467  	Shutdown(ctx context.Context, zone string, id types.ID, shutdownOption *ShutdownOption) error
   468  	Reset(ctx context.Context, zone string, id types.ID) error
   469  	ConnectToSwitch(ctx context.Context, zone string, id types.ID, switchID types.ID) error
   470  	DisconnectFromSwitch(ctx context.Context, zone string, id types.ID) error
   471  	GetDNS(ctx context.Context, zone string, id types.ID) (*MobileGatewayDNSSetting, error)
   472  	SetDNS(ctx context.Context, zone string, id types.ID, param *MobileGatewayDNSSetting) error
   473  	GetSIMRoutes(ctx context.Context, zone string, id types.ID) (MobileGatewaySIMRoutes, error)
   474  	SetSIMRoutes(ctx context.Context, zone string, id types.ID, param []*MobileGatewaySIMRouteParam) error
   475  	ListSIM(ctx context.Context, zone string, id types.ID) (MobileGatewaySIMs, error)
   476  	AddSIM(ctx context.Context, zone string, id types.ID, param *MobileGatewayAddSIMRequest) error
   477  	DeleteSIM(ctx context.Context, zone string, id types.ID, simID types.ID) error
   478  	Logs(ctx context.Context, zone string, id types.ID) ([]*MobileGatewaySIMLogs, error)
   479  	GetTrafficConfig(ctx context.Context, zone string, id types.ID) (*MobileGatewayTrafficControl, error)
   480  	SetTrafficConfig(ctx context.Context, zone string, id types.ID, param *MobileGatewayTrafficControl) error
   481  	DeleteTrafficConfig(ctx context.Context, zone string, id types.ID) error
   482  	TrafficStatus(ctx context.Context, zone string, id types.ID) (*MobileGatewayTrafficStatus, error)
   483  	MonitorInterface(ctx context.Context, zone string, id types.ID, index int, condition *MonitorCondition) (*InterfaceActivity, error)
   484  }
   485  
   486  /*************************************************
   487  * NFSAPI
   488  *************************************************/
   489  
   490  // NFSAPI is interface for operate NFS resource
   491  type NFSAPI interface {
   492  	Find(ctx context.Context, zone string, conditions *FindCondition) (*NFSFindResult, error)
   493  	Create(ctx context.Context, zone string, param *NFSCreateRequest) (*NFS, error)
   494  	Read(ctx context.Context, zone string, id types.ID) (*NFS, error)
   495  	Update(ctx context.Context, zone string, id types.ID, param *NFSUpdateRequest) (*NFS, error)
   496  	Delete(ctx context.Context, zone string, id types.ID) error
   497  	Boot(ctx context.Context, zone string, id types.ID) error
   498  	Shutdown(ctx context.Context, zone string, id types.ID, shutdownOption *ShutdownOption) error
   499  	Reset(ctx context.Context, zone string, id types.ID) error
   500  	MonitorCPU(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*CPUTimeActivity, error)
   501  	MonitorFreeDiskSize(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*FreeDiskSizeActivity, error)
   502  	MonitorInterface(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*InterfaceActivity, error)
   503  }
   504  
   505  /*************************************************
   506  * NoteAPI
   507  *************************************************/
   508  
   509  // NoteAPI is interface for operate Note resource
   510  type NoteAPI interface {
   511  	Find(ctx context.Context, conditions *FindCondition) (*NoteFindResult, error)
   512  	Create(ctx context.Context, param *NoteCreateRequest) (*Note, error)
   513  	Read(ctx context.Context, id types.ID) (*Note, error)
   514  	Update(ctx context.Context, id types.ID, param *NoteUpdateRequest) (*Note, error)
   515  	Delete(ctx context.Context, id types.ID) error
   516  }
   517  
   518  /*************************************************
   519  * PacketFilterAPI
   520  *************************************************/
   521  
   522  // PacketFilterAPI is interface for operate PacketFilter resource
   523  type PacketFilterAPI interface {
   524  	Find(ctx context.Context, zone string, conditions *FindCondition) (*PacketFilterFindResult, error)
   525  	Create(ctx context.Context, zone string, param *PacketFilterCreateRequest) (*PacketFilter, error)
   526  	Read(ctx context.Context, zone string, id types.ID) (*PacketFilter, error)
   527  	Update(ctx context.Context, zone string, id types.ID, updateParam *PacketFilterUpdateRequest, originalExpressionHash string) (*PacketFilter, error)
   528  	Delete(ctx context.Context, zone string, id types.ID) error
   529  }
   530  
   531  /*************************************************
   532  * PrivateHostAPI
   533  *************************************************/
   534  
   535  // PrivateHostAPI is interface for operate PrivateHost resource
   536  type PrivateHostAPI interface {
   537  	Find(ctx context.Context, zone string, conditions *FindCondition) (*PrivateHostFindResult, error)
   538  	Create(ctx context.Context, zone string, param *PrivateHostCreateRequest) (*PrivateHost, error)
   539  	Read(ctx context.Context, zone string, id types.ID) (*PrivateHost, error)
   540  	Update(ctx context.Context, zone string, id types.ID, param *PrivateHostUpdateRequest) (*PrivateHost, error)
   541  	Delete(ctx context.Context, zone string, id types.ID) error
   542  }
   543  
   544  /*************************************************
   545  * PrivateHostPlanAPI
   546  *************************************************/
   547  
   548  // PrivateHostPlanAPI is interface for operate PrivateHostPlan resource
   549  type PrivateHostPlanAPI interface {
   550  	Find(ctx context.Context, zone string, conditions *FindCondition) (*PrivateHostPlanFindResult, error)
   551  	Read(ctx context.Context, zone string, id types.ID) (*PrivateHostPlan, error)
   552  }
   553  
   554  /*************************************************
   555  * ProxyLBAPI
   556  *************************************************/
   557  
   558  // ProxyLBAPI is interface for operate ProxyLB resource
   559  type ProxyLBAPI interface {
   560  	Find(ctx context.Context, conditions *FindCondition) (*ProxyLBFindResult, error)
   561  	Create(ctx context.Context, param *ProxyLBCreateRequest) (*ProxyLB, error)
   562  	Read(ctx context.Context, id types.ID) (*ProxyLB, error)
   563  	Update(ctx context.Context, id types.ID, param *ProxyLBUpdateRequest) (*ProxyLB, error)
   564  	UpdateSettings(ctx context.Context, id types.ID, param *ProxyLBUpdateSettingsRequest) (*ProxyLB, error)
   565  	Delete(ctx context.Context, id types.ID) error
   566  	ChangePlan(ctx context.Context, id types.ID, param *ProxyLBChangePlanRequest) (*ProxyLB, error)
   567  	GetCertificates(ctx context.Context, id types.ID) (*ProxyLBCertificates, error)
   568  	SetCertificates(ctx context.Context, id types.ID, param *ProxyLBSetCertificatesRequest) (*ProxyLBCertificates, error)
   569  	DeleteCertificates(ctx context.Context, id types.ID) error
   570  	RenewLetsEncryptCert(ctx context.Context, id types.ID) error
   571  	HealthStatus(ctx context.Context, id types.ID) (*ProxyLBHealth, error)
   572  	MonitorConnection(ctx context.Context, id types.ID, condition *MonitorCondition) (*ConnectionActivity, error)
   573  }
   574  
   575  /*************************************************
   576  * RegionAPI
   577  *************************************************/
   578  
   579  // RegionAPI is interface for operate Region resource
   580  type RegionAPI interface {
   581  	Find(ctx context.Context, conditions *FindCondition) (*RegionFindResult, error)
   582  	Read(ctx context.Context, id types.ID) (*Region, error)
   583  }
   584  
   585  /*************************************************
   586  * ServerAPI
   587  *************************************************/
   588  
   589  // ServerAPI is interface for operate Server resource
   590  type ServerAPI interface {
   591  	Find(ctx context.Context, zone string, conditions *FindCondition) (*ServerFindResult, error)
   592  	Create(ctx context.Context, zone string, param *ServerCreateRequest) (*Server, error)
   593  	Read(ctx context.Context, zone string, id types.ID) (*Server, error)
   594  	Update(ctx context.Context, zone string, id types.ID, param *ServerUpdateRequest) (*Server, error)
   595  	Delete(ctx context.Context, zone string, id types.ID) error
   596  	DeleteWithDisks(ctx context.Context, zone string, id types.ID, disks *ServerDeleteWithDisksRequest) error
   597  	ChangePlan(ctx context.Context, zone string, id types.ID, plan *ServerChangePlanRequest) (*Server, error)
   598  	InsertCDROM(ctx context.Context, zone string, id types.ID, insertParam *InsertCDROMRequest) error
   599  	EjectCDROM(ctx context.Context, zone string, id types.ID, ejectParam *EjectCDROMRequest) error
   600  	Boot(ctx context.Context, zone string, id types.ID) error
   601  	Shutdown(ctx context.Context, zone string, id types.ID, shutdownOption *ShutdownOption) error
   602  	Reset(ctx context.Context, zone string, id types.ID) error
   603  	BootWithVariables(ctx context.Context, zone string, id types.ID, param *ServerBootVariables) error
   604  	SendKey(ctx context.Context, zone string, id types.ID, keyboardParam *SendKeyRequest) error
   605  	SendNMI(ctx context.Context, zone string, id types.ID) error
   606  	GetVNCProxy(ctx context.Context, zone string, id types.ID) (*VNCProxyInfo, error)
   607  	Monitor(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*CPUTimeActivity, error)
   608  	MonitorCPU(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*CPUTimeActivity, error)
   609  }
   610  
   611  /*************************************************
   612  * ServerPlanAPI
   613  *************************************************/
   614  
   615  // ServerPlanAPI is interface for operate ServerPlan resource
   616  type ServerPlanAPI interface {
   617  	Find(ctx context.Context, zone string, conditions *FindCondition) (*ServerPlanFindResult, error)
   618  	Read(ctx context.Context, zone string, id types.ID) (*ServerPlan, error)
   619  }
   620  
   621  /*************************************************
   622  * ServiceClassAPI
   623  *************************************************/
   624  
   625  // ServiceClassAPI is interface for operate ServiceClass resource
   626  type ServiceClassAPI interface {
   627  	Find(ctx context.Context, zone string, conditions *FindCondition) (*ServiceClassFindResult, error)
   628  }
   629  
   630  /*************************************************
   631  * SIMAPI
   632  *************************************************/
   633  
   634  // SIMAPI is interface for operate SIM resource
   635  type SIMAPI interface {
   636  	Find(ctx context.Context, conditions *FindCondition) (*SIMFindResult, error)
   637  	Create(ctx context.Context, param *SIMCreateRequest) (*SIM, error)
   638  	Read(ctx context.Context, id types.ID) (*SIM, error)
   639  	Update(ctx context.Context, id types.ID, param *SIMUpdateRequest) (*SIM, error)
   640  	Delete(ctx context.Context, id types.ID) error
   641  	Activate(ctx context.Context, id types.ID) error
   642  	Deactivate(ctx context.Context, id types.ID) error
   643  	AssignIP(ctx context.Context, id types.ID, param *SIMAssignIPRequest) error
   644  	ClearIP(ctx context.Context, id types.ID) error
   645  	IMEILock(ctx context.Context, id types.ID, param *SIMIMEILockRequest) error
   646  	IMEIUnlock(ctx context.Context, id types.ID) error
   647  	Logs(ctx context.Context, id types.ID) (*SIMLogsResult, error)
   648  	GetNetworkOperator(ctx context.Context, id types.ID) ([]*SIMNetworkOperatorConfig, error)
   649  	SetNetworkOperator(ctx context.Context, id types.ID, configs []*SIMNetworkOperatorConfig) error
   650  	MonitorSIM(ctx context.Context, id types.ID, condition *MonitorCondition) (*LinkActivity, error)
   651  	Status(ctx context.Context, id types.ID) (*SIMInfo, error)
   652  }
   653  
   654  /*************************************************
   655  * SimpleMonitorAPI
   656  *************************************************/
   657  
   658  // SimpleMonitorAPI is interface for operate SimpleMonitor resource
   659  type SimpleMonitorAPI interface {
   660  	Find(ctx context.Context, conditions *FindCondition) (*SimpleMonitorFindResult, error)
   661  	Create(ctx context.Context, param *SimpleMonitorCreateRequest) (*SimpleMonitor, error)
   662  	Read(ctx context.Context, id types.ID) (*SimpleMonitor, error)
   663  	Update(ctx context.Context, id types.ID, param *SimpleMonitorUpdateRequest) (*SimpleMonitor, error)
   664  	UpdateSettings(ctx context.Context, id types.ID, param *SimpleMonitorUpdateSettingsRequest) (*SimpleMonitor, error)
   665  	Delete(ctx context.Context, id types.ID) error
   666  	MonitorResponseTime(ctx context.Context, id types.ID, condition *MonitorCondition) (*ResponseTimeSecActivity, error)
   667  	HealthStatus(ctx context.Context, id types.ID) (*SimpleMonitorHealthStatus, error)
   668  }
   669  
   670  /*************************************************
   671  * SSHKeyAPI
   672  *************************************************/
   673  
   674  // SSHKeyAPI is interface for operate SSHKey resource
   675  type SSHKeyAPI interface {
   676  	Find(ctx context.Context, conditions *FindCondition) (*SSHKeyFindResult, error)
   677  	Create(ctx context.Context, param *SSHKeyCreateRequest) (*SSHKey, error)
   678  	Generate(ctx context.Context, param *SSHKeyGenerateRequest) (*SSHKeyGenerated, error)
   679  	Read(ctx context.Context, id types.ID) (*SSHKey, error)
   680  	Update(ctx context.Context, id types.ID, param *SSHKeyUpdateRequest) (*SSHKey, error)
   681  	Delete(ctx context.Context, id types.ID) error
   682  }
   683  
   684  /*************************************************
   685  * SubnetAPI
   686  *************************************************/
   687  
   688  // SubnetAPI is interface for operate Subnet resource
   689  type SubnetAPI interface {
   690  	Find(ctx context.Context, zone string, conditions *FindCondition) (*SubnetFindResult, error)
   691  	Read(ctx context.Context, zone string, id types.ID) (*Subnet, error)
   692  }
   693  
   694  /*************************************************
   695  * SwitchAPI
   696  *************************************************/
   697  
   698  // SwitchAPI is interface for operate Switch resource
   699  type SwitchAPI interface {
   700  	Find(ctx context.Context, zone string, conditions *FindCondition) (*SwitchFindResult, error)
   701  	Create(ctx context.Context, zone string, param *SwitchCreateRequest) (*Switch, error)
   702  	Read(ctx context.Context, zone string, id types.ID) (*Switch, error)
   703  	Update(ctx context.Context, zone string, id types.ID, param *SwitchUpdateRequest) (*Switch, error)
   704  	Delete(ctx context.Context, zone string, id types.ID) error
   705  	ConnectToBridge(ctx context.Context, zone string, id types.ID, bridgeID types.ID) error
   706  	DisconnectFromBridge(ctx context.Context, zone string, id types.ID) error
   707  	GetServers(ctx context.Context, zone string, id types.ID) (*SwitchGetServersResult, error)
   708  }
   709  
   710  /*************************************************
   711  * VPCRouterAPI
   712  *************************************************/
   713  
   714  // VPCRouterAPI is interface for operate VPCRouter resource
   715  type VPCRouterAPI interface {
   716  	Find(ctx context.Context, zone string, conditions *FindCondition) (*VPCRouterFindResult, error)
   717  	Create(ctx context.Context, zone string, param *VPCRouterCreateRequest) (*VPCRouter, error)
   718  	Read(ctx context.Context, zone string, id types.ID) (*VPCRouter, error)
   719  	Update(ctx context.Context, zone string, id types.ID, param *VPCRouterUpdateRequest) (*VPCRouter, error)
   720  	UpdateSettings(ctx context.Context, zone string, id types.ID, param *VPCRouterUpdateSettingsRequest) (*VPCRouter, error)
   721  	Delete(ctx context.Context, zone string, id types.ID) error
   722  	Config(ctx context.Context, zone string, id types.ID) error
   723  	Boot(ctx context.Context, zone string, id types.ID) error
   724  	Shutdown(ctx context.Context, zone string, id types.ID, shutdownOption *ShutdownOption) error
   725  	Reset(ctx context.Context, zone string, id types.ID) error
   726  	ConnectToSwitch(ctx context.Context, zone string, id types.ID, nicIndex int, switchID types.ID) error
   727  	DisconnectFromSwitch(ctx context.Context, zone string, id types.ID, nicIndex int) error
   728  	MonitorCPU(ctx context.Context, zone string, id types.ID, condition *MonitorCondition) (*CPUTimeActivity, error)
   729  	MonitorInterface(ctx context.Context, zone string, id types.ID, index int, condition *MonitorCondition) (*InterfaceActivity, error)
   730  	Status(ctx context.Context, zone string, id types.ID) (*VPCRouterStatus, error)
   731  	Logs(ctx context.Context, zone string, id types.ID) (*VPCRouterLog, error)
   732  	Ping(ctx context.Context, zone string, id types.ID, destination string) (*VPCRouterPingResults, error)
   733  }
   734  
   735  /*************************************************
   736  * ZoneAPI
   737  *************************************************/
   738  
   739  // ZoneAPI is interface for operate Zone resource
   740  type ZoneAPI interface {
   741  	Find(ctx context.Context, conditions *FindCondition) (*ZoneFindResult, error)
   742  	Read(ctx context.Context, id types.ID) (*Zone, error)
   743  }