Repository URL to install this package:
|
Version:
3.2.0 ▾
|
unit googleiam;
{$MODE objfpc}
{$H+}
interface
uses sysutils, classes, googleservice, restbase, googlebase;
type
//Top-level schema types
TListServiceAccountsResponse = Class;
TServiceAccount = Class;
TCreateServiceAccountRequest = Class;
TEmpty = Class;
TListServiceAccountKeysResponse = Class;
TServiceAccountKey = Class;
TCreateServiceAccountKeyRequest = Class;
TSignBlobRequest = Class;
TSignBlobResponse = Class;
TPolicy = Class;
TBinding = Class;
TRule = Class;
TCondition = Class;
TLogConfig = Class;
TCounterOptions = Class;
TDataAccessOptions = Class;
TCloudAuditOptions = Class;
TSetIamPolicyRequest = Class;
TTestIamPermissionsRequest = Class;
TTestIamPermissionsResponse = Class;
TListServiceAccountsResponseArray = Array of TListServiceAccountsResponse;
TServiceAccountArray = Array of TServiceAccount;
TCreateServiceAccountRequestArray = Array of TCreateServiceAccountRequest;
TEmptyArray = Array of TEmpty;
TListServiceAccountKeysResponseArray = Array of TListServiceAccountKeysResponse;
TServiceAccountKeyArray = Array of TServiceAccountKey;
TCreateServiceAccountKeyRequestArray = Array of TCreateServiceAccountKeyRequest;
TSignBlobRequestArray = Array of TSignBlobRequest;
TSignBlobResponseArray = Array of TSignBlobResponse;
TPolicyArray = Array of TPolicy;
TBindingArray = Array of TBinding;
TRuleArray = Array of TRule;
TConditionArray = Array of TCondition;
TLogConfigArray = Array of TLogConfig;
TCounterOptionsArray = Array of TCounterOptions;
TDataAccessOptionsArray = Array of TDataAccessOptions;
TCloudAuditOptionsArray = Array of TCloudAuditOptions;
TSetIamPolicyRequestArray = Array of TSetIamPolicyRequest;
TTestIamPermissionsRequestArray = Array of TTestIamPermissionsRequest;
TTestIamPermissionsResponseArray = Array of TTestIamPermissionsResponse;
//Anonymous types, using auto-generated names
TListServiceAccountsResponseTypeaccountsArray = Array of TServiceAccount;
TListServiceAccountKeysResponseTypekeysArray = Array of TServiceAccountKey;
TPolicyTypebindingsArray = Array of TBinding;
TPolicyTyperulesArray = Array of TRule;
TRuleTypeconditionsArray = Array of TCondition;
TRuleTypelogConfigArray = Array of TLogConfig;
{ --------------------------------------------------------------------
TListServiceAccountsResponse
--------------------------------------------------------------------}
TListServiceAccountsResponse = Class(TGoogleBaseObject)
Private
Faccounts : TListServiceAccountsResponseTypeaccountsArray;
FnextPageToken : String;
Protected
//Property setters
Procedure Setaccounts(AIndex : Integer; const AValue : TListServiceAccountsResponseTypeaccountsArray); virtual;
Procedure SetnextPageToken(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 accounts : TListServiceAccountsResponseTypeaccountsArray Index 0 Read Faccounts Write Setaccounts;
Property nextPageToken : String Index 8 Read FnextPageToken Write SetnextPageToken;
end;
TListServiceAccountsResponseClass = Class of TListServiceAccountsResponse;
{ --------------------------------------------------------------------
TServiceAccount
--------------------------------------------------------------------}
TServiceAccount = Class(TGoogleBaseObject)
Private
Fname : String;
FprojectId : String;
FuniqueId : String;
Femail : String;
FdisplayName : String;
Fetag : String;
Foauth2ClientId : String;
Protected
//Property setters
Procedure Setname(AIndex : Integer; const AValue : String); virtual;
Procedure SetprojectId(AIndex : Integer; const AValue : String); virtual;
Procedure SetuniqueId(AIndex : Integer; const AValue : String); virtual;
Procedure Setemail(AIndex : Integer; const AValue : String); virtual;
Procedure SetdisplayName(AIndex : Integer; const AValue : String); virtual;
Procedure Setetag(AIndex : Integer; const AValue : String); virtual;
Procedure Setoauth2ClientId(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property name : String Index 0 Read Fname Write Setname;
Property projectId : String Index 8 Read FprojectId Write SetprojectId;
Property uniqueId : String Index 16 Read FuniqueId Write SetuniqueId;
Property email : String Index 24 Read Femail Write Setemail;
Property displayName : String Index 32 Read FdisplayName Write SetdisplayName;
Property etag : String Index 40 Read Fetag Write Setetag;
Property oauth2ClientId : String Index 48 Read Foauth2ClientId Write Setoauth2ClientId;
end;
TServiceAccountClass = Class of TServiceAccount;
{ --------------------------------------------------------------------
TCreateServiceAccountRequest
--------------------------------------------------------------------}
TCreateServiceAccountRequest = Class(TGoogleBaseObject)
Private
FaccountId : String;
FserviceAccount : TServiceAccount;
Protected
//Property setters
Procedure SetaccountId(AIndex : Integer; const AValue : String); virtual;
Procedure SetserviceAccount(AIndex : Integer; const AValue : TServiceAccount); virtual;
Public
Published
Property accountId : String Index 0 Read FaccountId Write SetaccountId;
Property serviceAccount : TServiceAccount Index 8 Read FserviceAccount Write SetserviceAccount;
end;
TCreateServiceAccountRequestClass = Class of TCreateServiceAccountRequest;
{ --------------------------------------------------------------------
TEmpty
--------------------------------------------------------------------}
TEmpty = Class(TGoogleBaseObject)
Private
Protected
//Property setters
Public
Published
end;
TEmptyClass = Class of TEmpty;
{ --------------------------------------------------------------------
TListServiceAccountKeysResponse
--------------------------------------------------------------------}
TListServiceAccountKeysResponse = Class(TGoogleBaseObject)
Private
Fkeys : TListServiceAccountKeysResponseTypekeysArray;
Protected
//Property setters
Procedure Setkeys(AIndex : Integer; const AValue : TListServiceAccountKeysResponseTypekeysArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property keys : TListServiceAccountKeysResponseTypekeysArray Index 0 Read Fkeys Write Setkeys;
end;
TListServiceAccountKeysResponseClass = Class of TListServiceAccountKeysResponse;
{ --------------------------------------------------------------------
TServiceAccountKey
--------------------------------------------------------------------}
TServiceAccountKey = Class(TGoogleBaseObject)
Private
Fname : String;
FprivateKeyType : String;
FprivateKeyData : String;
FvalidAfterTime : String;
FvalidBeforeTime : String;
Protected
//Property setters
Procedure Setname(AIndex : Integer; const AValue : String); virtual;
Procedure SetprivateKeyType(AIndex : Integer; const AValue : String); virtual;
Procedure SetprivateKeyData(AIndex : Integer; const AValue : String); virtual;
Procedure SetvalidAfterTime(AIndex : Integer; const AValue : String); virtual;
Procedure SetvalidBeforeTime(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property name : String Index 0 Read Fname Write Setname;
Property privateKeyType : String Index 8 Read FprivateKeyType Write SetprivateKeyType;
Property privateKeyData : String Index 16 Read FprivateKeyData Write SetprivateKeyData;
Property validAfterTime : String Index 24 Read FvalidAfterTime Write SetvalidAfterTime;
Property validBeforeTime : String Index 32 Read FvalidBeforeTime Write SetvalidBeforeTime;
end;
TServiceAccountKeyClass = Class of TServiceAccountKey;
{ --------------------------------------------------------------------
TCreateServiceAccountKeyRequest
--------------------------------------------------------------------}
TCreateServiceAccountKeyRequest = Class(TGoogleBaseObject)
Private
FprivateKeyType : String;
Protected
//Property setters
Procedure SetprivateKeyType(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property privateKeyType : String Index 0 Read FprivateKeyType Write SetprivateKeyType;
end;
TCreateServiceAccountKeyRequestClass = Class of TCreateServiceAccountKeyRequest;
{ --------------------------------------------------------------------
TSignBlobRequest
--------------------------------------------------------------------}
TSignBlobRequest = Class(TGoogleBaseObject)
Private
FbytesToSign : String;
Protected
//Property setters
Procedure SetbytesToSign(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property bytesToSign : String Index 0 Read FbytesToSign Write SetbytesToSign;
end;
TSignBlobRequestClass = Class of TSignBlobRequest;
{ --------------------------------------------------------------------
TSignBlobResponse
--------------------------------------------------------------------}
TSignBlobResponse = Class(TGoogleBaseObject)
Private
FkeyId : String;
Fsignature : String;
Protected
//Property setters
Procedure SetkeyId(AIndex : Integer; const AValue : String); virtual;
Procedure Setsignature(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property keyId : String Index 0 Read FkeyId Write SetkeyId;
Property signature : String Index 8 Read Fsignature Write Setsignature;
end;
TSignBlobResponseClass = Class of TSignBlobResponse;
{ --------------------------------------------------------------------
TPolicy
--------------------------------------------------------------------}
TPolicy = Class(TGoogleBaseObject)
Private
Fversion : integer;
Fbindings : TPolicyTypebindingsArray;
Frules : TPolicyTyperulesArray;
Fetag : String;
Protected
//Property setters
Procedure Setversion(AIndex : Integer; const AValue : integer); virtual;
Procedure Setbindings(AIndex : Integer; const AValue : TPolicyTypebindingsArray); virtual;
Procedure Setrules(AIndex : Integer; const AValue : TPolicyTyperulesArray); virtual;
Procedure Setetag(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 version : integer Index 0 Read Fversion Write Setversion;
Property bindings : TPolicyTypebindingsArray Index 8 Read Fbindings Write Setbindings;
Property rules : TPolicyTyperulesArray Index 16 Read Frules Write Setrules;
Property etag : String Index 24 Read Fetag Write Setetag;
end;
TPolicyClass = Class of TPolicy;
{ --------------------------------------------------------------------
TBinding
--------------------------------------------------------------------}
TBinding = Class(TGoogleBaseObject)
Private
Frole : String;
Fmembers : TStringArray;
Protected
//Property setters
Procedure Setrole(AIndex : Integer; const AValue : String); virtual;
Procedure Setmembers(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 role : String Index 0 Read Frole Write Setrole;
Property members : TStringArray Index 8 Read Fmembers Write Setmembers;
end;
TBindingClass = Class of TBinding;
{ --------------------------------------------------------------------
TRule
--------------------------------------------------------------------}
TRule = Class(TGoogleBaseObject)
Private
Fdescription : String;
Fpermissions : TStringArray;
Faction : String;
F_in : TStringArray;
FnotIn : TStringArray;
Fconditions : TRuleTypeconditionsArray;
FlogConfig : TRuleTypelogConfigArray;
Protected
Class Function ExportPropertyName(Const AName : String) : string; override;
//Property setters
Procedure Setdescription(AIndex : Integer; const AValue : String); virtual;
Procedure Setpermissions(AIndex : Integer; const AValue : TStringArray); virtual;
Procedure Setaction(AIndex : Integer; const AValue : String); virtual;
Procedure Set_in(AIndex : Integer; const AValue : TStringArray); virtual;
Procedure SetnotIn(AIndex : Integer; const AValue : TStringArray); virtual;
Procedure Setconditions(AIndex : Integer; const AValue : TRuleTypeconditionsArray); virtual;
Procedure SetlogConfig(AIndex : Integer; const AValue : TRuleTypelogConfigArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property description : String Index 0 Read Fdescription Write Setdescription;
Property permissions : TStringArray Index 8 Read Fpermissions Write Setpermissions;
Property action : String Index 16 Read Faction Write Setaction;
Property _in : TStringArray Index 24 Read F_in Write Set_in;
Property notIn : TStringArray Index 32 Read FnotIn Write SetnotIn;
Property conditions : TRuleTypeconditionsArray Index 40 Read Fconditions Write Setconditions;
Property logConfig : TRuleTypelogConfigArray Index 48 Read FlogConfig Write SetlogConfig;
end;
TRuleClass = Class of TRule;
{ --------------------------------------------------------------------
TCondition
--------------------------------------------------------------------}
TCondition = Class(TGoogleBaseObject)
Private
Fiam : String;
Fsys : String;
Fsvc : String;
Fop : String;
Fvalue : String;
Fvalues : TStringArray;
Protected
//Property setters
Procedure Setiam(AIndex : Integer; const AValue : String); virtual;
Procedure Setsys(AIndex : Integer; const AValue : String); virtual;
Procedure Setsvc(AIndex : Integer; const AValue : String); virtual;
Procedure Setop(AIndex : Integer; const AValue : String); virtual;
Procedure Setvalue(AIndex : Integer; const AValue : String); virtual;
Procedure Setvalues(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 iam : String Index 0 Read Fiam Write Setiam;
Property sys : String Index 8 Read Fsys Write Setsys;
Property svc : String Index 16 Read Fsvc Write Setsvc;
Property op : String Index 24 Read Fop Write Setop;
Property value : String Index 32 Read Fvalue Write Setvalue;
Property values : TStringArray Index 40 Read Fvalues Write Setvalues;
end;
TConditionClass = Class of TCondition;
{ --------------------------------------------------------------------
TLogConfig
--------------------------------------------------------------------}
TLogConfig = Class(TGoogleBaseObject)
Private
Fcounter : TCounterOptions;
FdataAccess : TDataAccessOptions;
FcloudAudit : TCloudAuditOptions;
Protected
//Property setters
Procedure Setcounter(AIndex : Integer; const AValue : TCounterOptions); virtual;
Procedure SetdataAccess(AIndex : Integer; const AValue : TDataAccessOptions); virtual;
Procedure SetcloudAudit(AIndex : Integer; const AValue : TCloudAuditOptions); virtual;
Public
Published
Property counter : TCounterOptions Index 0 Read Fcounter Write Setcounter;
Property dataAccess : TDataAccessOptions Index 8 Read FdataAccess Write SetdataAccess;
Property cloudAudit : TCloudAuditOptions Index 16 Read FcloudAudit Write SetcloudAudit;
end;
TLogConfigClass = Class of TLogConfig;
{ --------------------------------------------------------------------
TCounterOptions
--------------------------------------------------------------------}
TCounterOptions = Class(TGoogleBaseObject)
Private
Fmetric : String;
Ffield : String;
Protected
//Property setters
Procedure Setmetric(AIndex : Integer; const AValue : String); virtual;
Procedure Setfield(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property metric : String Index 0 Read Fmetric Write Setmetric;
Property field : String Index 8 Read Ffield Write Setfield;
end;
TCounterOptionsClass = Class of TCounterOptions;
{ --------------------------------------------------------------------
TDataAccessOptions
--------------------------------------------------------------------}
TDataAccessOptions = Class(TGoogleBaseObject)
Private
Protected
//Property setters
Public
Published
end;
TDataAccessOptionsClass = Class of TDataAccessOptions;
{ --------------------------------------------------------------------
TCloudAuditOptions
--------------------------------------------------------------------}
TCloudAuditOptions = Class(TGoogleBaseObject)
Private
Protected
//Property setters
Public
Published
end;
TCloudAuditOptionsClass = Class of TCloudAuditOptions;
{ --------------------------------------------------------------------
TSetIamPolicyRequest
--------------------------------------------------------------------}
TSetIamPolicyRequest = Class(TGoogleBaseObject)
Private
Fpolicy : TPolicy;
Protected
//Property setters
Procedure Setpolicy(AIndex : Integer; const AValue : TPolicy); virtual;
Public
Published
Property policy : TPolicy Index 0 Read Fpolicy Write Setpolicy;
end;
TSetIamPolicyRequestClass = Class of TSetIamPolicyRequest;
{ --------------------------------------------------------------------
TTestIamPermissionsRequest
--------------------------------------------------------------------}
TTestIamPermissionsRequest = Class(TGoogleBaseObject)
Private
Fpermissions : TStringArray;
Protected
//Property setters
Procedure Setpermissions(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 permissions : TStringArray Index 0 Read Fpermissions Write Setpermissions;
end;
TTestIamPermissionsRequestClass = Class of TTestIamPermissionsRequest;
{ --------------------------------------------------------------------
TTestIamPermissionsResponse
--------------------------------------------------------------------}
TTestIamPermissionsResponse = Class(TGoogleBaseObject)
Private
Fpermissions : TStringArray;
Protected
//Property setters
Procedure Setpermissions(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 permissions : TStringArray Index 0 Read Fpermissions Write Setpermissions;
end;
TTestIamPermissionsResponseClass = Class of TTestIamPermissionsResponse;
{ --------------------------------------------------------------------
TProjectsServiceAccountsKeysResource
--------------------------------------------------------------------}
//Optional query Options for TProjectsServiceAccountsKeysResource, method List
TProjectsServiceAccountsKeysListOptions = Record
keyTypes : String;
end;
TProjectsServiceAccountsKeysResource = Class(TGoogleResource)
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function List(_name: string; AQuery : string = '') : TListServiceAccountKeysResponse;
Function List(_name: string; AQuery : TProjectsServiceAccountsKeyslistOptions) : TListServiceAccountKeysResponse;
Function Get(_name: string) : TServiceAccountKey;
Function Create(_name: string; aCreateServiceAccountKeyRequest : TCreateServiceAccountKeyRequest) : TServiceAccountKey;overload;
Function Delete(_name: string) : TEmpty;
end;
{ --------------------------------------------------------------------
TProjectsServiceAccountsResource
--------------------------------------------------------------------}
//Optional query Options for TProjectsServiceAccountsResource, method List
TProjectsServiceAccountsListOptions = Record
pageSize : integer;
pageToken : String;
end;
TProjectsServiceAccountsResource = Class(TGoogleResource)
Private
FKeysInstance : TProjectsServiceAccountsKeysResource;
Function GetKeysInstance : TProjectsServiceAccountsKeysResource;virtual;
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function List(_name: string; AQuery : string = '') : TListServiceAccountsResponse;
Function List(_name: string; AQuery : TProjectsServiceAccountslistOptions) : TListServiceAccountsResponse;
Function Get(_name: string) : TServiceAccount;
Function Create(_name: string; aCreateServiceAccountRequest : TCreateServiceAccountRequest) : TServiceAccount;overload;
Function Update(_name: string; aServiceAccount : TServiceAccount) : TServiceAccount;
Function Delete(_name: string) : TEmpty;
Function SignBlob(_name: string; aSignBlobRequest : TSignBlobRequest) : TSignBlobResponse;
Function GetIamPolicy(resource: string) : TPolicy;
Function SetIamPolicy(resource: string; aSetIamPolicyRequest : TSetIamPolicyRequest) : TPolicy;
Function TestIamPermissions(resource: string; aTestIamPermissionsRequest : TTestIamPermissionsRequest) : TTestIamPermissionsResponse;
Function CreateKeysResource(AOwner : TComponent) : TProjectsServiceAccountsKeysResource;virtual;overload;
Function CreateKeysResource : TProjectsServiceAccountsKeysResource;virtual;overload;
Property KeysResource : TProjectsServiceAccountsKeysResource Read GetKeysInstance;
end;
{ --------------------------------------------------------------------
TProjectsResource
--------------------------------------------------------------------}
TProjectsResource = Class(TGoogleResource)
Private
FServiceAccountsKeysInstance : TProjectsServiceAccountsKeysResource;
FServiceAccountsInstance : TProjectsServiceAccountsResource;
Function GetServiceAccountsKeysInstance : TProjectsServiceAccountsKeysResource;virtual;
Function GetServiceAccountsInstance : TProjectsServiceAccountsResource;virtual;
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function CreateServiceAccountsKeysResource(AOwner : TComponent) : TProjectsServiceAccountsKeysResource;virtual;overload;
Function CreateServiceAccountsKeysResource : TProjectsServiceAccountsKeysResource;virtual;overload;
Function CreateServiceAccountsResource(AOwner : TComponent) : TProjectsServiceAccountsResource;virtual;overload;
Function CreateServiceAccountsResource : TProjectsServiceAccountsResource;virtual;overload;
Property ServiceAccountsKeysResource : TProjectsServiceAccountsKeysResource Read GetServiceAccountsKeysInstance;
Property ServiceAccountsResource : TProjectsServiceAccountsResource Read GetServiceAccountsInstance;
end;
{ --------------------------------------------------------------------
TIamAPI
--------------------------------------------------------------------}
TIamAPI = Class(TGoogleAPI)
Private
FProjectsServiceAccountsKeysInstance : TProjectsServiceAccountsKeysResource;
FProjectsServiceAccountsInstance : TProjectsServiceAccountsResource;
FProjectsInstance : TProjectsResource;
Function GetProjectsServiceAccountsKeysInstance : TProjectsServiceAccountsKeysResource;virtual;
Function GetProjectsServiceAccountsInstance : TProjectsServiceAccountsResource;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 CreateProjectsServiceAccountsKeysResource(AOwner : TComponent) : TProjectsServiceAccountsKeysResource;virtual;overload;
Function CreateProjectsServiceAccountsKeysResource : TProjectsServiceAccountsKeysResource;virtual;overload;
Function CreateProjectsServiceAccountsResource(AOwner : TComponent) : TProjectsServiceAccountsResource;virtual;overload;
Function CreateProjectsServiceAccountsResource : TProjectsServiceAccountsResource;virtual;overload;
Function CreateProjectsResource(AOwner : TComponent) : TProjectsResource;virtual;overload;
Function CreateProjectsResource : TProjectsResource;virtual;overload;
//Add default on-demand instances for resources
Property ProjectsServiceAccountsKeysResource : TProjectsServiceAccountsKeysResource Read GetProjectsServiceAccountsKeysInstance;
Property ProjectsServiceAccountsResource : TProjectsServiceAccountsResource Read GetProjectsServiceAccountsInstance;
Property ProjectsResource : TProjectsResource Read GetProjectsInstance;
end;
implementation
{ --------------------------------------------------------------------
TListServiceAccountsResponse
--------------------------------------------------------------------}
Procedure TListServiceAccountsResponse.Setaccounts(AIndex : Integer; const AValue : TListServiceAccountsResponseTypeaccountsArray);
begin
If (Faccounts=AValue) then exit;
Faccounts:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TListServiceAccountsResponse.SetnextPageToken(AIndex : Integer; const AValue : String);
begin
If (FnextPageToken=AValue) then exit;
FnextPageToken:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TListServiceAccountsResponse.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'accounts' : SetLength(Faccounts,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TServiceAccount
--------------------------------------------------------------------}
Procedure TServiceAccount.Setname(AIndex : Integer; const AValue : String);
begin
If (Fname=AValue) then exit;
Fname:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccount.SetprojectId(AIndex : Integer; const AValue : String);
begin
If (FprojectId=AValue) then exit;
FprojectId:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccount.SetuniqueId(AIndex : Integer; const AValue : String);
begin
If (FuniqueId=AValue) then exit;
FuniqueId:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccount.Setemail(AIndex : Integer; const AValue : String);
begin
If (Femail=AValue) then exit;
Femail:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccount.SetdisplayName(AIndex : Integer; const AValue : String);
begin
If (FdisplayName=AValue) then exit;
FdisplayName:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccount.Setetag(AIndex : Integer; const AValue : String);
begin
If (Fetag=AValue) then exit;
Fetag:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccount.Setoauth2ClientId(AIndex : Integer; const AValue : String);
begin
If (Foauth2ClientId=AValue) then exit;
Foauth2ClientId:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TCreateServiceAccountRequest
--------------------------------------------------------------------}
Procedure TCreateServiceAccountRequest.SetaccountId(AIndex : Integer; const AValue : String);
begin
If (FaccountId=AValue) then exit;
FaccountId:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCreateServiceAccountRequest.SetserviceAccount(AIndex : Integer; const AValue : TServiceAccount);
begin
If (FserviceAccount=AValue) then exit;
FserviceAccount:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TEmpty
--------------------------------------------------------------------}
{ --------------------------------------------------------------------
TListServiceAccountKeysResponse
--------------------------------------------------------------------}
Procedure TListServiceAccountKeysResponse.Setkeys(AIndex : Integer; const AValue : TListServiceAccountKeysResponseTypekeysArray);
begin
If (Fkeys=AValue) then exit;
Fkeys:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TListServiceAccountKeysResponse.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'keys' : SetLength(Fkeys,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TServiceAccountKey
--------------------------------------------------------------------}
Procedure TServiceAccountKey.Setname(AIndex : Integer; const AValue : String);
begin
If (Fname=AValue) then exit;
Fname:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccountKey.SetprivateKeyType(AIndex : Integer; const AValue : String);
begin
If (FprivateKeyType=AValue) then exit;
FprivateKeyType:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccountKey.SetprivateKeyData(AIndex : Integer; const AValue : String);
begin
If (FprivateKeyData=AValue) then exit;
FprivateKeyData:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccountKey.SetvalidAfterTime(AIndex : Integer; const AValue : String);
begin
If (FvalidAfterTime=AValue) then exit;
FvalidAfterTime:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceAccountKey.SetvalidBeforeTime(AIndex : Integer; const AValue : String);
begin
If (FvalidBeforeTime=AValue) then exit;
FvalidBeforeTime:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TCreateServiceAccountKeyRequest
--------------------------------------------------------------------}
Procedure TCreateServiceAccountKeyRequest.SetprivateKeyType(AIndex : Integer; const AValue : String);
begin
If (FprivateKeyType=AValue) then exit;
FprivateKeyType:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TSignBlobRequest
--------------------------------------------------------------------}
Procedure TSignBlobRequest.SetbytesToSign(AIndex : Integer; const AValue : String);
begin
If (FbytesToSign=AValue) then exit;
FbytesToSign:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TSignBlobResponse
--------------------------------------------------------------------}
Procedure TSignBlobResponse.SetkeyId(AIndex : Integer; const AValue : String);
begin
If (FkeyId=AValue) then exit;
FkeyId:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TSignBlobResponse.Setsignature(AIndex : Integer; const AValue : String);
begin
If (Fsignature=AValue) then exit;
Fsignature:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TPolicy
--------------------------------------------------------------------}
Procedure TPolicy.Setversion(AIndex : Integer; const AValue : integer);
begin
If (Fversion=AValue) then exit;
Fversion:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TPolicy.Setbindings(AIndex : Integer; const AValue : TPolicyTypebindingsArray);
begin
If (Fbindings=AValue) then exit;
Fbindings:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TPolicy.Setrules(AIndex : Integer; const AValue : TPolicyTyperulesArray);
begin
If (Frules=AValue) then exit;
Frules:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TPolicy.Setetag(AIndex : Integer; const AValue : String);
begin
If (Fetag=AValue) then exit;
Fetag:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TPolicy.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'bindings' : SetLength(Fbindings,ALength);
'rules' : SetLength(Frules,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TBinding
--------------------------------------------------------------------}
Procedure TBinding.Setrole(AIndex : Integer; const AValue : String);
begin
If (Frole=AValue) then exit;
Frole:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TBinding.Setmembers(AIndex : Integer; const AValue : TStringArray);
begin
If (Fmembers=AValue) then exit;
Fmembers:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TBinding.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'members' : SetLength(Fmembers,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TRule
--------------------------------------------------------------------}
Procedure TRule.Setdescription(AIndex : Integer; const AValue : String);
begin
If (Fdescription=AValue) then exit;
Fdescription:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TRule.Setpermissions(AIndex : Integer; const AValue : TStringArray);
begin
If (Fpermissions=AValue) then exit;
Fpermissions:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TRule.Setaction(AIndex : Integer; const AValue : String);
begin
If (Faction=AValue) then exit;
Faction:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TRule.Set_in(AIndex : Integer; const AValue : TStringArray);
begin
If (F_in=AValue) then exit;
F_in:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TRule.SetnotIn(AIndex : Integer; const AValue : TStringArray);
begin
If (FnotIn=AValue) then exit;
FnotIn:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TRule.Setconditions(AIndex : Integer; const AValue : TRuleTypeconditionsArray);
begin
If (Fconditions=AValue) then exit;
Fconditions:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TRule.SetlogConfig(AIndex : Integer; const AValue : TRuleTypelogConfigArray);
begin
If (FlogConfig=AValue) then exit;
FlogConfig:=AValue;
MarkPropertyChanged(AIndex);
end;
Class Function TRule.ExportPropertyName(Const AName : String) :String;
begin
Case AName of
'_in' : Result:='in';
else
Result:=Inherited ExportPropertyName(AName);
end;
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TRule.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'permissions' : SetLength(Fpermissions,ALength);
'_in' : SetLength(F_in,ALength);
'notin' : SetLength(FnotIn,ALength);
'conditions' : SetLength(Fconditions,ALength);
'logconfig' : SetLength(FlogConfig,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TCondition
--------------------------------------------------------------------}
Procedure TCondition.Setiam(AIndex : Integer; const AValue : String);
begin
If (Fiam=AValue) then exit;
Fiam:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCondition.Setsys(AIndex : Integer; const AValue : String);
begin
If (Fsys=AValue) then exit;
Fsys:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCondition.Setsvc(AIndex : Integer; const AValue : String);
begin
If (Fsvc=AValue) then exit;
Fsvc:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCondition.Setop(AIndex : Integer; const AValue : String);
begin
If (Fop=AValue) then exit;
Fop:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCondition.Setvalue(AIndex : Integer; const AValue : String);
begin
If (Fvalue=AValue) then exit;
Fvalue:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCondition.Setvalues(AIndex : Integer; const AValue : TStringArray);
begin
If (Fvalues=AValue) then exit;
Fvalues:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TCondition.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'values' : SetLength(Fvalues,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TLogConfig
--------------------------------------------------------------------}
Procedure TLogConfig.Setcounter(AIndex : Integer; const AValue : TCounterOptions);
begin
If (Fcounter=AValue) then exit;
Fcounter:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TLogConfig.SetdataAccess(AIndex : Integer; const AValue : TDataAccessOptions);
begin
If (FdataAccess=AValue) then exit;
FdataAccess:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TLogConfig.SetcloudAudit(AIndex : Integer; const AValue : TCloudAuditOptions);
begin
If (FcloudAudit=AValue) then exit;
FcloudAudit:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TCounterOptions
--------------------------------------------------------------------}
Procedure TCounterOptions.Setmetric(AIndex : Integer; const AValue : String);
begin
If (Fmetric=AValue) then exit;
Fmetric:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TCounterOptions.Setfield(AIndex : Integer; const AValue : String);
begin
If (Ffield=AValue) then exit;
Ffield:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TDataAccessOptions
--------------------------------------------------------------------}
{ --------------------------------------------------------------------
TCloudAuditOptions
--------------------------------------------------------------------}
{ --------------------------------------------------------------------
TSetIamPolicyRequest
--------------------------------------------------------------------}
Procedure TSetIamPolicyRequest.Setpolicy(AIndex : Integer; const AValue : TPolicy);
begin
If (Fpolicy=AValue) then exit;
Fpolicy:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TTestIamPermissionsRequest
--------------------------------------------------------------------}
Procedure TTestIamPermissionsRequest.Setpermissions(AIndex : Integer; const AValue : TStringArray);
begin
If (Fpermissions=AValue) then exit;
Fpermissions:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TTestIamPermissionsRequest.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'permissions' : SetLength(Fpermissions,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TTestIamPermissionsResponse
--------------------------------------------------------------------}
Procedure TTestIamPermissionsResponse.Setpermissions(AIndex : Integer; const AValue : TStringArray);
begin
If (Fpermissions=AValue) then exit;
Fpermissions:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TTestIamPermissionsResponse.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'permissions' : SetLength(Fpermissions,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TProjectsServiceAccountsKeysResource
--------------------------------------------------------------------}
Class Function TProjectsServiceAccountsKeysResource.ResourceName : String;
begin
Result:='keys';
end;
Class Function TProjectsServiceAccountsKeysResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TiamAPI;
end;
Function TProjectsServiceAccountsKeysResource.List(_name: string; AQuery : string = '') : TListServiceAccountKeysResponse;
Const
_HTTPMethod = 'GET';
_Path = 'v1/{+name}/keys';
_Methodid = 'iam.projects.serviceAccounts.keys.list';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TListServiceAccountKeysResponse) as TListServiceAccountKeysResponse;
end;
Function TProjectsServiceAccountsKeysResource.List(_name: string; AQuery : TProjectsServiceAccountsKeyslistOptions) : TListServiceAccountKeysResponse;
Var
_Q : String;
begin
_Q:='';
AddToQuery(_Q,'keyTypes',AQuery.keyTypes);
Result:=List(_name,_Q);
end;
Function TProjectsServiceAccountsKeysResource.Get(_name: string) : TServiceAccountKey;
Const
_HTTPMethod = 'GET';
_Path = 'v1/{+name}';
_Methodid = 'iam.projects.serviceAccounts.keys.get';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TServiceAccountKey) as TServiceAccountKey;
end;
Function TProjectsServiceAccountsKeysResource.Create(_name: string; aCreateServiceAccountKeyRequest : TCreateServiceAccountKeyRequest) : TServiceAccountKey;
Const
_HTTPMethod = 'POST';
_Path = 'v1/{+name}/keys';
_Methodid = 'iam.projects.serviceAccounts.keys.create';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,'',aCreateServiceAccountKeyRequest,TServiceAccountKey) as TServiceAccountKey;
end;
Function TProjectsServiceAccountsKeysResource.Delete(_name: string) : TEmpty;
Const
_HTTPMethod = 'DELETE';
_Path = 'v1/{+name}';
_Methodid = 'iam.projects.serviceAccounts.keys.delete';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TEmpty) as TEmpty;
end;
{ --------------------------------------------------------------------
TProjectsServiceAccountsResource
--------------------------------------------------------------------}
Class Function TProjectsServiceAccountsResource.ResourceName : String;
begin
Result:='serviceAccounts';
end;
Class Function TProjectsServiceAccountsResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TiamAPI;
end;
Function TProjectsServiceAccountsResource.List(_name: string; AQuery : string = '') : TListServiceAccountsResponse;
Const
_HTTPMethod = 'GET';
_Path = 'v1/{+name}/serviceAccounts';
_Methodid = 'iam.projects.serviceAccounts.list';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TListServiceAccountsResponse) as TListServiceAccountsResponse;
end;
Function TProjectsServiceAccountsResource.List(_name: string; AQuery : TProjectsServiceAccountslistOptions) : TListServiceAccountsResponse;
Var
_Q : String;
begin
_Q:='';
AddToQuery(_Q,'pageSize',AQuery.pageSize);
AddToQuery(_Q,'pageToken',AQuery.pageToken);
Result:=List(_name,_Q);
end;
Function TProjectsServiceAccountsResource.Get(_name: string) : TServiceAccount;
Const
_HTTPMethod = 'GET';
_Path = 'v1/{+name}';
_Methodid = 'iam.projects.serviceAccounts.get';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TServiceAccount) as TServiceAccount;
end;
Function TProjectsServiceAccountsResource.Create(_name: string; aCreateServiceAccountRequest : TCreateServiceAccountRequest) : TServiceAccount;
Const
_HTTPMethod = 'POST';
_Path = 'v1/{+name}/serviceAccounts';
_Methodid = 'iam.projects.serviceAccounts.create';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,'',aCreateServiceAccountRequest,TServiceAccount) as TServiceAccount;
end;
Function TProjectsServiceAccountsResource.Update(_name: string; aServiceAccount : TServiceAccount) : TServiceAccount;
Const
_HTTPMethod = 'PUT';
_Path = 'v1/{+name}';
_Methodid = 'iam.projects.serviceAccounts.update';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,'',aServiceAccount,TServiceAccount) as TServiceAccount;
end;
Function TProjectsServiceAccountsResource.Delete(_name: string) : TEmpty;
Const
_HTTPMethod = 'DELETE';
_Path = 'v1/{+name}';
_Methodid = 'iam.projects.serviceAccounts.delete';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TEmpty) as TEmpty;
end;
Function TProjectsServiceAccountsResource.SignBlob(_name: string; aSignBlobRequest : TSignBlobRequest) : TSignBlobResponse;
Const
_HTTPMethod = 'POST';
_Path = 'v1/{+name}:signBlob';
_Methodid = 'iam.projects.serviceAccounts.signBlob';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,'',aSignBlobRequest,TSignBlobResponse) as TSignBlobResponse;
end;
Function TProjectsServiceAccountsResource.GetIamPolicy(resource: string) : TPolicy;
Const
_HTTPMethod = 'POST';
_Path = 'v1/{+resource}:getIamPolicy';
_Methodid = 'iam.projects.serviceAccounts.getIamPolicy';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['resource',resource]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TPolicy) as TPolicy;
end;
Function TProjectsServiceAccountsResource.SetIamPolicy(resource: string; aSetIamPolicyRequest : TSetIamPolicyRequest) : TPolicy;
Const
_HTTPMethod = 'POST';
_Path = 'v1/{+resource}:setIamPolicy';
_Methodid = 'iam.projects.serviceAccounts.setIamPolicy';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['resource',resource]);
Result:=ServiceCall(_HTTPMethod,_P,'',aSetIamPolicyRequest,TPolicy) as TPolicy;
end;
Function TProjectsServiceAccountsResource.TestIamPermissions(resource: string; aTestIamPermissionsRequest : TTestIamPermissionsRequest) : TTestIamPermissionsResponse;
Const
_HTTPMethod = 'POST';
_Path = 'v1/{+resource}:testIamPermissions';
_Methodid = 'iam.projects.serviceAccounts.testIamPermissions';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['resource',resource]);
Result:=ServiceCall(_HTTPMethod,_P,'',aTestIamPermissionsRequest,TTestIamPermissionsResponse) as TTestIamPermissionsResponse;
end;
Function TProjectsServiceAccountsResource.GetKeysInstance : TProjectsServiceAccountsKeysResource;
begin
if (FKeysInstance=Nil) then
FKeysInstance:=CreateKeysResource;
Result:=FKeysInstance;
end;
Function TProjectsServiceAccountsResource.CreateKeysResource : TProjectsServiceAccountsKeysResource;
begin
Result:=CreateKeysResource(Self);
end;
Function TProjectsServiceAccountsResource.CreateKeysResource(AOwner : TComponent) : TProjectsServiceAccountsKeysResource;
begin
Result:=TProjectsServiceAccountsKeysResource.Create(AOwner);
Result.API:=Self.API;
end;
{ --------------------------------------------------------------------
TProjectsResource
--------------------------------------------------------------------}
Class Function TProjectsResource.ResourceName : String;
begin
Result:='projects';
end;
Class Function TProjectsResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TiamAPI;
end;
Function TProjectsResource.GetServiceAccountsKeysInstance : TProjectsServiceAccountsKeysResource;
begin
if (FServiceAccountsKeysInstance=Nil) then
FServiceAccountsKeysInstance:=CreateServiceAccountsKeysResource;
Result:=FServiceAccountsKeysInstance;
end;
Function TProjectsResource.CreateServiceAccountsKeysResource : TProjectsServiceAccountsKeysResource;
begin
Result:=CreateServiceAccountsKeysResource(Self);
end;
Function TProjectsResource.CreateServiceAccountsKeysResource(AOwner : TComponent) : TProjectsServiceAccountsKeysResource;
begin
Result:=TProjectsServiceAccountsKeysResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TProjectsResource.GetServiceAccountsInstance : TProjectsServiceAccountsResource;
begin
if (FServiceAccountsInstance=Nil) then
FServiceAccountsInstance:=CreateServiceAccountsResource;
Result:=FServiceAccountsInstance;
end;
Function TProjectsResource.CreateServiceAccountsResource : TProjectsServiceAccountsResource;
begin
Result:=CreateServiceAccountsResource(Self);
end;
Function TProjectsResource.CreateServiceAccountsResource(AOwner : TComponent) : TProjectsServiceAccountsResource;
begin
Result:=TProjectsServiceAccountsResource.Create(AOwner);
Result.API:=Self.API;
end;
{ --------------------------------------------------------------------
TIamAPI
--------------------------------------------------------------------}
Class Function TIamAPI.APIName : String;
begin
Result:='iam';
end;
Class Function TIamAPI.APIVersion : String;
begin
Result:='v1';
end;
Class Function TIamAPI.APIRevision : String;
begin
Result:='20160129';
end;
Class Function TIamAPI.APIID : String;
begin
Result:='iam:v1';
end;
Class Function TIamAPI.APITitle : String;
begin
Result:='Google Identity and Access Management API';
end;
Class Function TIamAPI.APIDescription : String;
begin
Result:='Manages identity and access control for Google Cloud Platform resources, including the creation of service accounts, which you can use to authenticate to Google and make API calls.';
end;
Class Function TIamAPI.APIOwnerDomain : String;
begin
Result:='google.com';
end;
Class Function TIamAPI.APIOwnerName : String;
begin
Result:='Google';
end;
Class Function TIamAPI.APIIcon16 : String;
begin
Result:='http://www.google.com/images/icons/product/search-16.gif';
end;
Class Function TIamAPI.APIIcon32 : String;
begin
Result:='http://www.google.com/images/icons/product/search-32.gif';
end;
Class Function TIamAPI.APIdocumentationLink : String;
begin
Result:='https://cloud.google.com/iam/';
end;
Class Function TIamAPI.APIrootUrl : string;
begin
Result:='https://iam.googleapis.com/';
end;
Class Function TIamAPI.APIbasePath : string;
begin
Result:='';
end;
Class Function TIamAPI.APIbaseURL : String;
begin
Result:='https://iam.googleapis.com/';
end;
Class Function TIamAPI.APIProtocol : string;
begin
Result:='rest';
end;
Class Function TIamAPI.APIservicePath : string;
begin
Result:='';
end;
Class Function TIamAPI.APIbatchPath : String;
begin
Result:='batch';
end;
Class Function TIamAPI.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 TIamAPI.APINeedsAuth : Boolean;
begin
Result:=True;
end;
Class Procedure TIamAPI.RegisterAPIResources;
begin
TListServiceAccountsResponse.RegisterObject;
TServiceAccount.RegisterObject;
TCreateServiceAccountRequest.RegisterObject;
TEmpty.RegisterObject;
TListServiceAccountKeysResponse.RegisterObject;
TServiceAccountKey.RegisterObject;
TCreateServiceAccountKeyRequest.RegisterObject;
TSignBlobRequest.RegisterObject;
TSignBlobResponse.RegisterObject;
TPolicy.RegisterObject;
TBinding.RegisterObject;
TRule.RegisterObject;
TCondition.RegisterObject;
TLogConfig.RegisterObject;
TCounterOptions.RegisterObject;
TDataAccessOptions.RegisterObject;
TCloudAuditOptions.RegisterObject;
TSetIamPolicyRequest.RegisterObject;
TTestIamPermissionsRequest.RegisterObject;
TTestIamPermissionsResponse.RegisterObject;
end;
Function TIamAPI.GetProjectsServiceAccountsKeysInstance : TProjectsServiceAccountsKeysResource;
begin
if (FProjectsServiceAccountsKeysInstance=Nil) then
FProjectsServiceAccountsKeysInstance:=CreateProjectsServiceAccountsKeysResource;
Result:=FProjectsServiceAccountsKeysInstance;
end;
Function TIamAPI.CreateProjectsServiceAccountsKeysResource : TProjectsServiceAccountsKeysResource;
begin
Result:=CreateProjectsServiceAccountsKeysResource(Self);
end;
Function TIamAPI.CreateProjectsServiceAccountsKeysResource(AOwner : TComponent) : TProjectsServiceAccountsKeysResource;
begin
Result:=TProjectsServiceAccountsKeysResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TIamAPI.GetProjectsServiceAccountsInstance : TProjectsServiceAccountsResource;
begin
if (FProjectsServiceAccountsInstance=Nil) then
FProjectsServiceAccountsInstance:=CreateProjectsServiceAccountsResource;
Result:=FProjectsServiceAccountsInstance;
end;
Function TIamAPI.CreateProjectsServiceAccountsResource : TProjectsServiceAccountsResource;
begin
Result:=CreateProjectsServiceAccountsResource(Self);
end;
Function TIamAPI.CreateProjectsServiceAccountsResource(AOwner : TComponent) : TProjectsServiceAccountsResource;
begin
Result:=TProjectsServiceAccountsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TIamAPI.GetProjectsInstance : TProjectsResource;
begin
if (FProjectsInstance=Nil) then
FProjectsInstance:=CreateProjectsResource;
Result:=FProjectsInstance;
end;
Function TIamAPI.CreateProjectsResource : TProjectsResource;
begin
Result:=CreateProjectsResource(Self);
end;
Function TIamAPI.CreateProjectsResource(AOwner : TComponent) : TProjectsResource;
begin
Result:=TProjectsResource.Create(AOwner);
Result.API:=Self.API;
end;
initialization
TIamAPI.RegisterAPI;
end.