1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015 |
- unit googletaskqueue;
- {$MODE objfpc}
- {$H+}
- interface
- uses sysutils, classes, googleservice, restbase, googlebase;
- type
-
- //Top-level schema types
- TTask = Class;
- TTaskQueue = Class;
- TTasks = Class;
- TTasks2 = Class;
- TTaskArray = Array of TTask;
- TTaskQueueArray = Array of TTaskQueue;
- TTasksArray = Array of TTasks;
- TTasks2Array = Array of TTasks2;
- //Anonymous types, using auto-generated names
- TTaskQueueTypeacl = Class;
- TTaskQueueTypestats = Class;
- TTasksTypeitemsArray = Array of TTask;
- TTasks2TypeitemsArray = Array of TTask;
-
- { --------------------------------------------------------------------
- TTask
- --------------------------------------------------------------------}
-
- TTask = Class(TGoogleBaseObject)
- Private
- FenqueueTimestamp : String;
- Fid : String;
- Fkind : String;
- FleaseTimestamp : String;
- FpayloadBase64 : String;
- FqueueName : String;
- Fretry_count : integer;
- Ftag : String;
- Protected
- //Property setters
- Procedure SetenqueueTimestamp(AIndex : Integer; const AValue : String); virtual;
- Procedure Setid(AIndex : Integer; const AValue : String); virtual;
- Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
- Procedure SetleaseTimestamp(AIndex : Integer; const AValue : String); virtual;
- Procedure SetpayloadBase64(AIndex : Integer; const AValue : String); virtual;
- Procedure SetqueueName(AIndex : Integer; const AValue : String); virtual;
- Procedure Setretry_count(AIndex : Integer; const AValue : integer); virtual;
- Procedure Settag(AIndex : Integer; const AValue : String); virtual;
- Public
- Published
- Property enqueueTimestamp : String Index 0 Read FenqueueTimestamp Write SetenqueueTimestamp;
- Property id : String Index 8 Read Fid Write Setid;
- Property kind : String Index 16 Read Fkind Write Setkind;
- Property leaseTimestamp : String Index 24 Read FleaseTimestamp Write SetleaseTimestamp;
- Property payloadBase64 : String Index 32 Read FpayloadBase64 Write SetpayloadBase64;
- Property queueName : String Index 40 Read FqueueName Write SetqueueName;
- Property retry_count : integer Index 48 Read Fretry_count Write Setretry_count;
- Property tag : String Index 56 Read Ftag Write Settag;
- end;
- TTaskClass = Class of TTask;
-
- { --------------------------------------------------------------------
- TTaskQueueTypeacl
- --------------------------------------------------------------------}
-
- TTaskQueueTypeacl = Class(TGoogleBaseObject)
- Private
- FadminEmails : TStringArray;
- FconsumerEmails : TStringArray;
- FproducerEmails : TStringArray;
- Protected
- //Property setters
- Procedure SetadminEmails(AIndex : Integer; const AValue : TStringArray); virtual;
- Procedure SetconsumerEmails(AIndex : Integer; const AValue : TStringArray); virtual;
- Procedure SetproducerEmails(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 adminEmails : TStringArray Index 0 Read FadminEmails Write SetadminEmails;
- Property consumerEmails : TStringArray Index 8 Read FconsumerEmails Write SetconsumerEmails;
- Property producerEmails : TStringArray Index 16 Read FproducerEmails Write SetproducerEmails;
- end;
- TTaskQueueTypeaclClass = Class of TTaskQueueTypeacl;
-
- { --------------------------------------------------------------------
- TTaskQueueTypestats
- --------------------------------------------------------------------}
-
- TTaskQueueTypestats = Class(TGoogleBaseObject)
- Private
- FleasedLastHour : String;
- FleasedLastMinute : String;
- FoldestTask : String;
- FtotalTasks : integer;
- Protected
- //Property setters
- Procedure SetleasedLastHour(AIndex : Integer; const AValue : String); virtual;
- Procedure SetleasedLastMinute(AIndex : Integer; const AValue : String); virtual;
- Procedure SetoldestTask(AIndex : Integer; const AValue : String); virtual;
- Procedure SettotalTasks(AIndex : Integer; const AValue : integer); virtual;
- Public
- Published
- Property leasedLastHour : String Index 0 Read FleasedLastHour Write SetleasedLastHour;
- Property leasedLastMinute : String Index 8 Read FleasedLastMinute Write SetleasedLastMinute;
- Property oldestTask : String Index 16 Read FoldestTask Write SetoldestTask;
- Property totalTasks : integer Index 24 Read FtotalTasks Write SettotalTasks;
- end;
- TTaskQueueTypestatsClass = Class of TTaskQueueTypestats;
-
- { --------------------------------------------------------------------
- TTaskQueue
- --------------------------------------------------------------------}
-
- TTaskQueue = Class(TGoogleBaseObject)
- Private
- Facl : TTaskQueueTypeacl;
- Fid : String;
- Fkind : String;
- FmaxLeases : integer;
- Fstats : TTaskQueueTypestats;
- Protected
- //Property setters
- Procedure Setacl(AIndex : Integer; const AValue : TTaskQueueTypeacl); virtual;
- Procedure Setid(AIndex : Integer; const AValue : String); virtual;
- Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
- Procedure SetmaxLeases(AIndex : Integer; const AValue : integer); virtual;
- Procedure Setstats(AIndex : Integer; const AValue : TTaskQueueTypestats); virtual;
- Public
- Published
- Property acl : TTaskQueueTypeacl Index 0 Read Facl Write Setacl;
- Property id : String Index 8 Read Fid Write Setid;
- Property kind : String Index 16 Read Fkind Write Setkind;
- Property maxLeases : integer Index 24 Read FmaxLeases Write SetmaxLeases;
- Property stats : TTaskQueueTypestats Index 32 Read Fstats Write Setstats;
- end;
- TTaskQueueClass = Class of TTaskQueue;
-
- { --------------------------------------------------------------------
- TTasks
- --------------------------------------------------------------------}
-
- TTasks = Class(TGoogleBaseObject)
- Private
- Fitems : TTasksTypeitemsArray;
- Fkind : String;
- Protected
- //Property setters
- Procedure Setitems(AIndex : Integer; const AValue : TTasksTypeitemsArray); virtual;
- Procedure Setkind(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 items : TTasksTypeitemsArray Index 0 Read Fitems Write Setitems;
- Property kind : String Index 8 Read Fkind Write Setkind;
- end;
- TTasksClass = Class of TTasks;
-
- { --------------------------------------------------------------------
- TTasks2
- --------------------------------------------------------------------}
-
- TTasks2 = Class(TGoogleBaseObject)
- Private
- Fitems : TTasks2TypeitemsArray;
- Fkind : String;
- Protected
- //Property setters
- Procedure Setitems(AIndex : Integer; const AValue : TTasks2TypeitemsArray); virtual;
- Procedure Setkind(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 items : TTasks2TypeitemsArray Index 0 Read Fitems Write Setitems;
- Property kind : String Index 8 Read Fkind Write Setkind;
- end;
- TTasks2Class = Class of TTasks2;
-
- { --------------------------------------------------------------------
- TTaskqueuesResource
- --------------------------------------------------------------------}
-
-
- //Optional query Options for TTaskqueuesResource, method Get
-
- TTaskqueuesGetOptions = Record
- getStats : boolean;
- end;
-
- TTaskqueuesResource = Class(TGoogleResource)
- Public
- Class Function ResourceName : String; override;
- Class Function DefaultAPI : TGoogleAPIClass; override;
- Function Get(project: string; taskqueue: string; AQuery : string = '') : TTaskQueue;
- Function Get(project: string; taskqueue: string; AQuery : TTaskqueuesgetOptions) : TTaskQueue;
- end;
-
-
- { --------------------------------------------------------------------
- TTasksResource
- --------------------------------------------------------------------}
-
-
- //Optional query Options for TTasksResource, method Lease
-
- TTasksLeaseOptions = Record
- groupByTag : boolean;
- leaseSecs : integer;
- numTasks : integer;
- tag : String;
- end;
-
-
- //Optional query Options for TTasksResource, method Patch
-
- TTasksPatchOptions = Record
- newLeaseSeconds : integer;
- end;
-
-
- //Optional query Options for TTasksResource, method Update
-
- TTasksUpdateOptions = Record
- newLeaseSeconds : integer;
- end;
-
- TTasksResource = Class(TGoogleResource)
- Public
- Class Function ResourceName : String; override;
- Class Function DefaultAPI : TGoogleAPIClass; override;
- Procedure Delete(project: string; task: string; taskqueue: string);
- Function Get(project: string; task: string; taskqueue: string) : TTask;
- Function Insert(project: string; taskqueue: string; aTask : TTask) : TTask;
- Function Lease(project: string; taskqueue: string; AQuery : string = '') : TTasks;
- Function Lease(project: string; taskqueue: string; AQuery : TTasksleaseOptions) : TTasks;
- Function List(project: string; taskqueue: string) : TTasks2;
- Function Patch(project: string; task: string; taskqueue: string; aTask : TTask; AQuery : string = '') : TTask;
- Function Patch(project: string; task: string; taskqueue: string; aTask : TTask; AQuery : TTaskspatchOptions) : TTask;
- Function Update(project: string; task: string; taskqueue: string; aTask : TTask; AQuery : string = '') : TTask;
- Function Update(project: string; task: string; taskqueue: string; aTask : TTask; AQuery : TTasksupdateOptions) : TTask;
- end;
-
-
- { --------------------------------------------------------------------
- TTaskqueueAPI
- --------------------------------------------------------------------}
-
- TTaskqueueAPI = Class(TGoogleAPI)
- Private
- FTaskqueuesInstance : TTaskqueuesResource;
- FTasksInstance : TTasksResource;
- Function GetTaskqueuesInstance : TTaskqueuesResource;virtual;
- Function GetTasksInstance : TTasksResource;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 CreateTaskqueuesResource(AOwner : TComponent) : TTaskqueuesResource;virtual;overload;
- Function CreateTaskqueuesResource : TTaskqueuesResource;virtual;overload;
- Function CreateTasksResource(AOwner : TComponent) : TTasksResource;virtual;overload;
- Function CreateTasksResource : TTasksResource;virtual;overload;
- //Add default on-demand instances for resources
- Property TaskqueuesResource : TTaskqueuesResource Read GetTaskqueuesInstance;
- Property TasksResource : TTasksResource Read GetTasksInstance;
- end;
- implementation
- { --------------------------------------------------------------------
- TTask
- --------------------------------------------------------------------}
- Procedure TTask.SetenqueueTimestamp(AIndex : Integer; const AValue : String);
- begin
- If (FenqueueTimestamp=AValue) then exit;
- FenqueueTimestamp:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTask.Setid(AIndex : Integer; const AValue : String);
- begin
- If (Fid=AValue) then exit;
- Fid:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTask.Setkind(AIndex : Integer; const AValue : String);
- begin
- If (Fkind=AValue) then exit;
- Fkind:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTask.SetleaseTimestamp(AIndex : Integer; const AValue : String);
- begin
- If (FleaseTimestamp=AValue) then exit;
- FleaseTimestamp:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTask.SetpayloadBase64(AIndex : Integer; const AValue : String);
- begin
- If (FpayloadBase64=AValue) then exit;
- FpayloadBase64:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTask.SetqueueName(AIndex : Integer; const AValue : String);
- begin
- If (FqueueName=AValue) then exit;
- FqueueName:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTask.Setretry_count(AIndex : Integer; const AValue : integer);
- begin
- If (Fretry_count=AValue) then exit;
- Fretry_count:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTask.Settag(AIndex : Integer; const AValue : String);
- begin
- If (Ftag=AValue) then exit;
- Ftag:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- { --------------------------------------------------------------------
- TTaskQueueTypeacl
- --------------------------------------------------------------------}
- Procedure TTaskQueueTypeacl.SetadminEmails(AIndex : Integer; const AValue : TStringArray);
- begin
- If (FadminEmails=AValue) then exit;
- FadminEmails:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTaskQueueTypeacl.SetconsumerEmails(AIndex : Integer; const AValue : TStringArray);
- begin
- If (FconsumerEmails=AValue) then exit;
- FconsumerEmails:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTaskQueueTypeacl.SetproducerEmails(AIndex : Integer; const AValue : TStringArray);
- begin
- If (FproducerEmails=AValue) then exit;
- FproducerEmails:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- //2.6.4. bug workaround
- {$IFDEF VER2_6}
- Procedure TTaskQueueTypeacl.SetArrayLength(Const AName : String; ALength : Longint);
- begin
- Case AName of
- 'adminemails' : SetLength(FadminEmails,ALength);
- 'consumeremails' : SetLength(FconsumerEmails,ALength);
- 'produceremails' : SetLength(FproducerEmails,ALength);
- else
- Inherited SetArrayLength(AName,ALength);
- end;
- end;
- {$ENDIF VER2_6}
- { --------------------------------------------------------------------
- TTaskQueueTypestats
- --------------------------------------------------------------------}
- Procedure TTaskQueueTypestats.SetleasedLastHour(AIndex : Integer; const AValue : String);
- begin
- If (FleasedLastHour=AValue) then exit;
- FleasedLastHour:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTaskQueueTypestats.SetleasedLastMinute(AIndex : Integer; const AValue : String);
- begin
- If (FleasedLastMinute=AValue) then exit;
- FleasedLastMinute:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTaskQueueTypestats.SetoldestTask(AIndex : Integer; const AValue : String);
- begin
- If (FoldestTask=AValue) then exit;
- FoldestTask:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTaskQueueTypestats.SettotalTasks(AIndex : Integer; const AValue : integer);
- begin
- If (FtotalTasks=AValue) then exit;
- FtotalTasks:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- { --------------------------------------------------------------------
- TTaskQueue
- --------------------------------------------------------------------}
- Procedure TTaskQueue.Setacl(AIndex : Integer; const AValue : TTaskQueueTypeacl);
- begin
- If (Facl=AValue) then exit;
- Facl:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTaskQueue.Setid(AIndex : Integer; const AValue : String);
- begin
- If (Fid=AValue) then exit;
- Fid:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTaskQueue.Setkind(AIndex : Integer; const AValue : String);
- begin
- If (Fkind=AValue) then exit;
- Fkind:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTaskQueue.SetmaxLeases(AIndex : Integer; const AValue : integer);
- begin
- If (FmaxLeases=AValue) then exit;
- FmaxLeases:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTaskQueue.Setstats(AIndex : Integer; const AValue : TTaskQueueTypestats);
- begin
- If (Fstats=AValue) then exit;
- Fstats:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- { --------------------------------------------------------------------
- TTasks
- --------------------------------------------------------------------}
- Procedure TTasks.Setitems(AIndex : Integer; const AValue : TTasksTypeitemsArray);
- begin
- If (Fitems=AValue) then exit;
- Fitems:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTasks.Setkind(AIndex : Integer; const AValue : String);
- begin
- If (Fkind=AValue) then exit;
- Fkind:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- //2.6.4. bug workaround
- {$IFDEF VER2_6}
- Procedure TTasks.SetArrayLength(Const AName : String; ALength : Longint);
- begin
- Case AName of
- 'items' : SetLength(Fitems,ALength);
- else
- Inherited SetArrayLength(AName,ALength);
- end;
- end;
- {$ENDIF VER2_6}
- { --------------------------------------------------------------------
- TTasks2
- --------------------------------------------------------------------}
- Procedure TTasks2.Setitems(AIndex : Integer; const AValue : TTasks2TypeitemsArray);
- begin
- If (Fitems=AValue) then exit;
- Fitems:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- Procedure TTasks2.Setkind(AIndex : Integer; const AValue : String);
- begin
- If (Fkind=AValue) then exit;
- Fkind:=AValue;
- MarkPropertyChanged(AIndex);
- end;
- //2.6.4. bug workaround
- {$IFDEF VER2_6}
- Procedure TTasks2.SetArrayLength(Const AName : String; ALength : Longint);
- begin
- Case AName of
- 'items' : SetLength(Fitems,ALength);
- else
- Inherited SetArrayLength(AName,ALength);
- end;
- end;
- {$ENDIF VER2_6}
- { --------------------------------------------------------------------
- TTaskqueuesResource
- --------------------------------------------------------------------}
- Class Function TTaskqueuesResource.ResourceName : String;
- begin
- Result:='taskqueues';
- end;
- Class Function TTaskqueuesResource.DefaultAPI : TGoogleAPIClass;
- begin
- Result:=TtaskqueueAPI;
- end;
- Function TTaskqueuesResource.Get(project: string; taskqueue: string; AQuery : string = '') : TTaskQueue;
- Const
- _HTTPMethod = 'GET';
- _Path = '{project}/taskqueues/{taskqueue}';
- _Methodid = 'taskqueue.taskqueues.get';
- Var
- _P : String;
- begin
- _P:=SubstitutePath(_Path,['project',project,'taskqueue',taskqueue]);
- Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TTaskQueue) as TTaskQueue;
- end;
- Function TTaskqueuesResource.Get(project: string; taskqueue: string; AQuery : TTaskqueuesgetOptions) : TTaskQueue;
- Var
- _Q : String;
- begin
- _Q:='';
- AddToQuery(_Q,'getStats',AQuery.getStats);
- Result:=Get(project,taskqueue,_Q);
- end;
- { --------------------------------------------------------------------
- TTasksResource
- --------------------------------------------------------------------}
- Class Function TTasksResource.ResourceName : String;
- begin
- Result:='tasks';
- end;
- Class Function TTasksResource.DefaultAPI : TGoogleAPIClass;
- begin
- Result:=TtaskqueueAPI;
- end;
- Procedure TTasksResource.Delete(project: string; task: string; taskqueue: string);
- Const
- _HTTPMethod = 'DELETE';
- _Path = '{project}/taskqueues/{taskqueue}/tasks/{task}';
- _Methodid = 'taskqueue.tasks.delete';
- Var
- _P : String;
- begin
- _P:=SubstitutePath(_Path,['project',project,'task',task,'taskqueue',taskqueue]);
- ServiceCall(_HTTPMethod,_P,'',Nil,Nil);
- end;
- Function TTasksResource.Get(project: string; task: string; taskqueue: string) : TTask;
- Const
- _HTTPMethod = 'GET';
- _Path = '{project}/taskqueues/{taskqueue}/tasks/{task}';
- _Methodid = 'taskqueue.tasks.get';
- Var
- _P : String;
- begin
- _P:=SubstitutePath(_Path,['project',project,'task',task,'taskqueue',taskqueue]);
- Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TTask) as TTask;
- end;
- Function TTasksResource.Insert(project: string; taskqueue: string; aTask : TTask) : TTask;
- Const
- _HTTPMethod = 'POST';
- _Path = '{project}/taskqueues/{taskqueue}/tasks';
- _Methodid = 'taskqueue.tasks.insert';
- Var
- _P : String;
- begin
- _P:=SubstitutePath(_Path,['project',project,'taskqueue',taskqueue]);
- Result:=ServiceCall(_HTTPMethod,_P,'',aTask,TTask) as TTask;
- end;
- Function TTasksResource.Lease(project: string; taskqueue: string; AQuery : string = '') : TTasks;
- Const
- _HTTPMethod = 'POST';
- _Path = '{project}/taskqueues/{taskqueue}/tasks/lease';
- _Methodid = 'taskqueue.tasks.lease';
- Var
- _P : String;
- begin
- _P:=SubstitutePath(_Path,['project',project,'taskqueue',taskqueue]);
- Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TTasks) as TTasks;
- end;
- Function TTasksResource.Lease(project: string; taskqueue: string; AQuery : TTasksleaseOptions) : TTasks;
- Var
- _Q : String;
- begin
- _Q:='';
- AddToQuery(_Q,'groupByTag',AQuery.groupByTag);
- AddToQuery(_Q,'leaseSecs',AQuery.leaseSecs);
- AddToQuery(_Q,'numTasks',AQuery.numTasks);
- AddToQuery(_Q,'tag',AQuery.tag);
- Result:=Lease(project,taskqueue,_Q);
- end;
- Function TTasksResource.List(project: string; taskqueue: string) : TTasks2;
- Const
- _HTTPMethod = 'GET';
- _Path = '{project}/taskqueues/{taskqueue}/tasks';
- _Methodid = 'taskqueue.tasks.list';
- Var
- _P : String;
- begin
- _P:=SubstitutePath(_Path,['project',project,'taskqueue',taskqueue]);
- Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TTasks2) as TTasks2;
- end;
- Function TTasksResource.Patch(project: string; task: string; taskqueue: string; aTask : TTask; AQuery : string = '') : TTask;
- Const
- _HTTPMethod = 'PATCH';
- _Path = '{project}/taskqueues/{taskqueue}/tasks/{task}';
- _Methodid = 'taskqueue.tasks.patch';
- Var
- _P : String;
- begin
- _P:=SubstitutePath(_Path,['project',project,'task',task,'taskqueue',taskqueue]);
- Result:=ServiceCall(_HTTPMethod,_P,AQuery,aTask,TTask) as TTask;
- end;
- Function TTasksResource.Patch(project: string; task: string; taskqueue: string; aTask : TTask; AQuery : TTaskspatchOptions) : TTask;
- Var
- _Q : String;
- begin
- _Q:='';
- AddToQuery(_Q,'newLeaseSeconds',AQuery.newLeaseSeconds);
- Result:=Patch(project,task,taskqueue,aTask,_Q);
- end;
- Function TTasksResource.Update(project: string; task: string; taskqueue: string; aTask : TTask; AQuery : string = '') : TTask;
- Const
- _HTTPMethod = 'POST';
- _Path = '{project}/taskqueues/{taskqueue}/tasks/{task}';
- _Methodid = 'taskqueue.tasks.update';
- Var
- _P : String;
- begin
- _P:=SubstitutePath(_Path,['project',project,'task',task,'taskqueue',taskqueue]);
- Result:=ServiceCall(_HTTPMethod,_P,AQuery,aTask,TTask) as TTask;
- end;
- Function TTasksResource.Update(project: string; task: string; taskqueue: string; aTask : TTask; AQuery : TTasksupdateOptions) : TTask;
- Var
- _Q : String;
- begin
- _Q:='';
- AddToQuery(_Q,'newLeaseSeconds',AQuery.newLeaseSeconds);
- Result:=Update(project,task,taskqueue,aTask,_Q);
- end;
- { --------------------------------------------------------------------
- TTaskqueueAPI
- --------------------------------------------------------------------}
- Class Function TTaskqueueAPI.APIName : String;
- begin
- Result:='taskqueue';
- end;
- Class Function TTaskqueueAPI.APIVersion : String;
- begin
- Result:='v1beta2';
- end;
- Class Function TTaskqueueAPI.APIRevision : String;
- begin
- Result:='20160428';
- end;
- Class Function TTaskqueueAPI.APIID : String;
- begin
- Result:='taskqueue:v1beta2';
- end;
- Class Function TTaskqueueAPI.APITitle : String;
- begin
- Result:='TaskQueue API';
- end;
- Class Function TTaskqueueAPI.APIDescription : String;
- begin
- Result:='Accesses a Google App Engine Pull Task Queue over REST.';
- end;
- Class Function TTaskqueueAPI.APIOwnerDomain : String;
- begin
- Result:='google.com';
- end;
- Class Function TTaskqueueAPI.APIOwnerName : String;
- begin
- Result:='Google';
- end;
- Class Function TTaskqueueAPI.APIIcon16 : String;
- begin
- Result:='https://www.google.com/images/icons/product/app_engine-16.png';
- end;
- Class Function TTaskqueueAPI.APIIcon32 : String;
- begin
- Result:='https://www.google.com/images/icons/product/app_engine-32.png';
- end;
- Class Function TTaskqueueAPI.APIdocumentationLink : String;
- begin
- Result:='https://developers.google.com/appengine/docs/python/taskqueue/rest';
- end;
- Class Function TTaskqueueAPI.APIrootUrl : string;
- begin
- Result:='https://www.googleapis.com/';
- end;
- Class Function TTaskqueueAPI.APIbasePath : string;
- begin
- Result:='/taskqueue/v1beta2/projects/';
- end;
- Class Function TTaskqueueAPI.APIbaseURL : String;
- begin
- Result:='https://www.googleapis.com/taskqueue/v1beta2/projects/';
- end;
- Class Function TTaskqueueAPI.APIProtocol : string;
- begin
- Result:='rest';
- end;
- Class Function TTaskqueueAPI.APIservicePath : string;
- begin
- Result:='taskqueue/v1beta2/projects/';
- end;
- Class Function TTaskqueueAPI.APIbatchPath : String;
- begin
- Result:='batch';
- end;
- Class Function TTaskqueueAPI.APIAuthScopes : TScopeInfoArray;
- begin
- SetLength(Result,2);
- Result[0].Name:='https://www.googleapis.com/auth/taskqueue';
- Result[0].Description:='Manage your Tasks and Taskqueues';
- Result[1].Name:='https://www.googleapis.com/auth/taskqueue.consumer';
- Result[1].Description:='Consume Tasks from your Taskqueues';
-
- end;
- Class Function TTaskqueueAPI.APINeedsAuth : Boolean;
- begin
- Result:=True;
- end;
- Class Procedure TTaskqueueAPI.RegisterAPIResources;
- begin
- TTask.RegisterObject;
- TTaskQueueTypeacl.RegisterObject;
- TTaskQueueTypestats.RegisterObject;
- TTaskQueue.RegisterObject;
- TTasks.RegisterObject;
- TTasks2.RegisterObject;
- end;
- Function TTaskqueueAPI.GetTaskqueuesInstance : TTaskqueuesResource;
- begin
- if (FTaskqueuesInstance=Nil) then
- FTaskqueuesInstance:=CreateTaskqueuesResource;
- Result:=FTaskqueuesInstance;
- end;
- Function TTaskqueueAPI.CreateTaskqueuesResource : TTaskqueuesResource;
- begin
- Result:=CreateTaskqueuesResource(Self);
- end;
- Function TTaskqueueAPI.CreateTaskqueuesResource(AOwner : TComponent) : TTaskqueuesResource;
- begin
- Result:=TTaskqueuesResource.Create(AOwner);
- Result.API:=Self.API;
- end;
- Function TTaskqueueAPI.GetTasksInstance : TTasksResource;
- begin
- if (FTasksInstance=Nil) then
- FTasksInstance:=CreateTasksResource;
- Result:=FTasksInstance;
- end;
- Function TTaskqueueAPI.CreateTasksResource : TTasksResource;
- begin
- Result:=CreateTasksResource(Self);
- end;
- Function TTaskqueueAPI.CreateTasksResource(AOwner : TComponent) : TTasksResource;
- begin
- Result:=TTasksResource.Create(AOwner);
- Result.API:=Self.API;
- end;
- initialization
- TTaskqueueAPI.RegisterAPI;
- end.
|