Repository URL to install this package:
|
Version:
3.2.0 ▾
|
unit googleclouderrorreporting;
{$MODE objfpc}
{$H+}
interface
uses sysutils, classes, googleservice, restbase, googlebase;
type
//Top-level schema types
TSourceLocation = Class;
TErrorGroupStats = Class;
TErrorContext = Class;
TServiceContext = Class;
TErrorGroup = Class;
TTrackingIssue = Class;
TDeleteEventsResponse = Class;
TErrorEvent = Class;
TListEventsResponse = Class;
TTimedCount = Class;
THttpRequestContext = Class;
TListGroupStatsResponse = Class;
TSourceLocationArray = Array of TSourceLocation;
TErrorGroupStatsArray = Array of TErrorGroupStats;
TErrorContextArray = Array of TErrorContext;
TServiceContextArray = Array of TServiceContext;
TErrorGroupArray = Array of TErrorGroup;
TTrackingIssueArray = Array of TTrackingIssue;
TDeleteEventsResponseArray = Array of TDeleteEventsResponse;
TErrorEventArray = Array of TErrorEvent;
TListEventsResponseArray = Array of TListEventsResponse;
TTimedCountArray = Array of TTimedCount;
THttpRequestContextArray = Array of THttpRequestContext;
TListGroupStatsResponseArray = Array of TListGroupStatsResponse;
//Anonymous types, using auto-generated names
TErrorGroupStatsTypeaffectedServicesArray = Array of TServiceContext;
TErrorGroupStatsTypetimedCountsArray = Array of TTimedCount;
TErrorGroupTypetrackingIssuesArray = Array of TTrackingIssue;
TListEventsResponseTypeerrorEventsArray = Array of TErrorEvent;
TListGroupStatsResponseTypeerrorGroupStatsArray = Array of TErrorGroupStats;
{ --------------------------------------------------------------------
TSourceLocation
--------------------------------------------------------------------}
TSourceLocation = Class(TGoogleBaseObject)
Private
FfilePath : String;
FfunctionName : String;
FlineNumber : integer;
Protected
//Property setters
Procedure SetfilePath(AIndex : Integer; const AValue : String); virtual;
Procedure SetfunctionName(AIndex : Integer; const AValue : String); virtual;
Procedure SetlineNumber(AIndex : Integer; const AValue : integer); virtual;
Public
Published
Property filePath : String Index 0 Read FfilePath Write SetfilePath;
Property functionName : String Index 8 Read FfunctionName Write SetfunctionName;
Property lineNumber : integer Index 16 Read FlineNumber Write SetlineNumber;
end;
TSourceLocationClass = Class of TSourceLocation;
{ --------------------------------------------------------------------
TErrorGroupStats
--------------------------------------------------------------------}
TErrorGroupStats = Class(TGoogleBaseObject)
Private
Frepresentative : TErrorEvent;
FnumAffectedServices : integer;
FaffectedUsersCount : String;
Fcount : String;
FfirstSeenTime : String;
FlastSeenTime : String;
Fgroup : TErrorGroup;
FaffectedServices : TErrorGroupStatsTypeaffectedServicesArray;
FtimedCounts : TErrorGroupStatsTypetimedCountsArray;
Protected
//Property setters
Procedure Setrepresentative(AIndex : Integer; const AValue : TErrorEvent); virtual;
Procedure SetnumAffectedServices(AIndex : Integer; const AValue : integer); virtual;
Procedure SetaffectedUsersCount(AIndex : Integer; const AValue : String); virtual;
Procedure Setcount(AIndex : Integer; const AValue : String); virtual;
Procedure SetfirstSeenTime(AIndex : Integer; const AValue : String); virtual;
Procedure SetlastSeenTime(AIndex : Integer; const AValue : String); virtual;
Procedure Setgroup(AIndex : Integer; const AValue : TErrorGroup); virtual;
Procedure SetaffectedServices(AIndex : Integer; const AValue : TErrorGroupStatsTypeaffectedServicesArray); virtual;
Procedure SettimedCounts(AIndex : Integer; const AValue : TErrorGroupStatsTypetimedCountsArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property representative : TErrorEvent Index 0 Read Frepresentative Write Setrepresentative;
Property numAffectedServices : integer Index 8 Read FnumAffectedServices Write SetnumAffectedServices;
Property affectedUsersCount : String Index 16 Read FaffectedUsersCount Write SetaffectedUsersCount;
Property count : String Index 24 Read Fcount Write Setcount;
Property firstSeenTime : String Index 32 Read FfirstSeenTime Write SetfirstSeenTime;
Property lastSeenTime : String Index 40 Read FlastSeenTime Write SetlastSeenTime;
Property group : TErrorGroup Index 48 Read Fgroup Write Setgroup;
Property affectedServices : TErrorGroupStatsTypeaffectedServicesArray Index 56 Read FaffectedServices Write SetaffectedServices;
Property timedCounts : TErrorGroupStatsTypetimedCountsArray Index 64 Read FtimedCounts Write SettimedCounts;
end;
TErrorGroupStatsClass = Class of TErrorGroupStats;
{ --------------------------------------------------------------------
TErrorContext
--------------------------------------------------------------------}
TErrorContext = Class(TGoogleBaseObject)
Private
FhttpRequest : THttpRequestContext;
FreportLocation : TSourceLocation;
Fuser : String;
Protected
//Property setters
Procedure SethttpRequest(AIndex : Integer; const AValue : THttpRequestContext); virtual;
Procedure SetreportLocation(AIndex : Integer; const AValue : TSourceLocation); virtual;
Procedure Setuser(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property httpRequest : THttpRequestContext Index 0 Read FhttpRequest Write SethttpRequest;
Property reportLocation : TSourceLocation Index 8 Read FreportLocation Write SetreportLocation;
Property user : String Index 16 Read Fuser Write Setuser;
end;
TErrorContextClass = Class of TErrorContext;
{ --------------------------------------------------------------------
TServiceContext
--------------------------------------------------------------------}
TServiceContext = Class(TGoogleBaseObject)
Private
Fservice : String;
Fversion : String;
Protected
//Property setters
Procedure Setservice(AIndex : Integer; const AValue : String); virtual;
Procedure Setversion(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property service : String Index 0 Read Fservice Write Setservice;
Property version : String Index 8 Read Fversion Write Setversion;
end;
TServiceContextClass = Class of TServiceContext;
{ --------------------------------------------------------------------
TErrorGroup
--------------------------------------------------------------------}
TErrorGroup = Class(TGoogleBaseObject)
Private
FgroupId : String;
Fname : String;
FtrackingIssues : TErrorGroupTypetrackingIssuesArray;
Protected
//Property setters
Procedure SetgroupId(AIndex : Integer; const AValue : String); virtual;
Procedure Setname(AIndex : Integer; const AValue : String); virtual;
Procedure SettrackingIssues(AIndex : Integer; const AValue : TErrorGroupTypetrackingIssuesArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property groupId : String Index 0 Read FgroupId Write SetgroupId;
Property name : String Index 8 Read Fname Write Setname;
Property trackingIssues : TErrorGroupTypetrackingIssuesArray Index 16 Read FtrackingIssues Write SettrackingIssues;
end;
TErrorGroupClass = Class of TErrorGroup;
{ --------------------------------------------------------------------
TTrackingIssue
--------------------------------------------------------------------}
TTrackingIssue = Class(TGoogleBaseObject)
Private
Furl : String;
Protected
//Property setters
Procedure Seturl(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property url : String Index 0 Read Furl Write Seturl;
end;
TTrackingIssueClass = Class of TTrackingIssue;
{ --------------------------------------------------------------------
TDeleteEventsResponse
--------------------------------------------------------------------}
TDeleteEventsResponse = Class(TGoogleBaseObject)
Private
Protected
//Property setters
Public
Published
end;
TDeleteEventsResponseClass = Class of TDeleteEventsResponse;
{ --------------------------------------------------------------------
TErrorEvent
--------------------------------------------------------------------}
TErrorEvent = Class(TGoogleBaseObject)
Private
FserviceContext : TServiceContext;
Fcontext : TErrorContext;
FeventTime : String;
Fmessage : String;
Protected
//Property setters
Procedure SetserviceContext(AIndex : Integer; const AValue : TServiceContext); virtual;
Procedure Setcontext(AIndex : Integer; const AValue : TErrorContext); virtual;
Procedure SeteventTime(AIndex : Integer; const AValue : String); virtual;
Procedure Setmessage(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property serviceContext : TServiceContext Index 0 Read FserviceContext Write SetserviceContext;
Property context : TErrorContext Index 8 Read Fcontext Write Setcontext;
Property eventTime : String Index 16 Read FeventTime Write SeteventTime;
Property message : String Index 24 Read Fmessage Write Setmessage;
end;
TErrorEventClass = Class of TErrorEvent;
{ --------------------------------------------------------------------
TListEventsResponse
--------------------------------------------------------------------}
TListEventsResponse = Class(TGoogleBaseObject)
Private
FnextPageToken : String;
FerrorEvents : TListEventsResponseTypeerrorEventsArray;
Protected
//Property setters
Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual;
Procedure SeterrorEvents(AIndex : Integer; const AValue : TListEventsResponseTypeerrorEventsArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property nextPageToken : String Index 0 Read FnextPageToken Write SetnextPageToken;
Property errorEvents : TListEventsResponseTypeerrorEventsArray Index 8 Read FerrorEvents Write SeterrorEvents;
end;
TListEventsResponseClass = Class of TListEventsResponse;
{ --------------------------------------------------------------------
TTimedCount
--------------------------------------------------------------------}
TTimedCount = Class(TGoogleBaseObject)
Private
FstartTime : String;
FendTime : String;
Fcount : String;
Protected
//Property setters
Procedure SetstartTime(AIndex : Integer; const AValue : String); virtual;
Procedure SetendTime(AIndex : Integer; const AValue : String); virtual;
Procedure Setcount(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property startTime : String Index 0 Read FstartTime Write SetstartTime;
Property endTime : String Index 8 Read FendTime Write SetendTime;
Property count : String Index 16 Read Fcount Write Setcount;
end;
TTimedCountClass = Class of TTimedCount;
{ --------------------------------------------------------------------
THttpRequestContext
--------------------------------------------------------------------}
THttpRequestContext = Class(TGoogleBaseObject)
Private
Fmethod : String;
FresponseStatusCode : integer;
FremoteIp : String;
Furl : String;
Freferrer : String;
FuserAgent : String;
Protected
//Property setters
Procedure Setmethod(AIndex : Integer; const AValue : String); virtual;
Procedure SetresponseStatusCode(AIndex : Integer; const AValue : integer); virtual;
Procedure SetremoteIp(AIndex : Integer; const AValue : String); virtual;
Procedure Seturl(AIndex : Integer; const AValue : String); virtual;
Procedure Setreferrer(AIndex : Integer; const AValue : String); virtual;
Procedure SetuserAgent(AIndex : Integer; const AValue : String); virtual;
Public
Published
Property method : String Index 0 Read Fmethod Write Setmethod;
Property responseStatusCode : integer Index 8 Read FresponseStatusCode Write SetresponseStatusCode;
Property remoteIp : String Index 16 Read FremoteIp Write SetremoteIp;
Property url : String Index 24 Read Furl Write Seturl;
Property referrer : String Index 32 Read Freferrer Write Setreferrer;
Property userAgent : String Index 40 Read FuserAgent Write SetuserAgent;
end;
THttpRequestContextClass = Class of THttpRequestContext;
{ --------------------------------------------------------------------
TListGroupStatsResponse
--------------------------------------------------------------------}
TListGroupStatsResponse = Class(TGoogleBaseObject)
Private
FnextPageToken : String;
FerrorGroupStats : TListGroupStatsResponseTypeerrorGroupStatsArray;
Protected
//Property setters
Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual;
Procedure SeterrorGroupStats(AIndex : Integer; const AValue : TListGroupStatsResponseTypeerrorGroupStatsArray); virtual;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
{$ENDIF VER2_6}
Public
Published
Property nextPageToken : String Index 0 Read FnextPageToken Write SetnextPageToken;
Property errorGroupStats : TListGroupStatsResponseTypeerrorGroupStatsArray Index 8 Read FerrorGroupStats Write SeterrorGroupStats;
end;
TListGroupStatsResponseClass = Class of TListGroupStatsResponse;
{ --------------------------------------------------------------------
TProjectsEventsResource
--------------------------------------------------------------------}
//Optional query Options for TProjectsEventsResource, method List
TProjectsEventsListOptions = Record
timeRangeperiod : String;
serviceFilterservice : String;
groupId : String;
serviceFilterversion : String;
pageSize : integer;
pageToken : String;
end;
TProjectsEventsResource = Class(TGoogleResource)
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function List(projectName: string; AQuery : string = '') : TListEventsResponse;
Function List(projectName: string; AQuery : TProjectsEventslistOptions) : TListEventsResponse;
end;
{ --------------------------------------------------------------------
TProjectsGroupsResource
--------------------------------------------------------------------}
TProjectsGroupsResource = Class(TGoogleResource)
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function Update(_name: string; aErrorGroup : TErrorGroup) : TErrorGroup;
Function Get(groupName: string) : TErrorGroup;
end;
{ --------------------------------------------------------------------
TProjectsGroupStatsResource
--------------------------------------------------------------------}
//Optional query Options for TProjectsGroupStatsResource, method List
TProjectsGroupStatsListOptions = Record
alignment : String;
timeRangeperiod : String;
order : String;
groupId : String;
serviceFilterservice : String;
alignmentTime : String;
serviceFilterversion : String;
pageSize : integer;
timedCountDuration : String;
pageToken : String;
end;
TProjectsGroupStatsResource = Class(TGoogleResource)
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function List(projectName: string; AQuery : string = '') : TListGroupStatsResponse;
Function List(projectName: string; AQuery : TProjectsGroupStatslistOptions) : TListGroupStatsResponse;
end;
{ --------------------------------------------------------------------
TProjectsResource
--------------------------------------------------------------------}
TProjectsResource = Class(TGoogleResource)
Private
FEventsInstance : TProjectsEventsResource;
FGroupsInstance : TProjectsGroupsResource;
FGroupStatsInstance : TProjectsGroupStatsResource;
Function GetEventsInstance : TProjectsEventsResource;virtual;
Function GetGroupsInstance : TProjectsGroupsResource;virtual;
Function GetGroupStatsInstance : TProjectsGroupStatsResource;virtual;
Public
Class Function ResourceName : String; override;
Class Function DefaultAPI : TGoogleAPIClass; override;
Function DeleteEvents(projectName: string) : TDeleteEventsResponse;
Function CreateEventsResource(AOwner : TComponent) : TProjectsEventsResource;virtual;overload;
Function CreateEventsResource : TProjectsEventsResource;virtual;overload;
Function CreateGroupsResource(AOwner : TComponent) : TProjectsGroupsResource;virtual;overload;
Function CreateGroupsResource : TProjectsGroupsResource;virtual;overload;
Function CreateGroupStatsResource(AOwner : TComponent) : TProjectsGroupStatsResource;virtual;overload;
Function CreateGroupStatsResource : TProjectsGroupStatsResource;virtual;overload;
Property EventsResource : TProjectsEventsResource Read GetEventsInstance;
Property GroupsResource : TProjectsGroupsResource Read GetGroupsInstance;
Property GroupStatsResource : TProjectsGroupStatsResource Read GetGroupStatsInstance;
end;
{ --------------------------------------------------------------------
TClouderrorreportingAPI
--------------------------------------------------------------------}
TClouderrorreportingAPI = Class(TGoogleAPI)
Private
FProjectsEventsInstance : TProjectsEventsResource;
FProjectsGroupsInstance : TProjectsGroupsResource;
FProjectsGroupStatsInstance : TProjectsGroupStatsResource;
FProjectsInstance : TProjectsResource;
Function GetProjectsEventsInstance : TProjectsEventsResource;virtual;
Function GetProjectsGroupsInstance : TProjectsGroupsResource;virtual;
Function GetProjectsGroupStatsInstance : TProjectsGroupStatsResource;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 CreateProjectsEventsResource(AOwner : TComponent) : TProjectsEventsResource;virtual;overload;
Function CreateProjectsEventsResource : TProjectsEventsResource;virtual;overload;
Function CreateProjectsGroupsResource(AOwner : TComponent) : TProjectsGroupsResource;virtual;overload;
Function CreateProjectsGroupsResource : TProjectsGroupsResource;virtual;overload;
Function CreateProjectsGroupStatsResource(AOwner : TComponent) : TProjectsGroupStatsResource;virtual;overload;
Function CreateProjectsGroupStatsResource : TProjectsGroupStatsResource;virtual;overload;
Function CreateProjectsResource(AOwner : TComponent) : TProjectsResource;virtual;overload;
Function CreateProjectsResource : TProjectsResource;virtual;overload;
//Add default on-demand instances for resources
Property ProjectsEventsResource : TProjectsEventsResource Read GetProjectsEventsInstance;
Property ProjectsGroupsResource : TProjectsGroupsResource Read GetProjectsGroupsInstance;
Property ProjectsGroupStatsResource : TProjectsGroupStatsResource Read GetProjectsGroupStatsInstance;
Property ProjectsResource : TProjectsResource Read GetProjectsInstance;
end;
implementation
{ --------------------------------------------------------------------
TSourceLocation
--------------------------------------------------------------------}
Procedure TSourceLocation.SetfilePath(AIndex : Integer; const AValue : String);
begin
If (FfilePath=AValue) then exit;
FfilePath:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TSourceLocation.SetfunctionName(AIndex : Integer; const AValue : String);
begin
If (FfunctionName=AValue) then exit;
FfunctionName:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TSourceLocation.SetlineNumber(AIndex : Integer; const AValue : integer);
begin
If (FlineNumber=AValue) then exit;
FlineNumber:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TErrorGroupStats
--------------------------------------------------------------------}
Procedure TErrorGroupStats.Setrepresentative(AIndex : Integer; const AValue : TErrorEvent);
begin
If (Frepresentative=AValue) then exit;
Frepresentative:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroupStats.SetnumAffectedServices(AIndex : Integer; const AValue : integer);
begin
If (FnumAffectedServices=AValue) then exit;
FnumAffectedServices:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroupStats.SetaffectedUsersCount(AIndex : Integer; const AValue : String);
begin
If (FaffectedUsersCount=AValue) then exit;
FaffectedUsersCount:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroupStats.Setcount(AIndex : Integer; const AValue : String);
begin
If (Fcount=AValue) then exit;
Fcount:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroupStats.SetfirstSeenTime(AIndex : Integer; const AValue : String);
begin
If (FfirstSeenTime=AValue) then exit;
FfirstSeenTime:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroupStats.SetlastSeenTime(AIndex : Integer; const AValue : String);
begin
If (FlastSeenTime=AValue) then exit;
FlastSeenTime:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroupStats.Setgroup(AIndex : Integer; const AValue : TErrorGroup);
begin
If (Fgroup=AValue) then exit;
Fgroup:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroupStats.SetaffectedServices(AIndex : Integer; const AValue : TErrorGroupStatsTypeaffectedServicesArray);
begin
If (FaffectedServices=AValue) then exit;
FaffectedServices:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroupStats.SettimedCounts(AIndex : Integer; const AValue : TErrorGroupStatsTypetimedCountsArray);
begin
If (FtimedCounts=AValue) then exit;
FtimedCounts:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TErrorGroupStats.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'affectedservices' : SetLength(FaffectedServices,ALength);
'timedcounts' : SetLength(FtimedCounts,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TErrorContext
--------------------------------------------------------------------}
Procedure TErrorContext.SethttpRequest(AIndex : Integer; const AValue : THttpRequestContext);
begin
If (FhttpRequest=AValue) then exit;
FhttpRequest:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorContext.SetreportLocation(AIndex : Integer; const AValue : TSourceLocation);
begin
If (FreportLocation=AValue) then exit;
FreportLocation:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorContext.Setuser(AIndex : Integer; const AValue : String);
begin
If (Fuser=AValue) then exit;
Fuser:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TServiceContext
--------------------------------------------------------------------}
Procedure TServiceContext.Setservice(AIndex : Integer; const AValue : String);
begin
If (Fservice=AValue) then exit;
Fservice:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TServiceContext.Setversion(AIndex : Integer; const AValue : String);
begin
If (Fversion=AValue) then exit;
Fversion:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TErrorGroup
--------------------------------------------------------------------}
Procedure TErrorGroup.SetgroupId(AIndex : Integer; const AValue : String);
begin
If (FgroupId=AValue) then exit;
FgroupId:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroup.Setname(AIndex : Integer; const AValue : String);
begin
If (Fname=AValue) then exit;
Fname:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorGroup.SettrackingIssues(AIndex : Integer; const AValue : TErrorGroupTypetrackingIssuesArray);
begin
If (FtrackingIssues=AValue) then exit;
FtrackingIssues:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TErrorGroup.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'trackingissues' : SetLength(FtrackingIssues,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TTrackingIssue
--------------------------------------------------------------------}
Procedure TTrackingIssue.Seturl(AIndex : Integer; const AValue : String);
begin
If (Furl=AValue) then exit;
Furl:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TDeleteEventsResponse
--------------------------------------------------------------------}
{ --------------------------------------------------------------------
TErrorEvent
--------------------------------------------------------------------}
Procedure TErrorEvent.SetserviceContext(AIndex : Integer; const AValue : TServiceContext);
begin
If (FserviceContext=AValue) then exit;
FserviceContext:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorEvent.Setcontext(AIndex : Integer; const AValue : TErrorContext);
begin
If (Fcontext=AValue) then exit;
Fcontext:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorEvent.SeteventTime(AIndex : Integer; const AValue : String);
begin
If (FeventTime=AValue) then exit;
FeventTime:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TErrorEvent.Setmessage(AIndex : Integer; const AValue : String);
begin
If (Fmessage=AValue) then exit;
Fmessage:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TListEventsResponse
--------------------------------------------------------------------}
Procedure TListEventsResponse.SetnextPageToken(AIndex : Integer; const AValue : String);
begin
If (FnextPageToken=AValue) then exit;
FnextPageToken:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TListEventsResponse.SeterrorEvents(AIndex : Integer; const AValue : TListEventsResponseTypeerrorEventsArray);
begin
If (FerrorEvents=AValue) then exit;
FerrorEvents:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TListEventsResponse.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'errorevents' : SetLength(FerrorEvents,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TTimedCount
--------------------------------------------------------------------}
Procedure TTimedCount.SetstartTime(AIndex : Integer; const AValue : String);
begin
If (FstartTime=AValue) then exit;
FstartTime:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TTimedCount.SetendTime(AIndex : Integer; const AValue : String);
begin
If (FendTime=AValue) then exit;
FendTime:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TTimedCount.Setcount(AIndex : Integer; const AValue : String);
begin
If (Fcount=AValue) then exit;
Fcount:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
THttpRequestContext
--------------------------------------------------------------------}
Procedure THttpRequestContext.Setmethod(AIndex : Integer; const AValue : String);
begin
If (Fmethod=AValue) then exit;
Fmethod:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure THttpRequestContext.SetresponseStatusCode(AIndex : Integer; const AValue : integer);
begin
If (FresponseStatusCode=AValue) then exit;
FresponseStatusCode:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure THttpRequestContext.SetremoteIp(AIndex : Integer; const AValue : String);
begin
If (FremoteIp=AValue) then exit;
FremoteIp:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure THttpRequestContext.Seturl(AIndex : Integer; const AValue : String);
begin
If (Furl=AValue) then exit;
Furl:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure THttpRequestContext.Setreferrer(AIndex : Integer; const AValue : String);
begin
If (Freferrer=AValue) then exit;
Freferrer:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure THttpRequestContext.SetuserAgent(AIndex : Integer; const AValue : String);
begin
If (FuserAgent=AValue) then exit;
FuserAgent:=AValue;
MarkPropertyChanged(AIndex);
end;
{ --------------------------------------------------------------------
TListGroupStatsResponse
--------------------------------------------------------------------}
Procedure TListGroupStatsResponse.SetnextPageToken(AIndex : Integer; const AValue : String);
begin
If (FnextPageToken=AValue) then exit;
FnextPageToken:=AValue;
MarkPropertyChanged(AIndex);
end;
Procedure TListGroupStatsResponse.SeterrorGroupStats(AIndex : Integer; const AValue : TListGroupStatsResponseTypeerrorGroupStatsArray);
begin
If (FerrorGroupStats=AValue) then exit;
FerrorGroupStats:=AValue;
MarkPropertyChanged(AIndex);
end;
//2.6.4. bug workaround
{$IFDEF VER2_6}
Procedure TListGroupStatsResponse.SetArrayLength(Const AName : String; ALength : Longint);
begin
Case AName of
'errorgroupstats' : SetLength(FerrorGroupStats,ALength);
else
Inherited SetArrayLength(AName,ALength);
end;
end;
{$ENDIF VER2_6}
{ --------------------------------------------------------------------
TProjectsEventsResource
--------------------------------------------------------------------}
Class Function TProjectsEventsResource.ResourceName : String;
begin
Result:='events';
end;
Class Function TProjectsEventsResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TclouderrorreportingAPI;
end;
Function TProjectsEventsResource.List(projectName: string; AQuery : string = '') : TListEventsResponse;
Const
_HTTPMethod = 'GET';
_Path = 'v1beta1/{+projectName}/events';
_Methodid = 'clouderrorreporting.projects.events.list';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectName',projectName]);
Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TListEventsResponse) as TListEventsResponse;
end;
Function TProjectsEventsResource.List(projectName: string; AQuery : TProjectsEventslistOptions) : TListEventsResponse;
Var
_Q : String;
begin
_Q:='';
AddToQuery(_Q,'timeRange.period',AQuery.timeRangeperiod);
AddToQuery(_Q,'serviceFilter.service',AQuery.serviceFilterservice);
AddToQuery(_Q,'groupId',AQuery.groupId);
AddToQuery(_Q,'serviceFilter.version',AQuery.serviceFilterversion);
AddToQuery(_Q,'pageSize',AQuery.pageSize);
AddToQuery(_Q,'pageToken',AQuery.pageToken);
Result:=List(projectName,_Q);
end;
{ --------------------------------------------------------------------
TProjectsGroupsResource
--------------------------------------------------------------------}
Class Function TProjectsGroupsResource.ResourceName : String;
begin
Result:='groups';
end;
Class Function TProjectsGroupsResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TclouderrorreportingAPI;
end;
Function TProjectsGroupsResource.Update(_name: string; aErrorGroup : TErrorGroup) : TErrorGroup;
Const
_HTTPMethod = 'PUT';
_Path = 'v1beta1/{+name}';
_Methodid = 'clouderrorreporting.projects.groups.update';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['name',_name]);
Result:=ServiceCall(_HTTPMethod,_P,'',aErrorGroup,TErrorGroup) as TErrorGroup;
end;
Function TProjectsGroupsResource.Get(groupName: string) : TErrorGroup;
Const
_HTTPMethod = 'GET';
_Path = 'v1beta1/{+groupName}';
_Methodid = 'clouderrorreporting.projects.groups.get';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['groupName',groupName]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TErrorGroup) as TErrorGroup;
end;
{ --------------------------------------------------------------------
TProjectsGroupStatsResource
--------------------------------------------------------------------}
Class Function TProjectsGroupStatsResource.ResourceName : String;
begin
Result:='groupStats';
end;
Class Function TProjectsGroupStatsResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TclouderrorreportingAPI;
end;
Function TProjectsGroupStatsResource.List(projectName: string; AQuery : string = '') : TListGroupStatsResponse;
Const
_HTTPMethod = 'GET';
_Path = 'v1beta1/{+projectName}/groupStats';
_Methodid = 'clouderrorreporting.projects.groupStats.list';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectName',projectName]);
Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TListGroupStatsResponse) as TListGroupStatsResponse;
end;
Function TProjectsGroupStatsResource.List(projectName: string; AQuery : TProjectsGroupStatslistOptions) : TListGroupStatsResponse;
Var
_Q : String;
begin
_Q:='';
AddToQuery(_Q,'alignment',AQuery.alignment);
AddToQuery(_Q,'timeRange.period',AQuery.timeRangeperiod);
AddToQuery(_Q,'order',AQuery.order);
AddToQuery(_Q,'groupId',AQuery.groupId);
AddToQuery(_Q,'serviceFilter.service',AQuery.serviceFilterservice);
AddToQuery(_Q,'alignmentTime',AQuery.alignmentTime);
AddToQuery(_Q,'serviceFilter.version',AQuery.serviceFilterversion);
AddToQuery(_Q,'pageSize',AQuery.pageSize);
AddToQuery(_Q,'timedCountDuration',AQuery.timedCountDuration);
AddToQuery(_Q,'pageToken',AQuery.pageToken);
Result:=List(projectName,_Q);
end;
{ --------------------------------------------------------------------
TProjectsResource
--------------------------------------------------------------------}
Class Function TProjectsResource.ResourceName : String;
begin
Result:='projects';
end;
Class Function TProjectsResource.DefaultAPI : TGoogleAPIClass;
begin
Result:=TclouderrorreportingAPI;
end;
Function TProjectsResource.DeleteEvents(projectName: string) : TDeleteEventsResponse;
Const
_HTTPMethod = 'DELETE';
_Path = 'v1beta1/{+projectName}/events';
_Methodid = 'clouderrorreporting.projects.deleteEvents';
Var
_P : String;
begin
_P:=SubstitutePath(_Path,['projectName',projectName]);
Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TDeleteEventsResponse) as TDeleteEventsResponse;
end;
Function TProjectsResource.GetEventsInstance : TProjectsEventsResource;
begin
if (FEventsInstance=Nil) then
FEventsInstance:=CreateEventsResource;
Result:=FEventsInstance;
end;
Function TProjectsResource.CreateEventsResource : TProjectsEventsResource;
begin
Result:=CreateEventsResource(Self);
end;
Function TProjectsResource.CreateEventsResource(AOwner : TComponent) : TProjectsEventsResource;
begin
Result:=TProjectsEventsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TProjectsResource.GetGroupsInstance : TProjectsGroupsResource;
begin
if (FGroupsInstance=Nil) then
FGroupsInstance:=CreateGroupsResource;
Result:=FGroupsInstance;
end;
Function TProjectsResource.CreateGroupsResource : TProjectsGroupsResource;
begin
Result:=CreateGroupsResource(Self);
end;
Function TProjectsResource.CreateGroupsResource(AOwner : TComponent) : TProjectsGroupsResource;
begin
Result:=TProjectsGroupsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TProjectsResource.GetGroupStatsInstance : TProjectsGroupStatsResource;
begin
if (FGroupStatsInstance=Nil) then
FGroupStatsInstance:=CreateGroupStatsResource;
Result:=FGroupStatsInstance;
end;
Function TProjectsResource.CreateGroupStatsResource : TProjectsGroupStatsResource;
begin
Result:=CreateGroupStatsResource(Self);
end;
Function TProjectsResource.CreateGroupStatsResource(AOwner : TComponent) : TProjectsGroupStatsResource;
begin
Result:=TProjectsGroupStatsResource.Create(AOwner);
Result.API:=Self.API;
end;
{ --------------------------------------------------------------------
TClouderrorreportingAPI
--------------------------------------------------------------------}
Class Function TClouderrorreportingAPI.APIName : String;
begin
Result:='clouderrorreporting';
end;
Class Function TClouderrorreportingAPI.APIVersion : String;
begin
Result:='v1beta1';
end;
Class Function TClouderrorreportingAPI.APIRevision : String;
begin
Result:='20160517';
end;
Class Function TClouderrorreportingAPI.APIID : String;
begin
Result:='clouderrorreporting:v1beta1';
end;
Class Function TClouderrorreportingAPI.APITitle : String;
begin
Result:='Stackdriver Error Reporting API';
end;
Class Function TClouderrorreportingAPI.APIDescription : String;
begin
Result:='Stackdriver Error Reporting groups and counts similar errors from cloud services. The Stackdriver Error Reporting API provides read access to error groups and their associated errors.';
end;
Class Function TClouderrorreportingAPI.APIOwnerDomain : String;
begin
Result:='google.com';
end;
Class Function TClouderrorreportingAPI.APIOwnerName : String;
begin
Result:='Google';
end;
Class Function TClouderrorreportingAPI.APIIcon16 : String;
begin
Result:='http://www.google.com/images/icons/product/search-16.gif';
end;
Class Function TClouderrorreportingAPI.APIIcon32 : String;
begin
Result:='http://www.google.com/images/icons/product/search-32.gif';
end;
Class Function TClouderrorreportingAPI.APIdocumentationLink : String;
begin
Result:='https://cloud.google.com/error-reporting/';
end;
Class Function TClouderrorreportingAPI.APIrootUrl : string;
begin
Result:='https://clouderrorreporting.googleapis.com/';
end;
Class Function TClouderrorreportingAPI.APIbasePath : string;
begin
Result:='';
end;
Class Function TClouderrorreportingAPI.APIbaseURL : String;
begin
Result:='https://clouderrorreporting.googleapis.com/';
end;
Class Function TClouderrorreportingAPI.APIProtocol : string;
begin
Result:='rest';
end;
Class Function TClouderrorreportingAPI.APIservicePath : string;
begin
Result:='';
end;
Class Function TClouderrorreportingAPI.APIbatchPath : String;
begin
Result:='batch';
end;
Class Function TClouderrorreportingAPI.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 TClouderrorreportingAPI.APINeedsAuth : Boolean;
begin
Result:=True;
end;
Class Procedure TClouderrorreportingAPI.RegisterAPIResources;
begin
TSourceLocation.RegisterObject;
TErrorGroupStats.RegisterObject;
TErrorContext.RegisterObject;
TServiceContext.RegisterObject;
TErrorGroup.RegisterObject;
TTrackingIssue.RegisterObject;
TDeleteEventsResponse.RegisterObject;
TErrorEvent.RegisterObject;
TListEventsResponse.RegisterObject;
TTimedCount.RegisterObject;
THttpRequestContext.RegisterObject;
TListGroupStatsResponse.RegisterObject;
end;
Function TClouderrorreportingAPI.GetProjectsEventsInstance : TProjectsEventsResource;
begin
if (FProjectsEventsInstance=Nil) then
FProjectsEventsInstance:=CreateProjectsEventsResource;
Result:=FProjectsEventsInstance;
end;
Function TClouderrorreportingAPI.CreateProjectsEventsResource : TProjectsEventsResource;
begin
Result:=CreateProjectsEventsResource(Self);
end;
Function TClouderrorreportingAPI.CreateProjectsEventsResource(AOwner : TComponent) : TProjectsEventsResource;
begin
Result:=TProjectsEventsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TClouderrorreportingAPI.GetProjectsGroupsInstance : TProjectsGroupsResource;
begin
if (FProjectsGroupsInstance=Nil) then
FProjectsGroupsInstance:=CreateProjectsGroupsResource;
Result:=FProjectsGroupsInstance;
end;
Function TClouderrorreportingAPI.CreateProjectsGroupsResource : TProjectsGroupsResource;
begin
Result:=CreateProjectsGroupsResource(Self);
end;
Function TClouderrorreportingAPI.CreateProjectsGroupsResource(AOwner : TComponent) : TProjectsGroupsResource;
begin
Result:=TProjectsGroupsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TClouderrorreportingAPI.GetProjectsGroupStatsInstance : TProjectsGroupStatsResource;
begin
if (FProjectsGroupStatsInstance=Nil) then
FProjectsGroupStatsInstance:=CreateProjectsGroupStatsResource;
Result:=FProjectsGroupStatsInstance;
end;
Function TClouderrorreportingAPI.CreateProjectsGroupStatsResource : TProjectsGroupStatsResource;
begin
Result:=CreateProjectsGroupStatsResource(Self);
end;
Function TClouderrorreportingAPI.CreateProjectsGroupStatsResource(AOwner : TComponent) : TProjectsGroupStatsResource;
begin
Result:=TProjectsGroupStatsResource.Create(AOwner);
Result.API:=Self.API;
end;
Function TClouderrorreportingAPI.GetProjectsInstance : TProjectsResource;
begin
if (FProjectsInstance=Nil) then
FProjectsInstance:=CreateProjectsResource;
Result:=FProjectsInstance;
end;
Function TClouderrorreportingAPI.CreateProjectsResource : TProjectsResource;
begin
Result:=CreateProjectsResource(Self);
end;
Function TClouderrorreportingAPI.CreateProjectsResource(AOwner : TComponent) : TProjectsResource;
begin
Result:=TProjectsResource.Create(AOwner);
Result.API:=Self.API;
end;
initialization
TClouderrorreportingAPI.RegisterAPI;
end.