Repository URL to install this package:
|
Version:
3.2.0 ▾
|
unit googlecontainer;
{$MODE objfpc}
{$H+}
interface
uses sysutils, classes, googleservice, restbase, googlebase;
type
//Top-level schema types
TListClustersResponse = Class;
TCluster = Class;
TNodeConfig = Class;
TMasterAuth = Class;
TAddonsConfig = Class;
THttpLoadBalancing = Class;
THorizontalPodAutoscaling = Class;
TNodePool = Class;
TCreateClusterRequest = Class;
TOperation = Class;
TUpdateClusterRequest = Class;
TClusterUpdate = Class;
TListOperationsResponse = Class;
TServerConfig = Class;
TListNodePoolsResponse = Class;
TCreateNodePoolRequest = Class;
TListClustersResponseArray = Array of TListClustersResponse;
TClusterArray = Array of TCluster;
TNodeConfigArray = Array of TNodeConfig;
TMasterAuthArray = Array of TMasterAuth;
TAddonsConfigArray = Array of TAddonsConfig;
THttpLoadBalancingArray = Array of THttpLoadBalancing;
THorizontalPodAutoscalingArray = Array of THorizontalPodAutoscaling;
TNodePoolArray = Array of TNodePool;
TCreateClusterRequestArray = Array of TCreateClusterRequest;
TOperationArray = Array of TOperation;
TUpdateClusterRequestArray = Array of TUpdateClusterRequest;
TClusterUpdateArray = Array of TClusterUpdate;
TListOperationsResponseArray = Array of TListOperationsResponse;
TServerConfigArray = Array of TServerConfig;
TListNodePoolsResponseArray = Array of TListNodePoolsResponse;
TCreateNodePoolRequestArray = Array of TCreateNodePoolRequest;
//Anonymous types, using auto-generated names
TNodeConfigTypemetadata = Class;
TListClustersResponseTypeclustersArray = Array of TCluster;
TClusterTypenodePoolsArray = Array of TNodePool;
TListOperationsResponseTypeoperationsArray = Array of TOperation;
TListNodePoolsResponseTypenodePoolsArray = Array of TNodePool;
{ --------------------------------------------------------------------
TListClustersResponse
--------------------------------------------------------------------}
TListClustersResponse = Class(TGoogleBaseObject)
Private
Fclusters : TListClustersResponseTypeclustersArray;
FmissingZones : TStringArray;
Protected
//Property setters
Procedure Setclusters(AIndex : Integer; const AValue : TListClustersResponseTypeclustersArray); virtual;
Procedure SetmissingZones(AIndex : Integer; const AValue : TStringArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property clusters : TListClustersResponseTypeclustersArray Index 0 Read Fclusters Write Setclusters;
Property missingZones : TStringArray Index 8 Read FmissingZones Write SetmissingZones;
end;
TListClustersResponseClass = Class of TListClustersResponse;
{ --------------------------------------------------------------------
TCluster
--------------------------------------------------------------------}
TCluster = Class(TGoogleBaseObject)
Private
Fname : String;
Fdescription : String;
FinitialNodeCount : integer;
FnodeConfig : TNodeConfig;
FmasterAuth : TMasterAuth;
FloggingService : String;
FmonitoringService : String;
Fnetwork : String;
FclusterIpv4Cidr : String;
FaddonsConfig : TAddonsConfig;
Fsubnetwork : String;
FnodePools : TClusterTypenodePoolsArray;
Flocations : TStringArray;
FselfLink : String;
Fzone : String;
Fendpoint : String;
FinitialClusterVersion : String;
FcurrentMasterVersion : String;
FcurrentNodeVersion : String;
FcreateTime : String;
Fstatus : String;
FstatusMessage : String;
FnodeIpv4CidrSize : integer;
FservicesIpv4Cidr : String;
FinstanceGroupUrls : TStringArray;
FcurrentNodeCount : integer;
Protected
//Property setters
Procedure Setname(AIndex : Integer; const AValue : String); virtual;
Procedure Setdescription(AIndex : Integer; const AValue : String); virtual;
Procedure SetinitialNodeCount(AIndex : Integer; const AValue : integer); virtual;
Procedure SetnodeConfig(AIndex : Integer; const AValue : TNodeConfig); virtual;
Procedure SetmasterAuth(AIndex : Integer; const AValue : TMasterAuth); virtual;
Procedure SetloggingService(AIndex : Integer; const AValue : String); virtual;
Procedure SetmonitoringService(AIndex : Integer; const AValue : String); virtual;
Procedure Setnetwork(AIndex : Integer; const AValue : String); virtual;
Procedure SetclusterIpv4Cidr(AIndex : Integer; const AValue : String); virtual;
Procedure SetaddonsConfig(AIndex : Integer; const AValue : TAddonsConfig); virtual;
Procedure Setsubnetwork(AIndex : Integer; const AValue : String); virtual;
Procedure SetnodePools(AIndex : Integer; const AValue : TClusterTypenodePoolsArray); virtual;
Procedure Setlocations(AIndex : Integer; const AValue : TStringArray); virtual;
Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
Procedure Setzone(AIndex : Integer; const AValue : String); virtual;
Procedure Setendpoint(AIndex : Integer; const AValue : String); virtual;
Procedure SetinitialClusterVersion(AIndex : Integer; const AValue : String); virtual;
Procedure SetcurrentMasterVersion(AIndex : Integer; const AValue : String); virtual;
Procedure SetcurrentNodeVersion(AIndex : Integer; const AValue : String); virtual;
Procedure SetcreateTime(AIndex : Integer; const AValue : String); virtual;
Procedure Setstatus(AIndex : Integer; const AValue : String); virtual;
Procedure SetstatusMessage(AIndex : Integer; const AValue : String); virtual;
Procedure SetnodeIpv4CidrSize(AIndex : Integer; const AValue : integer); virtual;
Procedure SetservicesIpv4Cidr(AIndex : Integer; const AValue : String); virtual;
Procedure SetinstanceGroupUrls(AIndex : Integer; const AValue : TStringArray); virtual;
Procedure SetcurrentNodeCount(AIndex : Integer; const AValue : integer); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property name : String Index 0 Read Fname Write Setname;
Property description : String Index 8 Read Fdescription Write Setdescription;
Property initialNodeCount : integer Index 16 Read FinitialNodeCount Write SetinitialNodeCount;
Property nodeConfig : TNodeConfig Index 24 Read FnodeConfig Write SetnodeConfig;
Property masterAuth : TMasterAuth Index 32 Read FmasterAuth Write SetmasterAuth;
Property loggingService : String Index 40 Read FloggingService Write SetloggingService;
Property monitoringService : String Index 48 Read FmonitoringService Write SetmonitoringService;
Property network : String Index 56 Read Fnetwork Write Setnetwork;
Property clusterIpv4Cidr : String Index 64 Read FclusterIpv4Cidr Write SetclusterIpv4Cidr;
Property addonsConfig : TAddonsConfig Index 72 Read FaddonsConfig Write SetaddonsConfig;
Property subnetwork : String Index 80 Read Fsubnetwork Write Setsubnetwork;
Property nodePools : TClusterTypenodePoolsArray Index 88 Read FnodePools Write SetnodePools;
Property locations : TStringArray Index 96 Read Flocations Write Setlocations;
Property selfLink : String Index 104 Read FselfLink Write SetselfLink;
Property zone : String Index 112 Read Fzone Write Setzone;
Property endpoint : String Index 120 Read Fendpoint Write Setendpoint;
Property initialClusterVersion : String Index 128 Read FinitialClusterVersion Write SetinitialClusterVersion;
Property currentMasterVersion : String Index 136 Read FcurrentMasterVersion Write SetcurrentMasterVersion;
Property currentNodeVersion : String Index 144 Read FcurrentNodeVersion Write SetcurrentNodeVersion;
Property createTime : String Index 152 Read FcreateTime Write SetcreateTime;
Property status : String Index 160 Read Fstatus Write Setstatus;
Property statusMessage : String Index 168 Read FstatusMessage Write SetstatusMessage;
Property nodeIpv4CidrSize : integer Index 176 Read FnodeIpv4CidrSize Write SetnodeIpv4CidrSize;
Property servicesIpv4Cidr : String Index 184 Read FservicesIpv4Cidr Write SetservicesIpv4Cidr;
Property instanceGroupUrls : TStringArray Index 192 Read FinstanceGroupUrls Write SetinstanceGroupUrls;
Property currentNodeCount : integer Index 200 Read FcurrentNodeCount Write SetcurrentNodeCount;
end;
TClusterClass = Class of TCluster;
{ --------------------------------------------------------------------
TNodeConfigTypemetadata
--------------------------------------------------------------------}
TNodeConfigTypemetadata = Class(TGoogleBaseObject)
Private
Protected
//Property setters
Public
Class Function AllowAdditionalProperties : Boolean; override;
Published
end;
TNodeConfigTypemetadataClass = Class of TNodeConfigTypemetadata;
{ --------------------------------------------------------------------
TNodeConfig
--------------------------------------------------------------------}
TNodeConfig = Class(TGoogleBaseObject)
Private
FmachineType : String;
FdiskSizeGb : integer;
FoauthScopes : TStringArray;
Fmetadata : TNodeConfigTypemetadata;
Protected
//Property setters
Procedure SetmachineType(AIndex : Integer; const AValue : String); virtual;
Procedure SetdiskSizeGb(AIndex : Integer; const AValue : integer); virtual;
Procedure SetoauthScopes(AIndex : Integer; const AValue : TStringArray); virtual;
Procedure Setmetadata(AIndex : Integer; const AValue : TNodeConfigTypemetadata); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property machineType : String Index 0 Read FmachineType Write SetmachineType;
Property diskSizeGb : integer Index 8 Read FdiskSizeGb Write SetdiskSizeGb;
Property oauthScopes : TStringArray Index 16 Read FoauthScopes Write SetoauthScopes;
Property metadata : TNodeConfigTypemetadata Index 24 Read Fmetadata Write Setmetadata;
end;
TNodeConfigClass = Class of TNodeConfig;
{ --------------------------------------------------------------------
TMasterAuth
--------------------------------------------------------------------}
TMasterAuth = Class(TGoogleBaseObject)
Private
Fusername : String;
Fpassword : String;
FclusterCaCertificate : String;
FclientCertificate : String;
FclientKey : String;
Protected
//Property setters
Procedure Setusername(AIndex : Integer; const AValue : String); virtual;
Procedure Setpassword(AIndex : Integer; const AValue : String); virtual;
Procedure SetclusterCaCertificate(AIndex : Integer; const AValue : String); virtual;
Procedure SetclientCertificate(AIndex : Integer; const AValue : String); virtual;
Procedure SetclientKey(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property username : String Index 0 Read Fusername Write Setusername;
Property password : String Index 8 Read Fpassword Write Setpassword;
Property clusterCaCertificate : String Index 16 Read FclusterCaCertificate Write SetclusterCaCertificate;
Property clientCertificate : String Index 24 Read FclientCertificate Write SetclientCertificate;
Property clientKey : String Index 32 Read FclientKey Write SetclientKey;
end;
TMasterAuthClass = Class of TMasterAuth;
{ --------------------------------------------------------------------
TAddonsConfig
--------------------------------------------------------------------}
TAddonsConfig = Class(TGoogleBaseObject)
Private
FhttpLoadBalancing : THttpLoadBalancing;
FhorizontalPodAutoscaling : THorizontalPodAutoscaling;
Protected
//Property setters
Procedure SethttpLoadBalancing(AIndex : Integer; const AValue : THttpLoadBalancing); virtual;
Procedure SethorizontalPodAutoscaling(AIndex : Integer; const AValue : THorizontalPodAutoscaling); virtual;
Public
Published
Property httpLoadBalancing : THttpLoadBalancing Index 0 Read FhttpLoadBalancing Write SethttpLoadBalancing;
Property horizontalPodAutoscaling : THorizontalPodAutoscaling Index 8 Read FhorizontalPodAutoscaling Write SethorizontalPodAutoscaling;
end;
TAddonsConfigClass = Class of TAddonsConfig;
{ --------------------------------------------------------------------
THttpLoadBalancing
--------------------------------------------------------------------}
THttpLoadBalancing = Class(TGoogleBaseObject)
Private
Fdisabled : boolean;
Protected
//Property setters
Procedure Setdisabled(AIndex : Integer; const AValue : boolean); virtual;
Public
Published
Property disabled : boolean Index 0 Read Fdisabled Write Setdisabled;
end;
THttpLoadBalancingClass = Class of THttpLoadBalancing;
{ --------------------------------------------------------------------
THorizontalPodAutoscaling
--------------------------------------------------------------------}
THorizontalPodAutoscaling = Class(TGoogleBaseObject)
Private
Fdisabled : boolean;
Protected
//Property setters
Procedure Setdisabled(AIndex : Integer; const AValue : boolean); virtual;
Public
Published
Property disabled : boolean Index 0 Read Fdisabled Write Setdisabled;
end;
THorizontalPodAutoscalingClass = Class of THorizontalPodAutoscaling;
{ --------------------------------------------------------------------
TNodePool
--------------------------------------------------------------------}
TNodePool = Class(TGoogleBaseObject)
Private
Fname : String;
Fconfig : TNodeConfig;
FinitialNodeCount : integer;
FselfLink : String;
Fversion : String;
FinstanceGroupUrls : TStringArray;
Fstatus : String;
FstatusMessage : String;
Protected
//Property setters
Procedure Setname(AIndex : Integer; const AValue : String); virtual;
Procedure Setconfig(AIndex : Integer; const AValue : TNodeConfig); virtual;
Procedure SetinitialNodeCount(AIndex : Integer; const AValue : integer); virtual;
Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
Procedure Setversion(AIndex : Integer; const AValue : String); virtual;
Procedure SetinstanceGroupUrls(AIndex : Integer; const AValue : TStringArray); virtual;
Procedure Setstatus(AIndex : Integer; const AValue : String); virtual;
Procedure SetstatusMessage(AIndex : Integer; const AValue : String); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property name : String Index 0 Read Fname Write Setname;
Property config : TNodeConfig Index 8 Read Fconfig Write Setconfig;
Property initialNodeCount : integer Index 16 Read FinitialNodeCount Write SetinitialNodeCount;
Property selfLink : String Index 24 Read FselfLink Write SetselfLink;
Property version : String Index 32 Read Fversion Write Setversion;
Property instanceGroupUrls : TStringArray Index 40 Read FinstanceGroupUrls Write SetinstanceGroupUrls;
Property status : String Index 48 Read Fstatus Write Setstatus;
Property statusMessage : String Index 56 Read FstatusMessage Write SetstatusMessage;
end;
TNodePoolClass = Class of TNodePool;
{ --------------------------------------------------------------------
TCreateClusterRequest
--------------------------------------------------------------------}
TCreateClusterRequest = Class(TGoogleBaseObject)
Private
Fcluster : TCluster;
Protected
//Property setters
Procedure Setcluster(AIndex : Integer; const AValue : TCluster); virtual;
Public
Published
Property cluster : TCluster Index 0 Read Fcluster Write Setcluster;
end;
TCreateClusterRequestClass = Class of TCreateClusterRequest;
{ --------------------------------------------------------------------
TOperation
--------------------------------------------------------------------}
TOperation = Class(TGoogleBaseObject)
Private
Fname : String;
Fzone : String;
FoperationType : String;
Fstatus : String;
Fdetail : String;
FstatusMessage : String;
FselfLink : String;
FtargetLink : String;
Protected
//Property setters
Procedure Setname(AIndex : Integer; const AValue : String); virtual;
Procedure Setzone(AIndex : Integer; const AValue : String); virtual;
Procedure SetoperationType(AIndex : Integer; const AValue : String); virtual;
Procedure Setstatus(AIndex : Integer; const AValue : String); virtual;
Procedure Setdetail(AIndex : Integer; const AValue : String); virtual;
Procedure SetstatusMessage(AIndex : Integer; const AValue : String); virtual;
Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
Procedure SettargetLink(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property name : String Index 0 Read Fname Write Setname;
Property zone : String Index 8 Read Fzone Write Setzone;
Property operationType : String Index 16 Read FoperationType Write SetoperationType;
Property status : String Index 24 Read Fstatus Write Setstatus;
Property detail : String Index 32 Read Fdetail Write Setdetail;
Property statusMessage : String Index 40 Read FstatusMessage Write SetstatusMessage;
Property selfLink : String Index 48 Read FselfLink Write SetselfLink;
Property targetLink : String Index 56 Read FtargetLink Write SettargetLink;
end;
TOperationClass = Class of TOperation;
{ --------------------------------------------------------------------
TUpdateClusterRequest
--------------------------------------------------------------------}
TUpdateClusterRequest = Class(TGoogleBaseObject)
Private
Fupdate : TClusterUpdate;
Protected
//Property setters
Procedure Setupdate(AIndex : Integer; const AValue : TClusterUpdate); virtual;
Public
Published
Property update : TClusterUpdate Index 0 Read Fupdate Write Setupdate;
end;
TUpdateClusterRequestClass = Class of TUpdateClusterRequest;
{ --------------------------------------------------------------------
TClusterUpdate
--------------------------------------------------------------------}
TClusterUpdate = Class(TGoogleBaseObject)
Private
FdesiredNodeVersion : String;
FdesiredMonitoringService : String;
FdesiredAddonsConfig : TAddonsConfig;
FdesiredNodePoolId : String;
FdesiredMasterVersion : String;
Protected
//Property setters
Procedure SetdesiredNodeVersion(AIndex : Integer; const AValue : String); virtual;
Procedure SetdesiredMonitoringService(AIndex : Integer; const AValue : String); virtual;
Procedure SetdesiredAddonsConfig(AIndex : Integer; const AValue : TAddonsConfig); virtual;
Procedure SetdesiredNodePoolId(AIndex : Integer; const AValue : String); virtual;
Procedure SetdesiredMasterVersion(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property desiredNodeVersion : String Index 0 Read FdesiredNodeVersion Write SetdesiredNodeVersion;
Property desiredMonitoringService : String Index 8 Read FdesiredMonitoringService Write SetdesiredMonitoringService;
Property desiredAddonsConfig : TAddonsConfig Index 16 Read FdesiredAddonsConfig Write SetdesiredAddonsConfig;
Property desiredNodePoolId : String Index 24 Read FdesiredNodePoolId Write SetdesiredNodePoolId;
Property desiredMasterVersion : String Index 32 Read FdesiredMasterVersion Write SetdesiredMasterVersion;
end;
TClusterUpdateClass = Class of TClusterUpdate;
{ --------------------------------------------------------------------
TListOperationsResponse
--------------------------------------------------------------------}
TListOperationsResponse = Class(TGoogleBaseObject)
Private
Foperations : TListOperationsResponseTypeoperationsArray;
FmissingZones : TStringArray;
Protected
//Property setters
Procedure Setoperations(AIndex : Integer; const AValue : TListOperationsResponseTypeoperationsArray); virtual;
Procedure SetmissingZones(AIndex : Integer; const AValue : TStringArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property operations : TListOperationsResponseTypeoperationsArray Index 0 Read Foperations Write Setoperations;
Property missingZones : TStringArray Index 8 Read FmissingZones Write SetmissingZones;
end;
TListOperationsResponseClass = Class of TListOperationsResponse;
{ --------------------------------------------------------------------
TServerConfig
--------------------------------------------------------------------}
TServerConfig = Class(TGoogleBaseObject)
Private
FdefaultClusterVersion : String;
FvalidNodeVersions : TStringArray;
FdefaultImageFamily : String;
FvalidImageFamilies : TStringArray;
Protected
//Property setters
Procedure SetdefaultClusterVersion(AIndex : Integer; const AValue : String); virtual;
Procedure SetvalidNodeVersions(AIndex : Integer; const AValue : TStringArray); virtual;
Procedure SetdefaultImageFamily(AIndex : Integer; const AValue : String); virtual;
Procedure SetvalidImageFamilies(AIndex : Integer; const AValue : TStringArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property defaultClusterVersion : String Index 0 Read FdefaultClusterVersion Write SetdefaultClusterVersion;
Property validNodeVersions : TStringArray Index 8 Read FvalidNodeVersions Write SetvalidNodeVersions;
Property defaultImageFamily : String Index 16 Read FdefaultImageFamily Write SetdefaultImageFamily;
Property validImageFamilies : TStringArray Index 24 Read FvalidImageFamilies Write SetvalidImageFamilies;
end;
TServerConfigClass = Class of TServerConfig;
{ --------------------------------------------------------------------
TListNodePoolsResponse
--------------------------------------------------------------------}
TListNodePoolsResponse = Class(TGoogleBaseObject)
Private
FnodePools : TListNodePoolsResponseTypenodePoolsArray;
Protected
//Property setters
Procedure SetnodePools(AIndex : Integer; const AValue : TListNodePoolsResponseTypenodePoolsArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property nodePools : TListNodePoolsResponseTypenodePoolsArray Index 0 Read FnodePools Write SetnodePools;
end;
TListNodePoolsResponseClass = Class of TListNodePoolsResponse;
{ --------------------------------------------------------------------
TCreateNodePoolRequest
--------------------------------------------------------------------}
TCreateNodePoolRequest = Class(TGoogleBaseObject)
Private
FnodePool : TNodePool;
Protected
//Property setters
Procedure SetnodePool(AIndex : Integer; const AValue : TNodePool); virtual;
Public
Published
Property nodePool : TNodePool Index 0 Read FnodePool Write SetnodePool;
end;
TCreateNodePoolRequestClass = Class of TCreateNodePoolRequest;
{ --------------------------------------------------------------------
TProjectsZonesClustersNodePoolsResource
--------------------------------------------------------------------}
TProjectsZonesClustersNodePoolsResource = Class(TGoogleResource)
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function List(projectId: string; zone: string; clusterId: string) : TListNodePoolsResponse;
Function Get(projectId: string; zone: string; clusterId: string; nodePoolId: string) : TNodePool;
Function Create(projectId: string; zone: string; clusterId: string; aCreateNodePoolRequest : TCreateNodePoolRequest) : TOperation;overload;
Function Delete(projectId: string; zone: string; clusterId: string; nodePoolId: string) : TOperation;
end;
{ --------------------------------------------------------------------
TProjectsZonesClustersResource
--------------------------------------------------------------------}
TProjectsZonesClustersResource = Class(TGoogleResource)
Private
FNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;
Function GetNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;virtual;
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function List(projectId: string; zone: string) : TListClustersResponse;
Function Get(projectId: string; zone: string; clusterId: string) : TCluster;
Function Create(projectId: string; zone: string; aCreateClusterRequest : TCreateClusterRequest) : TOperation;overload;
Function Update(projectId: string; zone: string; clusterId: string; aUpdateClusterRequest : TUpdateClusterRequest) : TOperation;
Function Delete(projectId: string; zone: string; clusterId: string) : TOperation;
Function CreateNodePoolsResource(AOwner : TComponent) : TProjectsZonesClustersNodePoolsResource;virtual;overload;
Function CreateNodePoolsResource : TProjectsZonesClustersNodePoolsResource;virtual;overload;
Property NodePoolsResource : TProjectsZonesClustersNodePoolsResource Read GetNodePoolsInstance;
end;
{ --------------------------------------------------------------------
TProjectsZonesOperationsResource
--------------------------------------------------------------------}
TProjectsZonesOperationsResource = Class(TGoogleResource)
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function List(projectId: string; zone: string) : TListOperationsResponse;
Function Get(projectId: string; zone: string; operationId: string) : TOperation;
end;
{ --------------------------------------------------------------------
TProjectsZonesResource
--------------------------------------------------------------------}
TProjectsZonesResource = Class(TGoogleResource)
Private
FClustersNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;
FClustersInstance : TProjectsZonesClustersResource;
FOperationsInstance : TProjectsZonesOperationsResource;
Function GetClustersNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;virtual;
Function GetClustersInstance : TProjectsZonesClustersResource;virtual;
Function GetOperationsInstance : TProjectsZonesOperationsResource;virtual;
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function GetServerconfig(projectId: string; zone: string) : TServerConfig;
Function CreateClustersNodePoolsResource(AOwner : TComponent) : TProjectsZonesClustersNodePoolsResource;virtual;overload;
Function CreateClustersNodePoolsResource : TProjectsZonesClustersNodePoolsResource;virtual;overload;
Function CreateClustersResource(AOwner : TComponent) : TProjectsZonesClustersResource;virtual;overload;
Function CreateClustersResource : TProjectsZonesClustersResource;virtual;overload;
Function CreateOperationsResource(AOwner : TComponent) : TProjectsZonesOperationsResource;virtual;overload;
Function CreateOperationsResource : TProjectsZonesOperationsResource;virtual;overload;
Property ClustersNodePoolsResource : TProjectsZonesClustersNodePoolsResource Read GetClustersNodePoolsInstance;
Property ClustersResource : TProjectsZonesClustersResource Read GetClustersInstance;
Property OperationsResource : TProjectsZonesOperationsResource Read GetOperationsInstance;
end;
{ --------------------------------------------------------------------
TProjectsResource
--------------------------------------------------------------------}
TProjectsResource = Class(TGoogleResource)
Private
FZonesClustersNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;
FZonesClustersInstance : TProjectsZonesClustersResource;
FZonesOperationsInstance : TProjectsZonesOperationsResource;
FZonesInstance : TProjectsZonesResource;
Function GetZonesClustersNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;virtual;
Function GetZonesClustersInstance : TProjectsZonesClustersResource;virtual;
Function GetZonesOperationsInstance : TProjectsZonesOperationsResource;virtual;
Function GetZonesInstance : TProjectsZonesResource;virtual;
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function CreateZonesClustersNodePoolsResource(AOwner : TComponent) : TProjectsZonesClustersNodePoolsResource;virtual;overload;
Function CreateZonesClustersNodePoolsResource : TProjectsZonesClustersNodePoolsResource;virtual;overload;
Function CreateZonesClustersResource(AOwner : TComponent) : TProjectsZonesClustersResource;virtual;overload;
Function CreateZonesClustersResource : TProjectsZonesClustersResource;virtual;overload;
Function CreateZonesOperationsResource(AOwner : TComponent) : TProjectsZonesOperationsResource;virtual;overload;
Function CreateZonesOperationsResource : TProjectsZonesOperationsResource;virtual;overload;
Function CreateZonesResource(AOwner : TComponent) : TProjectsZonesResource;virtual;overload;
Function CreateZonesResource : TProjectsZonesResource;virtual;overload;
Property ZonesClustersNodePoolsResource : TProjectsZonesClustersNodePoolsResource Read GetZonesClustersNodePoolsInstance;
Property ZonesClustersResource : TProjectsZonesClustersResource Read GetZonesClustersInstance;
Property ZonesOperationsResource : TProjectsZonesOperationsResource Read GetZonesOperationsInstance;
Property ZonesResource : TProjectsZonesResource Read GetZonesInstance;
end;
{ --------------------------------------------------------------------
TContainerAPI
--------------------------------------------------------------------}
TContainerAPI = Class(TGoogleAPI)
Private
FProjectsZonesClustersNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;
FProjectsZonesClustersInstance : TProjectsZonesClustersResource;
FProjectsZonesOperationsInstance : TProjectsZonesOperationsResource;
FProjectsZonesInstance : TProjectsZonesResource;
FProjectsInstance : TProjectsResource;
Function GetProjectsZonesClustersNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;virtual;
Function GetProjectsZonesClustersInstance : TProjectsZonesClustersResource;virtual;
Function GetProjectsZonesOperationsInstance : TProjectsZonesOperationsResource;virtual;
Function GetProjectsZonesInstance : TProjectsZonesResource;virtual;
Function GetProjectsInstance : TProjectsResource;virtual;
Public
//Override class functions with API info
Class Function APIName : String; override;
Class Function APIVersion : String; override;
Class Function APIRevision : String; override;
Class Function APIID : String; override;
Class Function APITitle : String; override;
Class Function APIDescription : String; override;
Class Function APIOwnerDomain : String; override;
Class Function APIOwnerName : String; override;
Class Function APIIcon16 : String; override;
Class Function APIIcon32 : String; override;
Class Function APIdocumentationLink : String; override;
Class Function APIrootUrl : string; override;
Class Function APIbasePath : string;override;
Class Function APIbaseURL : String;override;
Class Function APIProtocol : string;override;
Class Function APIservicePath : string;override;
Class Function APIbatchPath : String;override;
Class Function APIAuthScopes : TScopeInfoArray;override;
Class Function APINeedsAuth : Boolean;override;
Class Procedure RegisterAPIResources; override;
//Add create function for resources
Function CreateProjectsZonesClustersNodePoolsResource(AOwner : TComponent) : TProjectsZonesClustersNodePoolsResource;virtual;overload;
Function CreateProjectsZonesClustersNodePoolsResource : TProjectsZonesClustersNodePoolsResource;virtual;overload;
Function CreateProjectsZonesClustersResource(AOwner : TComponent) : TProjectsZonesClustersResource;virtual;overload;
Function CreateProjectsZonesClustersResource : TProjectsZonesClustersResource;virtual;overload;
Function CreateProjectsZonesOperationsResource(AOwner : TComponent) : TProjectsZonesOperationsResource;virtual;overload;
Function CreateProjectsZonesOperationsResource : TProjectsZonesOperationsResource;virtual;overload;
Function CreateProjectsZonesResource(AOwner : TComponent) : TProjectsZonesResource;virtual;overload;
Function CreateProjectsZonesResource : TProjectsZonesResource;virtual;overload;
Function CreateProjectsResource(AOwner : TComponent) : TProjectsResource;virtual;overload;
Function CreateProjectsResource : TProjectsResource;virtual;overload;
//Add default on-demand instances for resources
Property ProjectsZonesClustersNodePoolsResource : TProjectsZonesClustersNodePoolsResource Read GetProjectsZonesClustersNodePoolsInstance;
Property ProjectsZonesClustersResource : TProjectsZonesClustersResource Read GetProjectsZonesClustersInstance;
Property ProjectsZonesOperationsResource : TProjectsZonesOperationsResource Read GetProjectsZonesOperationsInstance;
Property ProjectsZonesResource : TProjectsZonesResource Read GetProjectsZonesInstance;
Property ProjectsResource : TProjectsResource Read GetProjectsInstance;
end;
implementation
{ --------------------------------------------------------------------
TListClustersResponse
--------------------------------------------------------------------}
Procedure TListClustersResponse.Setclusters(AIndex : Integer; const AValue : TListClustersResponseTypeclustersArray);
begin
If (Fclusters=AValue) then exit;
Fclusters:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TListClustersResponse.SetmissingZones(AIndex : Integer; const AValue : TStringArray);
begin
If (FmissingZones=AValue) then exit;
FmissingZones:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TListClustersResponse.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'clusters' : SetLength(Fclusters,ALength);
'missingzones' : SetLength(FmissingZones,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TCluster
--------------------------------------------------------------------}
Procedure TCluster.Setname(AIndex : Integer; const AValue : String);
begin
If (Fname=AValue) then exit;
Fname:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.Setdescription(AIndex : Integer; const AValue : String);
begin
If (Fdescription=AValue) then exit;
Fdescription:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetinitialNodeCount(AIndex : Integer; const AValue : integer);
begin
If (FinitialNodeCount=AValue) then exit;
FinitialNodeCount:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetnodeConfig(AIndex : Integer; const AValue : TNodeConfig);
begin
If (FnodeConfig=AValue) then exit;
FnodeConfig:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetmasterAuth(AIndex : Integer; const AValue : TMasterAuth);
begin
If (FmasterAuth=AValue) then exit;
FmasterAuth:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetloggingService(AIndex : Integer; const AValue : String);
begin
If (FloggingService=AValue) then exit;
FloggingService:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetmonitoringService(AIndex : Integer; const AValue : String);
begin
If (FmonitoringService=AValue) then exit;
FmonitoringService:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.Setnetwork(AIndex : Integer; const AValue : String);
begin
If (Fnetwork=AValue) then exit;
Fnetwork:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetclusterIpv4Cidr(AIndex : Integer; const AValue : String);
begin
If (FclusterIpv4Cidr=AValue) then exit;
FclusterIpv4Cidr:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetaddonsConfig(AIndex : Integer; const AValue : TAddonsConfig);
begin
If (FaddonsConfig=AValue) then exit;
FaddonsConfig:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.Setsubnetwork(AIndex : Integer; const AValue : String);
begin
If (Fsubnetwork=AValue) then exit;
Fsubnetwork:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetnodePools(AIndex : Integer; const AValue : TClusterTypenodePoolsArray);
begin
If (FnodePools=AValue) then exit;
FnodePools:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.Setlocations(AIndex : Integer; const AValue : TStringArray);
begin
If (Flocations=AValue) then exit;
Flocations:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetselfLink(AIndex : Integer; const AValue : String);
begin
If (FselfLink=AValue) then exit;
FselfLink:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.Setzone(AIndex : Integer; const AValue : String);
begin
If (Fzone=AValue) then exit;
Fzone:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.Setendpoint(AIndex : Integer; const AValue : String);
begin
If (Fendpoint=AValue) then exit;
Fendpoint:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetinitialClusterVersion(AIndex : Integer; const AValue : String);
begin
If (FinitialClusterVersion=AValue) then exit;
FinitialClusterVersion:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetcurrentMasterVersion(AIndex : Integer; const AValue : String);
begin
If (FcurrentMasterVersion=AValue) then exit;
FcurrentMasterVersion:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetcurrentNodeVersion(AIndex : Integer; const AValue : String);
begin
If (FcurrentNodeVersion=AValue) then exit;
FcurrentNodeVersion:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetcreateTime(AIndex : Integer; const AValue : String);
begin
If (FcreateTime=AValue) then exit;
FcreateTime:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.Setstatus(AIndex : Integer; const AValue : String);
begin
If (Fstatus=AValue) then exit;
Fstatus:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetstatusMessage(AIndex : Integer; const AValue : String);
begin
If (FstatusMessage=AValue) then exit;
FstatusMessage:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetnodeIpv4CidrSize(AIndex : Integer; const AValue : integer);
begin
If (FnodeIpv4CidrSize=AValue) then exit;
FnodeIpv4CidrSize:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetservicesIpv4Cidr(AIndex : Integer; const AValue : String);
begin
If (FservicesIpv4Cidr=AValue) then exit;
FservicesIpv4Cidr:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetinstanceGroupUrls(AIndex : Integer; const AValue : TStringArray);
begin
If (FinstanceGroupUrls=AValue) then exit;
FinstanceGroupUrls:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCluster.SetcurrentNodeCount(AIndex : Integer; const AValue : integer);
begin
If (FcurrentNodeCount=AValue) then exit;
FcurrentNodeCount:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TCluster.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'nodepools' : SetLength(FnodePools,ALength);
'locations' : SetLength(Flocations,ALength);
'instancegroupurls' : SetLength(FinstanceGroupUrls,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TNodeConfigTypemetadata
--------------------------------------------------------------------}
Class Function TNodeConfigTypemetadata.AllowAdditionalProperties : Boolean;
begin
Result:=True;
end;
{ --------------------------------------------------------------------
TNodeConfig
--------------------------------------------------------------------}
Procedure TNodeConfig.SetmachineType(AIndex : Integer; const AValue : String);
begin
If (FmachineType=AValue) then exit;
FmachineType:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodeConfig.SetdiskSizeGb(AIndex : Integer; const AValue : integer);
begin
If (FdiskSizeGb=AValue) then exit;
FdiskSizeGb:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodeConfig.SetoauthScopes(AIndex : Integer; const AValue : TStringArray);
begin
If (FoauthScopes=AValue) then exit;
FoauthScopes:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodeConfig.Setmetadata(AIndex : Integer; const AValue : TNodeConfigTypemetadata);
begin
If (Fmetadata=AValue) then exit;
Fmetadata:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TNodeConfig.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'oauthscopes' : SetLength(FoauthScopes,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TMasterAuth
--------------------------------------------------------------------}
Procedure TMasterAuth.Setusername(AIndex : Integer; const AValue : String);
begin
If (Fusername=AValue) then exit;
Fusername:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TMasterAuth.Setpassword(AIndex : Integer; const AValue : String);
begin
If (Fpassword=AValue) then exit;
Fpassword:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TMasterAuth.SetclusterCaCertificate(AIndex : Integer; const AValue : String);
begin
If (FclusterCaCertificate=AValue) then exit;
FclusterCaCertificate:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TMasterAuth.SetclientCertificate(AIndex : Integer; const AValue : String);
begin
If (FclientCertificate=AValue) then exit;
FclientCertificate:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TMasterAuth.SetclientKey(AIndex : Integer; const AValue : String);
begin
If (FclientKey=AValue) then exit;
FclientKey:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TAddonsConfig
--------------------------------------------------------------------}
Procedure TAddonsConfig.SethttpLoadBalancing(AIndex : Integer; const AValue : THttpLoadBalancing);
begin
If (FhttpLoadBalancing=AValue) then exit;
FhttpLoadBalancing:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TAddonsConfig.SethorizontalPodAutoscaling(AIndex : Integer; const AValue : THorizontalPodAutoscaling);
begin
If (FhorizontalPodAutoscaling=AValue) then exit;
FhorizontalPodAutoscaling:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
THttpLoadBalancing
--------------------------------------------------------------------}
Procedure THttpLoadBalancing.Setdisabled(AIndex : Integer; const AValue : boolean);
begin
If (Fdisabled=AValue) then exit;
Fdisabled:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
THorizontalPodAutoscaling
--------------------------------------------------------------------}
Procedure THorizontalPodAutoscaling.Setdisabled(AIndex : Integer; const AValue : boolean);
begin
If (Fdisabled=AValue) then exit;
Fdisabled:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TNodePool
--------------------------------------------------------------------}
Procedure TNodePool.Setname(AIndex : Integer; const AValue : String);
begin
If (Fname=AValue) then exit;
Fname:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodePool.Setconfig(AIndex : Integer; const AValue : TNodeConfig);
begin
If (Fconfig=AValue) then exit;
Fconfig:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodePool.SetinitialNodeCount(AIndex : Integer; const AValue : integer);
begin
If (FinitialNodeCount=AValue) then exit;
FinitialNodeCount:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodePool.SetselfLink(AIndex : Integer; const AValue : String);
begin
If (FselfLink=AValue) then exit;
FselfLink:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodePool.Setversion(AIndex : Integer; const AValue : String);
begin
If (Fversion=AValue) then exit;
Fversion:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodePool.SetinstanceGroupUrls(AIndex : Integer; const AValue : TStringArray);
begin
If (FinstanceGroupUrls=AValue) then exit;
FinstanceGroupUrls:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodePool.Setstatus(AIndex : Integer; const AValue : String);
begin
If (Fstatus=AValue) then exit;
Fstatus:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TNodePool.SetstatusMessage(AIndex : Integer; const AValue : String);
begin
If (FstatusMessage=AValue) then exit;
FstatusMessage:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TNodePool.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'instancegroupurls' : SetLength(FinstanceGroupUrls,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TCreateClusterRequest
--------------------------------------------------------------------}
Procedure TCreateClusterRequest.Setcluster(AIndex : Integer; const AValue : TCluster);
begin
If (Fcluster=AValue) then exit;
Fcluster:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TOperation
--------------------------------------------------------------------}
Procedure TOperation.Setname(AIndex : Integer; const AValue : String);
begin
If (Fname=AValue) then exit;
Fname:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TOperation.Setzone(AIndex : Integer; const AValue : String);
begin
If (Fzone=AValue) then exit;
Fzone:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TOperation.SetoperationType(AIndex : Integer; const AValue : String);
begin
If (FoperationType=AValue) then exit;
FoperationType:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TOperation.Setstatus(AIndex : Integer; const AValue : String);
begin
If (Fstatus=AValue) then exit;
Fstatus:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TOperation.Setdetail(AIndex : Integer; const AValue : String);
begin
If (Fdetail=AValue) then exit;
Fdetail:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TOperation.SetstatusMessage(AIndex : Integer; const AValue : String);
begin
If (FstatusMessage=AValue) then exit;
FstatusMessage:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TOperation.SetselfLink(AIndex : Integer; const AValue : String);
begin
If (FselfLink=AValue) then exit;
FselfLink:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TOperation.SettargetLink(AIndex : Integer; const AValue : String);
begin
If (FtargetLink=AValue) then exit;
FtargetLink:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TUpdateClusterRequest
--------------------------------------------------------------------}
Procedure TUpdateClusterRequest.Setupdate(AIndex : Integer; const AValue : TClusterUpdate);
begin
If (Fupdate=AValue) then exit;
Fupdate:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TClusterUpdate
--------------------------------------------------------------------}
Procedure TClusterUpdate.SetdesiredNodeVersion(AIndex : Integer; const AValue : String);
begin
If (FdesiredNodeVersion=AValue) then exit;
FdesiredNodeVersion:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TClusterUpdate.SetdesiredMonitoringService(AIndex : Integer; const AValue : String);
begin
If (FdesiredMonitoringService=AValue) then exit;
FdesiredMonitoringService:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TClusterUpdate.SetdesiredAddonsConfig(AIndex : Integer; const AValue : TAddonsConfig);
begin
If (FdesiredAddonsConfig=AValue) then exit;
FdesiredAddonsConfig:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TClusterUpdate.SetdesiredNodePoolId(AIndex : Integer; const AValue : String);
begin
If (FdesiredNodePoolId=AValue) then exit;
FdesiredNodePoolId:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TClusterUpdate.SetdesiredMasterVersion(AIndex : Integer; const AValue : String);
begin
If (FdesiredMasterVersion=AValue) then exit;
FdesiredMasterVersion:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TListOperationsResponse
--------------------------------------------------------------------}
Procedure TListOperationsResponse.Setoperations(AIndex : Integer; const AValue : TListOperationsResponseTypeoperationsArray);
begin
If (Foperations=AValue) then exit;
Foperations:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TListOperationsResponse.SetmissingZones(AIndex : Integer; const AValue : TStringArray);
begin
If (FmissingZones=AValue) then exit;
FmissingZones:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TListOperationsResponse.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'operations' : SetLength(Foperations,ALength);
'missingzones' : SetLength(FmissingZones,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TServerConfig
--------------------------------------------------------------------}
Procedure TServerConfig.SetdefaultClusterVersion(AIndex : Integer; const AValue : String);
begin
If (FdefaultClusterVersion=AValue) then exit;
FdefaultClusterVersion:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServerConfig.SetvalidNodeVersions(AIndex : Integer; const AValue : TStringArray);
begin
If (FvalidNodeVersions=AValue) then exit;
FvalidNodeVersions:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServerConfig.SetdefaultImageFamily(AIndex : Integer; const AValue : String);
begin
If (FdefaultImageFamily=AValue) then exit;
FdefaultImageFamily:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServerConfig.SetvalidImageFamilies(AIndex : Integer; const AValue : TStringArray);
begin
If (FvalidImageFamilies=AValue) then exit;
FvalidImageFamilies:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TServerConfig.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'validnodeversions' : SetLength(FvalidNodeVersions,ALength);
'validimagefamilies' : SetLength(FvalidImageFamilies,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TListNodePoolsResponse
--------------------------------------------------------------------}
Procedure TListNodePoolsResponse.SetnodePools(AIndex : Integer; const AValue : TListNodePoolsResponseTypenodePoolsArray);
begin
If (FnodePools=AValue) then exit;
FnodePools:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TListNodePoolsResponse.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'nodepools' : SetLength(FnodePools,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TCreateNodePoolRequest
--------------------------------------------------------------------}
Procedure TCreateNodePoolRequest.SetnodePool(AIndex : Integer; const AValue : TNodePool);
begin
If (FnodePool=AValue) then exit;
FnodePool:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TProjectsZonesClustersNodePoolsResource
--------------------------------------------------------------------}
Class Function TProjectsZonesClustersNodePoolsResource.ResourceName : String;
begin
Result:='nodePools';
end;
Class Function TProjectsZonesClustersNodePoolsResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TcontainerAPI;
end;
Function TProjectsZonesClustersNodePoolsResource.List(projectId: string; zone: string; clusterId: string) : TListNodePoolsResponse;
Const
_HTTPMethod = 'GET';
_Path = 'v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools';
_Methodid = 'container.projects.zones.clusters.nodePools.list';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone,'clusterId',clusterId]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TListNodePoolsResponse) as TListNodePoolsResponse;
end;
Function TProjectsZonesClustersNodePoolsResource.Get(projectId: string; zone: string; clusterId: string; nodePoolId: string) : TNodePool;
Const
_HTTPMethod = 'GET';
_Path = 'v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}';
_Methodid = 'container.projects.zones.clusters.nodePools.get';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone,'clusterId',clusterId,'nodePoolId',nodePoolId]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TNodePool) as TNodePool;
end;
Function TProjectsZonesClustersNodePoolsResource.Create(projectId: string; zone: string; clusterId: string; aCreateNodePoolRequest : TCreateNodePoolRequest) : TOperation;
Const
_HTTPMethod = 'POST';
_Path = 'v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools';
_Methodid = 'container.projects.zones.clusters.nodePools.create';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone,'clusterId',clusterId]);
Result:=ServiceCall(_HTTPMethod,_P,'',aCreateNodePoolRequest,TOperation) as TOperation;
end;
Function TProjectsZonesClustersNodePoolsResource.Delete(projectId: string; zone: string; clusterId: string; nodePoolId: string) : TOperation;
Const
_HTTPMethod = 'DELETE';
_Path = 'v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}';
_Methodid = 'container.projects.zones.clusters.nodePools.delete';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone,'clusterId',clusterId,'nodePoolId',nodePoolId]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TOperation) as TOperation;
end;
{ --------------------------------------------------------------------
TProjectsZonesClustersResource
--------------------------------------------------------------------}
Class Function TProjectsZonesClustersResource.ResourceName : String;
begin
Result:='clusters';
end;
Class Function TProjectsZonesClustersResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TcontainerAPI;
end;
Function TProjectsZonesClustersResource.List(projectId: string; zone: string) : TListClustersResponse;
Const
_HTTPMethod = 'GET';
_Path = 'v1/projects/{projectId}/zones/{zone}/clusters';
_Methodid = 'container.projects.zones.clusters.list';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TListClustersResponse) as TListClustersResponse;
end;
Function TProjectsZonesClustersResource.Get(projectId: string; zone: string; clusterId: string) : TCluster;
Const
_HTTPMethod = 'GET';
_Path = 'v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}';
_Methodid = 'container.projects.zones.clusters.get';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone,'clusterId',clusterId]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TCluster) as TCluster;
end;
Function TProjectsZonesClustersResource.Create(projectId: string; zone: string; aCreateClusterRequest : TCreateClusterRequest) : TOperation;
Const
_HTTPMethod = 'POST';
_Path = 'v1/projects/{projectId}/zones/{zone}/clusters';
_Methodid = 'container.projects.zones.clusters.create';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone]);
Result:=ServiceCall(_HTTPMethod,_P,'',aCreateClusterRequest,TOperation) as TOperation;
end;
Function TProjectsZonesClustersResource.Update(projectId: string; zone: string; clusterId: string; aUpdateClusterRequest : TUpdateClusterRequest) : TOperation;
Const
_HTTPMethod = 'PUT';
_Path = 'v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}';
_Methodid = 'container.projects.zones.clusters.update';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone,'clusterId',clusterId]);
Result:=ServiceCall(_HTTPMethod,_P,'',aUpdateClusterRequest,TOperation) as TOperation;
end;
Function TProjectsZonesClustersResource.Delete(projectId: string; zone: string; clusterId: string) : TOperation;
Const
_HTTPMethod = 'DELETE';
_Path = 'v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}';
_Methodid = 'container.projects.zones.clusters.delete';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone,'clusterId',clusterId]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TOperation) as TOperation;
end;
Function TProjectsZonesClustersResource.GetNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;
begin
if (FNodePoolsInstance=Nil) then
FNodePoolsInstance:=CreateNodePoolsResource;
Result:=FNodePoolsInstance;
end;
Function TProjectsZonesClustersResource.CreateNodePoolsResource : TProjectsZonesClustersNodePoolsResource;
begin
Result:=CreateNodePoolsResource(Self);
end;
Function TProjectsZonesClustersResource.CreateNodePoolsResource(AOwner : TComponent) : TProjectsZonesClustersNodePoolsResource;
begin
Result:=TProjectsZonesClustersNodePoolsResource.Create(AOwner);
Result.API:=Self.API;
end;
{ --------------------------------------------------------------------
TProjectsZonesOperationsResource
--------------------------------------------------------------------}
Class Function TProjectsZonesOperationsResource.ResourceName : String;
begin
Result:='operations';
end;
Class Function TProjectsZonesOperationsResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TcontainerAPI;
end;
Function TProjectsZonesOperationsResource.List(projectId: string; zone: string) : TListOperationsResponse;
Const
_HTTPMethod = 'GET';
_Path = 'v1/projects/{projectId}/zones/{zone}/operations';
_Methodid = 'container.projects.zones.operations.list';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TListOperationsResponse) as TListOperationsResponse;
end;
Function TProjectsZonesOperationsResource.Get(projectId: string; zone: string; operationId: string) : TOperation;
Const
_HTTPMethod = 'GET';
_Path = 'v1/projects/{projectId}/zones/{zone}/operations/{operationId}';
_Methodid = 'container.projects.zones.operations.get';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone,'operationId',operationId]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TOperation) as TOperation;
end;
{ --------------------------------------------------------------------
TProjectsZonesResource
--------------------------------------------------------------------}
Class Function TProjectsZonesResource.ResourceName : String;
begin
Result:='zones';
end;
Class Function TProjectsZonesResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TcontainerAPI;
end;
Function TProjectsZonesResource.GetServerconfig(projectId: string; zone: string) : TServerConfig;
Const
_HTTPMethod = 'GET';
_Path = 'v1/projects/{projectId}/zones/{zone}/serverconfig';
_Methodid = 'container.projects.zones.getServerconfig';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectId',projectId,'zone',zone]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TServerConfig) as TServerConfig;
end;
Function TProjectsZonesResource.GetClustersNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;
begin
if (FClustersNodePoolsInstance=Nil) then
FClustersNodePoolsInstance:=CreateClustersNodePoolsResource;
Result:=FClustersNodePoolsInstance;
end;
Function TProjectsZonesResource.CreateClustersNodePoolsResource : TProjectsZonesClustersNodePoolsResource;
begin
Result:=CreateClustersNodePoolsResource(Self);
end;
Function TProjectsZonesResource.CreateClustersNodePoolsResource(AOwner : TComponent) : TProjectsZonesClustersNodePoolsResource;
begin
Result:=TProjectsZonesClustersNodePoolsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TProjectsZonesResource.GetClustersInstance : TProjectsZonesClustersResource;
begin
if (FClustersInstance=Nil) then
FClustersInstance:=CreateClustersResource;
Result:=FClustersInstance;
end;
Function TProjectsZonesResource.CreateClustersResource : TProjectsZonesClustersResource;
begin
Result:=CreateClustersResource(Self);
end;
Function TProjectsZonesResource.CreateClustersResource(AOwner : TComponent) : TProjectsZonesClustersResource;
begin
Result:=TProjectsZonesClustersResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TProjectsZonesResource.GetOperationsInstance : TProjectsZonesOperationsResource;
begin
if (FOperationsInstance=Nil) then
FOperationsInstance:=CreateOperationsResource;
Result:=FOperationsInstance;
end;
Function TProjectsZonesResource.CreateOperationsResource : TProjectsZonesOperationsResource;
begin
Result:=CreateOperationsResource(Self);
end;
Function TProjectsZonesResource.CreateOperationsResource(AOwner : TComponent) : TProjectsZonesOperationsResource;
begin
Result:=TProjectsZonesOperationsResource.Create(AOwner);
Result.API:=Self.API;
end;
{ --------------------------------------------------------------------
TProjectsResource
--------------------------------------------------------------------}
Class Function TProjectsResource.ResourceName : String;
begin
Result:='projects';
end;
Class Function TProjectsResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TcontainerAPI;
end;
Function TProjectsResource.GetZonesClustersNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;
begin
if (FZonesClustersNodePoolsInstance=Nil) then
FZonesClustersNodePoolsInstance:=CreateZonesClustersNodePoolsResource;
Result:=FZonesClustersNodePoolsInstance;
end;
Function TProjectsResource.CreateZonesClustersNodePoolsResource : TProjectsZonesClustersNodePoolsResource;
begin
Result:=CreateZonesClustersNodePoolsResource(Self);
end;
Function TProjectsResource.CreateZonesClustersNodePoolsResource(AOwner : TComponent) : TProjectsZonesClustersNodePoolsResource;
begin
Result:=TProjectsZonesClustersNodePoolsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TProjectsResource.GetZonesClustersInstance : TProjectsZonesClustersResource;
begin
if (FZonesClustersInstance=Nil) then
FZonesClustersInstance:=CreateZonesClustersResource;
Result:=FZonesClustersInstance;
end;
Function TProjectsResource.CreateZonesClustersResource : TProjectsZonesClustersResource;
begin
Result:=CreateZonesClustersResource(Self);
end;
Function TProjectsResource.CreateZonesClustersResource(AOwner : TComponent) : TProjectsZonesClustersResource;
begin
Result:=TProjectsZonesClustersResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TProjectsResource.GetZonesOperationsInstance : TProjectsZonesOperationsResource;
begin
if (FZonesOperationsInstance=Nil) then
FZonesOperationsInstance:=CreateZonesOperationsResource;
Result:=FZonesOperationsInstance;
end;
Function TProjectsResource.CreateZonesOperationsResource : TProjectsZonesOperationsResource;
begin
Result:=CreateZonesOperationsResource(Self);
end;
Function TProjectsResource.CreateZonesOperationsResource(AOwner : TComponent) : TProjectsZonesOperationsResource;
begin
Result:=TProjectsZonesOperationsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TProjectsResource.GetZonesInstance : TProjectsZonesResource;
begin
if (FZonesInstance=Nil) then
FZonesInstance:=CreateZonesResource;
Result:=FZonesInstance;
end;
Function TProjectsResource.CreateZonesResource : TProjectsZonesResource;
begin
Result:=CreateZonesResource(Self);
end;
Function TProjectsResource.CreateZonesResource(AOwner : TComponent) : TProjectsZonesResource;
begin
Result:=TProjectsZonesResource.Create(AOwner);
Result.API:=Self.API;
end;
{ --------------------------------------------------------------------
TContainerAPI
--------------------------------------------------------------------}
Class Function TContainerAPI.APIName : String;
begin
Result:='container';
end;
Class Function TContainerAPI.APIVersion : String;
begin
Result:='v1';
end;
Class Function TContainerAPI.APIRevision : String;
begin
Result:='20160421';
end;
Class Function TContainerAPI.APIID : String;
begin
Result:='container:v1';
end;
Class Function TContainerAPI.APITitle : String;
begin
Result:='Google Container Engine API';
end;
Class Function TContainerAPI.APIDescription : String;
begin
Result:='Builds and manages clusters that run container-based applications, powered by open source Kubernetes technology.';
end;
Class Function TContainerAPI.APIOwnerDomain : String;
begin
Result:='google.com';
end;
Class Function TContainerAPI.APIOwnerName : String;
begin
Result:='Google';
end;
Class Function TContainerAPI.APIIcon16 : String;
begin
Result:='http://www.google.com/images/icons/product/search-16.gif';
end;
Class Function TContainerAPI.APIIcon32 : String;
begin
Result:='http://www.google.com/images/icons/product/search-32.gif';
end;
Class Function TContainerAPI.APIdocumentationLink : String;
begin
Result:='https://cloud.google.com/container-engine/';
end;
Class Function TContainerAPI.APIrootUrl : string;
begin
Result:='https://container.googleapis.com/';
end;
Class Function TContainerAPI.APIbasePath : string;
begin
Result:='';
end;
Class Function TContainerAPI.APIbaseURL : String;
begin
Result:='https://container.googleapis.com/';
end;
Class Function TContainerAPI.APIProtocol : string;
begin
Result:='rest';
end;
Class Function TContainerAPI.APIservicePath : string;
begin
Result:='';
end;
Class Function TContainerAPI.APIbatchPath : String;
begin
Result:='batch';
end;
Class Function TContainerAPI.APIAuthScopes : TScopeInfoArray;
begin
SetLength(Result,1);
Result[0].Name:='https://www.googleapis.com/auth/cloud-platform';
Result[0].Description:='View and manage your data across Google Cloud Platform services';
end;
Class Function TContainerAPI.APINeedsAuth : Boolean;
begin
Result:=True;
end;
Class Procedure TContainerAPI.RegisterAPIResources;
begin
TListClustersResponse.RegisterObject;
TCluster.RegisterObject;
TNodeConfigTypemetadata.RegisterObject;
TNodeConfig.RegisterObject;
TMasterAuth.RegisterObject;
TAddonsConfig.RegisterObject;
THttpLoadBalancing.RegisterObject;
THorizontalPodAutoscaling.RegisterObject;
TNodePool.RegisterObject;
TCreateClusterRequest.RegisterObject;
TOperation.RegisterObject;
TUpdateClusterRequest.RegisterObject;
TClusterUpdate.RegisterObject;
TListOperationsResponse.RegisterObject;
TServerConfig.RegisterObject;
TListNodePoolsResponse.RegisterObject;
TCreateNodePoolRequest.RegisterObject;
end;
Function TContainerAPI.GetProjectsZonesClustersNodePoolsInstance : TProjectsZonesClustersNodePoolsResource;
begin
if (FProjectsZonesClustersNodePoolsInstance=Nil) then
FProjectsZonesClustersNodePoolsInstance:=CreateProjectsZonesClustersNodePoolsResource;
Result:=FProjectsZonesClustersNodePoolsInstance;
end;
Function TContainerAPI.CreateProjectsZonesClustersNodePoolsResource : TProjectsZonesClustersNodePoolsResource;
begin
Result:=CreateProjectsZonesClustersNodePoolsResource(Self);
end;
Function TContainerAPI.CreateProjectsZonesClustersNodePoolsResource(AOwner : TComponent) : TProjectsZonesClustersNodePoolsResource;
begin
Result:=TProjectsZonesClustersNodePoolsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TContainerAPI.GetProjectsZonesClustersInstance : TProjectsZonesClustersResource;
begin
if (FProjectsZonesClustersInstance=Nil) then
FProjectsZonesClustersInstance:=CreateProjectsZonesClustersResource;
Result:=FProjectsZonesClustersInstance;
end;
Function TContainerAPI.CreateProjectsZonesClustersResource : TProjectsZonesClustersResource;
begin
Result:=CreateProjectsZonesClustersResource(Self);
end;
Function TContainerAPI.CreateProjectsZonesClustersResource(AOwner : TComponent) : TProjectsZonesClustersResource;
begin
Result:=TProjectsZonesClustersResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TContainerAPI.GetProjectsZonesOperationsInstance : TProjectsZonesOperationsResource;
begin
if (FProjectsZonesOperationsInstance=Nil) then
FProjectsZonesOperationsInstance:=CreateProjectsZonesOperationsResource;
Result:=FProjectsZonesOperationsInstance;
end;
Function TContainerAPI.CreateProjectsZonesOperationsResource : TProjectsZonesOperationsResource;
begin
Result:=CreateProjectsZonesOperationsResource(Self);
end;
Function TContainerAPI.CreateProjectsZonesOperationsResource(AOwner : TComponent) : TProjectsZonesOperationsResource;
begin
Result:=TProjectsZonesOperationsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TContainerAPI.GetProjectsZonesInstance : TProjectsZonesResource;
begin
if (FProjectsZonesInstance=Nil) then
FProjectsZonesInstance:=CreateProjectsZonesResource;
Result:=FProjectsZonesInstance;
end;
Function TContainerAPI.CreateProjectsZonesResource : TProjectsZonesResource;
begin
Result:=CreateProjectsZonesResource(Self);
end;
Function TContainerAPI.CreateProjectsZonesResource(AOwner : TComponent) : TProjectsZonesResource;
begin
Result:=TProjectsZonesResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TContainerAPI.GetProjectsInstance : TProjectsResource;
begin
if (FProjectsInstance=Nil) then
FProjectsInstance:=CreateProjectsResource;
Result:=FProjectsInstance;
end;
Function TContainerAPI.CreateProjectsResource : TProjectsResource;
begin
Result:=CreateProjectsResource(Self);
end;
Function TContainerAPI.CreateProjectsResource(AOwner : TComponent) : TProjectsResource;
begin
Result:=TProjectsResource.Create(AOwner);
Result.API:=Self.API;
end;
initialization
TContainerAPI.RegisterAPI;
end.