Repository URL to install this package:
|
Version:
3.2.0 ▾
|
unit googlecloudlatencytest;
{$MODE objfpc}
{$H+}
interface
uses sysutils, classes, googleservice, restbase, googlebase;
type
//Top-level schema types
TAggregatedStats = Class;
TAggregatedStatsReply = Class;
TDoubleValue = Class;
TIntValue = Class;
TStats = Class;
TStatsReply = Class;
TStringValue = Class;
TAggregatedStatsArray = Array of TAggregatedStats;
TAggregatedStatsReplyArray = Array of TAggregatedStatsReply;
TDoubleValueArray = Array of TDoubleValue;
TIntValueArray = Array of TIntValue;
TStatsArray = Array of TStats;
TStatsReplyArray = Array of TStatsReply;
TStringValueArray = Array of TStringValue;
//Anonymous types, using auto-generated names
TAggregatedStatsTypestatsArray = Array of TStats;
TStatsTypedoubleValuesArray = Array of TDoubleValue;
TStatsTypeintValuesArray = Array of TIntValue;
TStatsTypestringValuesArray = Array of TStringValue;
{ --------------------------------------------------------------------
TAggregatedStats
--------------------------------------------------------------------}
TAggregatedStats = Class(TGoogleBaseObject)
Private
Fstats : TAggregatedStatsTypestatsArray;
Protected
//Property setters
Procedure Setstats(AIndex : Integer; const AValue : TAggregatedStatsTypestatsArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property stats : TAggregatedStatsTypestatsArray Index 0 Read Fstats Write Setstats;
end;
TAggregatedStatsClass = Class of TAggregatedStats;
{ --------------------------------------------------------------------
TAggregatedStatsReply
--------------------------------------------------------------------}
TAggregatedStatsReply = Class(TGoogleBaseObject)
Private
FtestValue : String;
Protected
//Property setters
Procedure SettestValue(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property testValue : String Index 0 Read FtestValue Write SettestValue;
end;
TAggregatedStatsReplyClass = Class of TAggregatedStatsReply;
{ --------------------------------------------------------------------
TDoubleValue
--------------------------------------------------------------------}
TDoubleValue = Class(TGoogleBaseObject)
Private
F_label : String;
Fvalue : integer;
Protected
Class Function ExportPropertyName(Const AName : String) : string; override;
//Property setters
Procedure Set_label(AIndex : Integer; const AValue : String); virtual;
Procedure Setvalue(AIndex : Integer; const AValue : integer); virtual;
Public
Published
Property _label : String Index 0 Read F_label Write Set_label;
Property value : integer Index 8 Read Fvalue Write Setvalue;
end;
TDoubleValueClass = Class of TDoubleValue;
{ --------------------------------------------------------------------
TIntValue
--------------------------------------------------------------------}
TIntValue = Class(TGoogleBaseObject)
Private
F_label : String;
Fvalue : String;
Protected
Class Function ExportPropertyName(Const AName : String) : string; override;
//Property setters
Procedure Set_label(AIndex : Integer; const AValue : String); virtual;
Procedure Setvalue(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property _label : String Index 0 Read F_label Write Set_label;
Property value : String Index 8 Read Fvalue Write Setvalue;
end;
TIntValueClass = Class of TIntValue;
{ --------------------------------------------------------------------
TStats
--------------------------------------------------------------------}
TStats = Class(TGoogleBaseObject)
Private
FdoubleValues : TStatsTypedoubleValuesArray;
FintValues : TStatsTypeintValuesArray;
FstringValues : TStatsTypestringValuesArray;
Ftime : double;
Protected
//Property setters
Procedure SetdoubleValues(AIndex : Integer; const AValue : TStatsTypedoubleValuesArray); virtual;
Procedure SetintValues(AIndex : Integer; const AValue : TStatsTypeintValuesArray); virtual;
Procedure SetstringValues(AIndex : Integer; const AValue : TStatsTypestringValuesArray); virtual;
Procedure Settime(AIndex : Integer; const AValue : double); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property doubleValues : TStatsTypedoubleValuesArray Index 0 Read FdoubleValues Write SetdoubleValues;
Property intValues : TStatsTypeintValuesArray Index 8 Read FintValues Write SetintValues;
Property stringValues : TStatsTypestringValuesArray Index 16 Read FstringValues Write SetstringValues;
Property time : double Index 24 Read Ftime Write Settime;
end;
TStatsClass = Class of TStats;
{ --------------------------------------------------------------------
TStatsReply
--------------------------------------------------------------------}
TStatsReply = Class(TGoogleBaseObject)
Private
FtestValue : String;
Protected
//Property setters
Procedure SettestValue(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property testValue : String Index 0 Read FtestValue Write SettestValue;
end;
TStatsReplyClass = Class of TStatsReply;
{ --------------------------------------------------------------------
TStringValue
--------------------------------------------------------------------}
TStringValue = Class(TGoogleBaseObject)
Private
F_label : String;
Fvalue : String;
Protected
Class Function ExportPropertyName(Const AName : String) : string; override;
//Property setters
Procedure Set_label(AIndex : Integer; const AValue : String); virtual;
Procedure Setvalue(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property _label : String Index 0 Read F_label Write Set_label;
Property value : String Index 8 Read Fvalue Write Setvalue;
end;
TStringValueClass = Class of TStringValue;
{ --------------------------------------------------------------------
TStatscollectionResource
--------------------------------------------------------------------}
TStatscollectionResource = Class(TGoogleResource)
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function Updateaggregatedstats(aAggregatedStats : TAggregatedStats) : TAggregatedStatsReply;
Function Updatestats(aStats : TStats) : TStatsReply;
end;
{ --------------------------------------------------------------------
TCloudlatencytestAPI
--------------------------------------------------------------------}
TCloudlatencytestAPI = Class(TGoogleAPI)
Private
FStatscollectionInstance : TStatscollectionResource;
Function GetStatscollectionInstance : TStatscollectionResource;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 CreateStatscollectionResource(AOwner : TComponent) : TStatscollectionResource;virtual;overload;
Function CreateStatscollectionResource : TStatscollectionResource;virtual;overload;
//Add default on-demand instances for resources
Property StatscollectionResource : TStatscollectionResource Read GetStatscollectionInstance;
end;
implementation
{ --------------------------------------------------------------------
TAggregatedStats
--------------------------------------------------------------------}
Procedure TAggregatedStats.Setstats(AIndex : Integer; const AValue : TAggregatedStatsTypestatsArray);
begin
If (Fstats=AValue) then exit;
Fstats:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TAggregatedStats.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'stats' : SetLength(Fstats,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TAggregatedStatsReply
--------------------------------------------------------------------}
Procedure TAggregatedStatsReply.SettestValue(AIndex : Integer; const AValue : String);
begin
If (FtestValue=AValue) then exit;
FtestValue:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TDoubleValue
--------------------------------------------------------------------}
Procedure TDoubleValue.Set_label(AIndex : Integer; const AValue : String);
begin
If (F_label=AValue) then exit;
F_label:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TDoubleValue.Setvalue(AIndex : Integer; const AValue : integer);
begin
If (Fvalue=AValue) then exit;
Fvalue:=AValue;
MarkPropertyChanged(AIndex);
end;
Class Function TDoubleValue.ExportPropertyName(Const AName : String) :String;
begin
Case AName of
'_label' : Result:='label';
else
Result:=Inherited ExportPropertyName(AName);
end;
end;
{ --------------------------------------------------------------------
TIntValue
--------------------------------------------------------------------}
Procedure TIntValue.Set_label(AIndex : Integer; const AValue : String);
begin
If (F_label=AValue) then exit;
F_label:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TIntValue.Setvalue(AIndex : Integer; const AValue : String);
begin
If (Fvalue=AValue) then exit;
Fvalue:=AValue;
MarkPropertyChanged(AIndex);
end;
Class Function TIntValue.ExportPropertyName(Const AName : String) :String;
begin
Case AName of
'_label' : Result:='label';
else
Result:=Inherited ExportPropertyName(AName);
end;
end;
{ --------------------------------------------------------------------
TStats
--------------------------------------------------------------------}
Procedure TStats.SetdoubleValues(AIndex : Integer; const AValue : TStatsTypedoubleValuesArray);
begin
If (FdoubleValues=AValue) then exit;
FdoubleValues:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TStats.SetintValues(AIndex : Integer; const AValue : TStatsTypeintValuesArray);
begin
If (FintValues=AValue) then exit;
FintValues:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TStats.SetstringValues(AIndex : Integer; const AValue : TStatsTypestringValuesArray);
begin
If (FstringValues=AValue) then exit;
FstringValues:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TStats.Settime(AIndex : Integer; const AValue : double);
begin
If (Ftime=AValue) then exit;
Ftime:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TStats.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'doublevalues' : SetLength(FdoubleValues,ALength);
'intvalues' : SetLength(FintValues,ALength);
'stringvalues' : SetLength(FstringValues,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TStatsReply
--------------------------------------------------------------------}
Procedure TStatsReply.SettestValue(AIndex : Integer; const AValue : String);
begin
If (FtestValue=AValue) then exit;
FtestValue:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TStringValue
--------------------------------------------------------------------}
Procedure TStringValue.Set_label(AIndex : Integer; const AValue : String);
begin
If (F_label=AValue) then exit;
F_label:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TStringValue.Setvalue(AIndex : Integer; const AValue : String);
begin
If (Fvalue=AValue) then exit;
Fvalue:=AValue;
MarkPropertyChanged(AIndex);
end;
Class Function TStringValue.ExportPropertyName(Const AName : String) :String;
begin
Case AName of
'_label' : Result:='label';
else
Result:=Inherited ExportPropertyName(AName);
end;
end;
{ --------------------------------------------------------------------
TStatscollectionResource
--------------------------------------------------------------------}
Class Function TStatscollectionResource.ResourceName : String;
begin
Result:='statscollection';
end;
Class Function TStatscollectionResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TcloudlatencytestAPI;
end;
Function TStatscollectionResource.Updateaggregatedstats(aAggregatedStats : TAggregatedStats) : TAggregatedStatsReply;
Const
_HTTPMethod = 'POST';
_Path = 'updateaggregatedstats';
_Methodid = 'cloudlatencytest.statscollection.updateaggregatedstats';
begin
Result:=ServiceCall(_HTTPMethod,_Path,'',aAggregatedStats,TAggregatedStatsReply) as TAggregatedStatsReply;
end;
Function TStatscollectionResource.Updatestats(aStats : TStats) : TStatsReply;
Const
_HTTPMethod = 'POST';
_Path = 'updatestats';
_Methodid = 'cloudlatencytest.statscollection.updatestats';
begin
Result:=ServiceCall(_HTTPMethod,_Path,'',aStats,TStatsReply) as TStatsReply;
end;
{ --------------------------------------------------------------------
TCloudlatencytestAPI
--------------------------------------------------------------------}
Class Function TCloudlatencytestAPI.APIName : String;
begin
Result:='cloudlatencytest';
end;
Class Function TCloudlatencytestAPI.APIVersion : String;
begin
Result:='v2';
end;
Class Function TCloudlatencytestAPI.APIRevision : String;
begin
Result:='20160309';
end;
Class Function TCloudlatencytestAPI.APIID : String;
begin
Result:='cloudlatencytest:v2';
end;
Class Function TCloudlatencytestAPI.APITitle : String;
begin
Result:='Google Cloud Network Performance Monitoring API';
end;
Class Function TCloudlatencytestAPI.APIDescription : String;
begin
Result:='Reports latency data.';
end;
Class Function TCloudlatencytestAPI.APIOwnerDomain : String;
begin
Result:='google.com';
end;
Class Function TCloudlatencytestAPI.APIOwnerName : String;
begin
Result:='Google';
end;
Class Function TCloudlatencytestAPI.APIIcon16 : String;
begin
Result:='http://www.google.com/images/icons/product/search-16.gif';
end;
Class Function TCloudlatencytestAPI.APIIcon32 : String;
begin
Result:='http://www.google.com/images/icons/product/search-32.gif';
end;
Class Function TCloudlatencytestAPI.APIdocumentationLink : String;
begin
Result:='';
end;
Class Function TCloudlatencytestAPI.APIrootUrl : string;
begin
Result:='https://cloudlatencytest-pa.googleapis.com/';
end;
Class Function TCloudlatencytestAPI.APIbasePath : string;
begin
Result:='/v2/statscollection/';
end;
Class Function TCloudlatencytestAPI.APIbaseURL : String;
begin
Result:='https://cloudlatencytest-pa.googleapis.com/v2/statscollection/';
end;
Class Function TCloudlatencytestAPI.APIProtocol : string;
begin
Result:='rest';
end;
Class Function TCloudlatencytestAPI.APIservicePath : string;
begin
Result:='v2/statscollection/';
end;
Class Function TCloudlatencytestAPI.APIbatchPath : String;
begin
Result:='batch';
end;
Class Function TCloudlatencytestAPI.APIAuthScopes : TScopeInfoArray;
begin
SetLength(Result,1);
Result[0].Name:='https://www.googleapis.com/auth/monitoring.readonly';
Result[0].Description:='View monitoring data for all of your Google Cloud and API projects';
end;
Class Function TCloudlatencytestAPI.APINeedsAuth : Boolean;
begin
Result:=True;
end;
Class Procedure TCloudlatencytestAPI.RegisterAPIResources;
begin
TAggregatedStats.RegisterObject;
TAggregatedStatsReply.RegisterObject;
TDoubleValue.RegisterObject;
TIntValue.RegisterObject;
TStats.RegisterObject;
TStatsReply.RegisterObject;
TStringValue.RegisterObject;
end;
Function TCloudlatencytestAPI.GetStatscollectionInstance : TStatscollectionResource;
begin
if (FStatscollectionInstance=Nil) then
FStatscollectionInstance:=CreateStatscollectionResource;
Result:=FStatscollectionInstance;
end;
Function TCloudlatencytestAPI.CreateStatscollectionResource : TStatscollectionResource;
begin
Result:=CreateStatscollectionResource(Self);
end;
Function TCloudlatencytestAPI.CreateStatscollectionResource(AOwner : TComponent) : TStatscollectionResource;
begin
Result:=TStatscollectionResource.Create(AOwner);
Result.API:=Self.API;
end;
initialization
TCloudlatencytestAPI.RegisterAPI;
end.