summaryrefslogtreecommitdiff
path: root/packages/googleapi/src/googleproximitybeacon.pp
diff options
context:
space:
mode:
Diffstat (limited to 'packages/googleapi/src/googleproximitybeacon.pp')
-rw-r--r--packages/googleapi/src/googleproximitybeacon.pp2506
1 files changed, 2506 insertions, 0 deletions
diff --git a/packages/googleapi/src/googleproximitybeacon.pp b/packages/googleapi/src/googleproximitybeacon.pp
new file mode 100644
index 0000000000..e663390874
--- /dev/null
+++ b/packages/googleapi/src/googleproximitybeacon.pp
@@ -0,0 +1,2506 @@
+unit googleproximitybeacon;
+{$MODE objfpc}
+{$H+}
+
+interface
+
+uses sysutils, classes, googleservice, restbase, googlebase;
+
+type
+
+ //Top-level schema types
+ TBeacon = Class;
+ TAdvertisedId = Class;
+ TLatLng = Class;
+ TIndoorLevel = Class;
+ TEphemeralIdRegistration = Class;
+ TEmpty = Class;
+ TListBeaconsResponse = Class;
+ TBeaconAttachment = Class;
+ TListBeaconAttachmentsResponse = Class;
+ TDeleteAttachmentsResponse = Class;
+ TListNamespacesResponse = Class;
+ TNamespace = Class;
+ TEphemeralIdRegistrationParams = Class;
+ TListDiagnosticsResponse = Class;
+ TDiagnostics = Class;
+ TDate = Class;
+ TGetInfoForObservedBeaconsRequest = Class;
+ TObservation = Class;
+ TGetInfoForObservedBeaconsResponse = Class;
+ TBeaconInfo = Class;
+ TAttachmentInfo = Class;
+ TBeaconArray = Array of TBeacon;
+ TAdvertisedIdArray = Array of TAdvertisedId;
+ TLatLngArray = Array of TLatLng;
+ TIndoorLevelArray = Array of TIndoorLevel;
+ TEphemeralIdRegistrationArray = Array of TEphemeralIdRegistration;
+ TEmptyArray = Array of TEmpty;
+ TListBeaconsResponseArray = Array of TListBeaconsResponse;
+ TBeaconAttachmentArray = Array of TBeaconAttachment;
+ TListBeaconAttachmentsResponseArray = Array of TListBeaconAttachmentsResponse;
+ TDeleteAttachmentsResponseArray = Array of TDeleteAttachmentsResponse;
+ TListNamespacesResponseArray = Array of TListNamespacesResponse;
+ TNamespaceArray = Array of TNamespace;
+ TEphemeralIdRegistrationParamsArray = Array of TEphemeralIdRegistrationParams;
+ TListDiagnosticsResponseArray = Array of TListDiagnosticsResponse;
+ TDiagnosticsArray = Array of TDiagnostics;
+ TDateArray = Array of TDate;
+ TGetInfoForObservedBeaconsRequestArray = Array of TGetInfoForObservedBeaconsRequest;
+ TObservationArray = Array of TObservation;
+ TGetInfoForObservedBeaconsResponseArray = Array of TGetInfoForObservedBeaconsResponse;
+ TBeaconInfoArray = Array of TBeaconInfo;
+ TAttachmentInfoArray = Array of TAttachmentInfo;
+ //Anonymous types, using auto-generated names
+ TBeaconTypeproperties = Class;
+ TListBeaconsResponseTypebeaconsArray = Array of TBeacon;
+ TListBeaconAttachmentsResponseTypeattachmentsArray = Array of TBeaconAttachment;
+ TListNamespacesResponseTypenamespacesArray = Array of TNamespace;
+ TListDiagnosticsResponseTypediagnosticsArray = Array of TDiagnostics;
+ TGetInfoForObservedBeaconsRequestTypeobservationsArray = Array of TObservation;
+ TGetInfoForObservedBeaconsResponseTypebeaconsArray = Array of TBeaconInfo;
+ TBeaconInfoTypeattachmentsArray = Array of TAttachmentInfo;
+
+ { --------------------------------------------------------------------
+ TBeaconTypeproperties
+ --------------------------------------------------------------------}
+
+ TBeaconTypeproperties = Class(TGoogleBaseObject)
+ Private
+ Protected
+ //Property setters
+ Public
+ Class Function AllowAdditionalProperties : Boolean; override;
+ Published
+ end;
+ TBeaconTypepropertiesClass = Class of TBeaconTypeproperties;
+
+ { --------------------------------------------------------------------
+ TBeacon
+ --------------------------------------------------------------------}
+
+ TBeacon = Class(TGoogleBaseObject)
+ Private
+ FbeaconName : String;
+ FadvertisedId : TAdvertisedId;
+ Fstatus : String;
+ FplaceId : String;
+ FlatLng : TLatLng;
+ FindoorLevel : TIndoorLevel;
+ FexpectedStability : String;
+ Fdescription : String;
+ Fproperties : TBeaconTypeproperties;
+ FephemeralIdRegistration : TEphemeralIdRegistration;
+ FprovisioningKey : String;
+ Protected
+ //Property setters
+ Procedure SetbeaconName(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetadvertisedId(AIndex : Integer; const AValue : TAdvertisedId); virtual;
+ Procedure Setstatus(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetplaceId(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetlatLng(AIndex : Integer; const AValue : TLatLng); virtual;
+ Procedure SetindoorLevel(AIndex : Integer; const AValue : TIndoorLevel); virtual;
+ Procedure SetexpectedStability(AIndex : Integer; const AValue : String); virtual;
+ Procedure Setdescription(AIndex : Integer; const AValue : String); virtual;
+ Procedure Setproperties(AIndex : Integer; const AValue : TBeaconTypeproperties); virtual;
+ Procedure SetephemeralIdRegistration(AIndex : Integer; const AValue : TEphemeralIdRegistration); virtual;
+ Procedure SetprovisioningKey(AIndex : Integer; const AValue : String); virtual;
+ Public
+ Published
+ Property beaconName : String Index 0 Read FbeaconName Write SetbeaconName;
+ Property advertisedId : TAdvertisedId Index 8 Read FadvertisedId Write SetadvertisedId;
+ Property status : String Index 16 Read Fstatus Write Setstatus;
+ Property placeId : String Index 24 Read FplaceId Write SetplaceId;
+ Property latLng : TLatLng Index 32 Read FlatLng Write SetlatLng;
+ Property indoorLevel : TIndoorLevel Index 40 Read FindoorLevel Write SetindoorLevel;
+ Property expectedStability : String Index 48 Read FexpectedStability Write SetexpectedStability;
+ Property description : String Index 56 Read Fdescription Write Setdescription;
+ Property properties : TBeaconTypeproperties Index 64 Read Fproperties Write Setproperties;
+ Property ephemeralIdRegistration : TEphemeralIdRegistration Index 72 Read FephemeralIdRegistration Write SetephemeralIdRegistration;
+ Property provisioningKey : String Index 80 Read FprovisioningKey Write SetprovisioningKey;
+ end;
+ TBeaconClass = Class of TBeacon;
+
+ { --------------------------------------------------------------------
+ TAdvertisedId
+ --------------------------------------------------------------------}
+
+ TAdvertisedId = Class(TGoogleBaseObject)
+ Private
+ F_type : String;
+ Fid : String;
+ Protected
+ Class Function ExportPropertyName(Const AName : String) : string; override;
+ //Property setters
+ Procedure Set_type(AIndex : Integer; const AValue : String); virtual;
+ Procedure Setid(AIndex : Integer; const AValue : String); virtual;
+ Public
+ Published
+ Property _type : String Index 0 Read F_type Write Set_type;
+ Property id : String Index 8 Read Fid Write Setid;
+ end;
+ TAdvertisedIdClass = Class of TAdvertisedId;
+
+ { --------------------------------------------------------------------
+ TLatLng
+ --------------------------------------------------------------------}
+
+ TLatLng = Class(TGoogleBaseObject)
+ Private
+ Flatitude : double;
+ Flongitude : double;
+ Protected
+ //Property setters
+ Procedure Setlatitude(AIndex : Integer; const AValue : double); virtual;
+ Procedure Setlongitude(AIndex : Integer; const AValue : double); virtual;
+ Public
+ Published
+ Property latitude : double Index 0 Read Flatitude Write Setlatitude;
+ Property longitude : double Index 8 Read Flongitude Write Setlongitude;
+ end;
+ TLatLngClass = Class of TLatLng;
+
+ { --------------------------------------------------------------------
+ TIndoorLevel
+ --------------------------------------------------------------------}
+
+ TIndoorLevel = Class(TGoogleBaseObject)
+ Private
+ Fname : String;
+ Protected
+ //Property setters
+ Procedure Setname(AIndex : Integer; const AValue : String); virtual;
+ Public
+ Published
+ Property name : String Index 0 Read Fname Write Setname;
+ end;
+ TIndoorLevelClass = Class of TIndoorLevel;
+
+ { --------------------------------------------------------------------
+ TEphemeralIdRegistration
+ --------------------------------------------------------------------}
+
+ TEphemeralIdRegistration = Class(TGoogleBaseObject)
+ Private
+ FbeaconEcdhPublicKey : String;
+ FserviceEcdhPublicKey : String;
+ FbeaconIdentityKey : String;
+ FrotationPeriodExponent : integer;
+ FinitialClockValue : String;
+ FinitialEid : String;
+ Protected
+ //Property setters
+ Procedure SetbeaconEcdhPublicKey(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetserviceEcdhPublicKey(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetbeaconIdentityKey(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetrotationPeriodExponent(AIndex : Integer; const AValue : integer); virtual;
+ Procedure SetinitialClockValue(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetinitialEid(AIndex : Integer; const AValue : String); virtual;
+ Public
+ Published
+ Property beaconEcdhPublicKey : String Index 0 Read FbeaconEcdhPublicKey Write SetbeaconEcdhPublicKey;
+ Property serviceEcdhPublicKey : String Index 8 Read FserviceEcdhPublicKey Write SetserviceEcdhPublicKey;
+ Property beaconIdentityKey : String Index 16 Read FbeaconIdentityKey Write SetbeaconIdentityKey;
+ Property rotationPeriodExponent : integer Index 24 Read FrotationPeriodExponent Write SetrotationPeriodExponent;
+ Property initialClockValue : String Index 32 Read FinitialClockValue Write SetinitialClockValue;
+ Property initialEid : String Index 40 Read FinitialEid Write SetinitialEid;
+ end;
+ TEphemeralIdRegistrationClass = Class of TEphemeralIdRegistration;
+
+ { --------------------------------------------------------------------
+ TEmpty
+ --------------------------------------------------------------------}
+
+ TEmpty = Class(TGoogleBaseObject)
+ Private
+ Protected
+ //Property setters
+ Public
+ Published
+ end;
+ TEmptyClass = Class of TEmpty;
+
+ { --------------------------------------------------------------------
+ TListBeaconsResponse
+ --------------------------------------------------------------------}
+
+ TListBeaconsResponse = Class(TGoogleBaseObject)
+ Private
+ Fbeacons : TListBeaconsResponseTypebeaconsArray;
+ FnextPageToken : String;
+ FtotalCount : String;
+ Protected
+ //Property setters
+ Procedure Setbeacons(AIndex : Integer; const AValue : TListBeaconsResponseTypebeaconsArray); virtual;
+ Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual;
+ Procedure SettotalCount(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 beacons : TListBeaconsResponseTypebeaconsArray Index 0 Read Fbeacons Write Setbeacons;
+ Property nextPageToken : String Index 8 Read FnextPageToken Write SetnextPageToken;
+ Property totalCount : String Index 16 Read FtotalCount Write SettotalCount;
+ end;
+ TListBeaconsResponseClass = Class of TListBeaconsResponse;
+
+ { --------------------------------------------------------------------
+ TBeaconAttachment
+ --------------------------------------------------------------------}
+
+ TBeaconAttachment = Class(TGoogleBaseObject)
+ Private
+ FattachmentName : String;
+ FnamespacedType : String;
+ Fdata : String;
+ Protected
+ //Property setters
+ Procedure SetattachmentName(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetnamespacedType(AIndex : Integer; const AValue : String); virtual;
+ Procedure Setdata(AIndex : Integer; const AValue : String); virtual;
+ Public
+ Published
+ Property attachmentName : String Index 0 Read FattachmentName Write SetattachmentName;
+ Property namespacedType : String Index 8 Read FnamespacedType Write SetnamespacedType;
+ Property data : String Index 16 Read Fdata Write Setdata;
+ end;
+ TBeaconAttachmentClass = Class of TBeaconAttachment;
+
+ { --------------------------------------------------------------------
+ TListBeaconAttachmentsResponse
+ --------------------------------------------------------------------}
+
+ TListBeaconAttachmentsResponse = Class(TGoogleBaseObject)
+ Private
+ Fattachments : TListBeaconAttachmentsResponseTypeattachmentsArray;
+ Protected
+ //Property setters
+ Procedure Setattachments(AIndex : Integer; const AValue : TListBeaconAttachmentsResponseTypeattachmentsArray); virtual;
+ //2.6.4. bug workaround
+ {$IFDEF VER2_6}
+ Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
+ {$ENDIF VER2_6}
+ Public
+ Published
+ Property attachments : TListBeaconAttachmentsResponseTypeattachmentsArray Index 0 Read Fattachments Write Setattachments;
+ end;
+ TListBeaconAttachmentsResponseClass = Class of TListBeaconAttachmentsResponse;
+
+ { --------------------------------------------------------------------
+ TDeleteAttachmentsResponse
+ --------------------------------------------------------------------}
+
+ TDeleteAttachmentsResponse = Class(TGoogleBaseObject)
+ Private
+ FnumDeleted : integer;
+ Protected
+ //Property setters
+ Procedure SetnumDeleted(AIndex : Integer; const AValue : integer); virtual;
+ Public
+ Published
+ Property numDeleted : integer Index 0 Read FnumDeleted Write SetnumDeleted;
+ end;
+ TDeleteAttachmentsResponseClass = Class of TDeleteAttachmentsResponse;
+
+ { --------------------------------------------------------------------
+ TListNamespacesResponse
+ --------------------------------------------------------------------}
+
+ TListNamespacesResponse = Class(TGoogleBaseObject)
+ Private
+ Fnamespaces : TListNamespacesResponseTypenamespacesArray;
+ Protected
+ //Property setters
+ Procedure Setnamespaces(AIndex : Integer; const AValue : TListNamespacesResponseTypenamespacesArray); virtual;
+ //2.6.4. bug workaround
+ {$IFDEF VER2_6}
+ Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
+ {$ENDIF VER2_6}
+ Public
+ Published
+ Property namespaces : TListNamespacesResponseTypenamespacesArray Index 0 Read Fnamespaces Write Setnamespaces;
+ end;
+ TListNamespacesResponseClass = Class of TListNamespacesResponse;
+
+ { --------------------------------------------------------------------
+ TNamespace
+ --------------------------------------------------------------------}
+
+ TNamespace = Class(TGoogleBaseObject)
+ Private
+ FnamespaceName : String;
+ FservingVisibility : String;
+ Protected
+ //Property setters
+ Procedure SetnamespaceName(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetservingVisibility(AIndex : Integer; const AValue : String); virtual;
+ Public
+ Published
+ Property namespaceName : String Index 0 Read FnamespaceName Write SetnamespaceName;
+ Property servingVisibility : String Index 8 Read FservingVisibility Write SetservingVisibility;
+ end;
+ TNamespaceClass = Class of TNamespace;
+
+ { --------------------------------------------------------------------
+ TEphemeralIdRegistrationParams
+ --------------------------------------------------------------------}
+
+ TEphemeralIdRegistrationParams = Class(TGoogleBaseObject)
+ Private
+ FserviceEcdhPublicKey : String;
+ FminRotationPeriodExponent : integer;
+ FmaxRotationPeriodExponent : integer;
+ Protected
+ //Property setters
+ Procedure SetserviceEcdhPublicKey(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetminRotationPeriodExponent(AIndex : Integer; const AValue : integer); virtual;
+ Procedure SetmaxRotationPeriodExponent(AIndex : Integer; const AValue : integer); virtual;
+ Public
+ Published
+ Property serviceEcdhPublicKey : String Index 0 Read FserviceEcdhPublicKey Write SetserviceEcdhPublicKey;
+ Property minRotationPeriodExponent : integer Index 8 Read FminRotationPeriodExponent Write SetminRotationPeriodExponent;
+ Property maxRotationPeriodExponent : integer Index 16 Read FmaxRotationPeriodExponent Write SetmaxRotationPeriodExponent;
+ end;
+ TEphemeralIdRegistrationParamsClass = Class of TEphemeralIdRegistrationParams;
+
+ { --------------------------------------------------------------------
+ TListDiagnosticsResponse
+ --------------------------------------------------------------------}
+
+ TListDiagnosticsResponse = Class(TGoogleBaseObject)
+ Private
+ Fdiagnostics : TListDiagnosticsResponseTypediagnosticsArray;
+ FnextPageToken : String;
+ Protected
+ //Property setters
+ Procedure Setdiagnostics(AIndex : Integer; const AValue : TListDiagnosticsResponseTypediagnosticsArray); 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 diagnostics : TListDiagnosticsResponseTypediagnosticsArray Index 0 Read Fdiagnostics Write Setdiagnostics;
+ Property nextPageToken : String Index 8 Read FnextPageToken Write SetnextPageToken;
+ end;
+ TListDiagnosticsResponseClass = Class of TListDiagnosticsResponse;
+
+ { --------------------------------------------------------------------
+ TDiagnostics
+ --------------------------------------------------------------------}
+
+ TDiagnostics = Class(TGoogleBaseObject)
+ Private
+ FbeaconName : String;
+ FestimatedLowBatteryDate : TDate;
+ Falerts : TStringArray;
+ Protected
+ //Property setters
+ Procedure SetbeaconName(AIndex : Integer; const AValue : String); virtual;
+ Procedure SetestimatedLowBatteryDate(AIndex : Integer; const AValue : TDate); virtual;
+ Procedure Setalerts(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 beaconName : String Index 0 Read FbeaconName Write SetbeaconName;
+ Property estimatedLowBatteryDate : TDate Index 8 Read FestimatedLowBatteryDate Write SetestimatedLowBatteryDate;
+ Property alerts : TStringArray Index 16 Read Falerts Write Setalerts;
+ end;
+ TDiagnosticsClass = Class of TDiagnostics;
+
+ { --------------------------------------------------------------------
+ TDate
+ --------------------------------------------------------------------}
+
+ TDate = Class(TGoogleBaseObject)
+ Private
+ Fyear : integer;
+ Fmonth : integer;
+ Fday : integer;
+ Protected
+ //Property setters
+ Procedure Setyear(AIndex : Integer; const AValue : integer); virtual;
+ Procedure Setmonth(AIndex : Integer; const AValue : integer); virtual;
+ Procedure Setday(AIndex : Integer; const AValue : integer); virtual;
+ Public
+ Published
+ Property year : integer Index 0 Read Fyear Write Setyear;
+ Property month : integer Index 8 Read Fmonth Write Setmonth;
+ Property day : integer Index 16 Read Fday Write Setday;
+ end;
+ TDateClass = Class of TDate;
+
+ { --------------------------------------------------------------------
+ TGetInfoForObservedBeaconsRequest
+ --------------------------------------------------------------------}
+
+ TGetInfoForObservedBeaconsRequest = Class(TGoogleBaseObject)
+ Private
+ Fobservations : TGetInfoForObservedBeaconsRequestTypeobservationsArray;
+ FnamespacedTypes : TStringArray;
+ Protected
+ //Property setters
+ Procedure Setobservations(AIndex : Integer; const AValue : TGetInfoForObservedBeaconsRequestTypeobservationsArray); virtual;
+ Procedure SetnamespacedTypes(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 observations : TGetInfoForObservedBeaconsRequestTypeobservationsArray Index 0 Read Fobservations Write Setobservations;
+ Property namespacedTypes : TStringArray Index 8 Read FnamespacedTypes Write SetnamespacedTypes;
+ end;
+ TGetInfoForObservedBeaconsRequestClass = Class of TGetInfoForObservedBeaconsRequest;
+
+ { --------------------------------------------------------------------
+ TObservation
+ --------------------------------------------------------------------}
+
+ TObservation = Class(TGoogleBaseObject)
+ Private
+ FadvertisedId : TAdvertisedId;
+ Ftelemetry : String;
+ FtimestampMs : String;
+ Protected
+ //Property setters
+ Procedure SetadvertisedId(AIndex : Integer; const AValue : TAdvertisedId); virtual;
+ Procedure Settelemetry(AIndex : Integer; const AValue : String); virtual;
+ Procedure SettimestampMs(AIndex : Integer; const AValue : String); virtual;
+ Public
+ Published
+ Property advertisedId : TAdvertisedId Index 0 Read FadvertisedId Write SetadvertisedId;
+ Property telemetry : String Index 8 Read Ftelemetry Write Settelemetry;
+ Property timestampMs : String Index 16 Read FtimestampMs Write SettimestampMs;
+ end;
+ TObservationClass = Class of TObservation;
+
+ { --------------------------------------------------------------------
+ TGetInfoForObservedBeaconsResponse
+ --------------------------------------------------------------------}
+
+ TGetInfoForObservedBeaconsResponse = Class(TGoogleBaseObject)
+ Private
+ Fbeacons : TGetInfoForObservedBeaconsResponseTypebeaconsArray;
+ Protected
+ //Property setters
+ Procedure Setbeacons(AIndex : Integer; const AValue : TGetInfoForObservedBeaconsResponseTypebeaconsArray); virtual;
+ //2.6.4. bug workaround
+ {$IFDEF VER2_6}
+ Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
+ {$ENDIF VER2_6}
+ Public
+ Published
+ Property beacons : TGetInfoForObservedBeaconsResponseTypebeaconsArray Index 0 Read Fbeacons Write Setbeacons;
+ end;
+ TGetInfoForObservedBeaconsResponseClass = Class of TGetInfoForObservedBeaconsResponse;
+
+ { --------------------------------------------------------------------
+ TBeaconInfo
+ --------------------------------------------------------------------}
+
+ TBeaconInfo = Class(TGoogleBaseObject)
+ Private
+ FadvertisedId : TAdvertisedId;
+ FbeaconName : String;
+ Fattachments : TBeaconInfoTypeattachmentsArray;
+ Protected
+ //Property setters
+ Procedure SetadvertisedId(AIndex : Integer; const AValue : TAdvertisedId); virtual;
+ Procedure SetbeaconName(AIndex : Integer; const AValue : String); virtual;
+ Procedure Setattachments(AIndex : Integer; const AValue : TBeaconInfoTypeattachmentsArray); virtual;
+ //2.6.4. bug workaround
+ {$IFDEF VER2_6}
+ Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
+ {$ENDIF VER2_6}
+ Public
+ Published
+ Property advertisedId : TAdvertisedId Index 0 Read FadvertisedId Write SetadvertisedId;
+ Property beaconName : String Index 8 Read FbeaconName Write SetbeaconName;
+ Property attachments : TBeaconInfoTypeattachmentsArray Index 16 Read Fattachments Write Setattachments;
+ end;
+ TBeaconInfoClass = Class of TBeaconInfo;
+
+ { --------------------------------------------------------------------
+ TAttachmentInfo
+ --------------------------------------------------------------------}
+
+ TAttachmentInfo = Class(TGoogleBaseObject)
+ Private
+ FnamespacedType : String;
+ Fdata : String;
+ Protected
+ //Property setters
+ Procedure SetnamespacedType(AIndex : Integer; const AValue : String); virtual;
+ Procedure Setdata(AIndex : Integer; const AValue : String); virtual;
+ Public
+ Published
+ Property namespacedType : String Index 0 Read FnamespacedType Write SetnamespacedType;
+ Property data : String Index 8 Read Fdata Write Setdata;
+ end;
+ TAttachmentInfoClass = Class of TAttachmentInfo;
+
+ { --------------------------------------------------------------------
+ TBeaconsAttachmentsResource
+ --------------------------------------------------------------------}
+
+
+ //Optional query Options for TBeaconsAttachmentsResource, method Create
+
+ TBeaconsAttachmentsCreateOptions = Record
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TBeaconsAttachmentsResource, method List
+
+ TBeaconsAttachmentsListOptions = Record
+ namespacedType : String;
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TBeaconsAttachmentsResource, method Delete
+
+ TBeaconsAttachmentsDeleteOptions = Record
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TBeaconsAttachmentsResource, method BatchDelete
+
+ TBeaconsAttachmentsBatchDeleteOptions = Record
+ namespacedType : String;
+ projectId : String;
+ end;
+
+ TBeaconsAttachmentsResource = Class(TGoogleResource)
+ Public
+ Class Function ResourceName : String; override;
+ Class Function DefaultAPI : TGoogleAPIClass; override;
+ Function Create(beaconName: string; aBeaconAttachment : TBeaconAttachment; AQuery : string = '') : TBeaconAttachment;overload;
+ Function Create(beaconName: string; aBeaconAttachment : TBeaconAttachment; AQuery : TBeaconsAttachmentscreateOptions) : TBeaconAttachment;overload;
+ Function List(beaconName: string; AQuery : string = '') : TListBeaconAttachmentsResponse;
+ Function List(beaconName: string; AQuery : TBeaconsAttachmentslistOptions) : TListBeaconAttachmentsResponse;
+ Function Delete(attachmentName: string; AQuery : string = '') : TEmpty;
+ Function Delete(attachmentName: string; AQuery : TBeaconsAttachmentsdeleteOptions) : TEmpty;
+ Function BatchDelete(beaconName: string; AQuery : string = '') : TDeleteAttachmentsResponse;
+ Function BatchDelete(beaconName: string; AQuery : TBeaconsAttachmentsbatchDeleteOptions) : TDeleteAttachmentsResponse;
+ end;
+
+
+ { --------------------------------------------------------------------
+ TBeaconsDiagnosticsResource
+ --------------------------------------------------------------------}
+
+
+ //Optional query Options for TBeaconsDiagnosticsResource, method List
+
+ TBeaconsDiagnosticsListOptions = Record
+ pageSize : integer;
+ pageToken : String;
+ alertFilter : String;
+ projectId : String;
+ end;
+
+ TBeaconsDiagnosticsResource = Class(TGoogleResource)
+ Public
+ Class Function ResourceName : String; override;
+ Class Function DefaultAPI : TGoogleAPIClass; override;
+ Function List(beaconName: string; AQuery : string = '') : TListDiagnosticsResponse;
+ Function List(beaconName: string; AQuery : TBeaconsDiagnosticslistOptions) : TListDiagnosticsResponse;
+ end;
+
+
+ { --------------------------------------------------------------------
+ TBeaconsResource
+ --------------------------------------------------------------------}
+
+
+ //Optional query Options for TBeaconsResource, method Register
+
+ TBeaconsRegisterOptions = Record
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TBeaconsResource, method Decommission
+
+ TBeaconsDecommissionOptions = Record
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TBeaconsResource, method Get
+
+ TBeaconsGetOptions = Record
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TBeaconsResource, method List
+
+ TBeaconsListOptions = Record
+ q : String;
+ pageToken : String;
+ pageSize : integer;
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TBeaconsResource, method Update
+
+ TBeaconsUpdateOptions = Record
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TBeaconsResource, method Activate
+
+ TBeaconsActivateOptions = Record
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TBeaconsResource, method Deactivate
+
+ TBeaconsDeactivateOptions = Record
+ projectId : String;
+ end;
+
+ TBeaconsResource = Class(TGoogleResource)
+ Private
+ FAttachmentsInstance : TBeaconsAttachmentsResource;
+ FDiagnosticsInstance : TBeaconsDiagnosticsResource;
+ Function GetAttachmentsInstance : TBeaconsAttachmentsResource;virtual;
+ Function GetDiagnosticsInstance : TBeaconsDiagnosticsResource;virtual;
+ Public
+ Class Function ResourceName : String; override;
+ Class Function DefaultAPI : TGoogleAPIClass; override;
+ Function Register(aBeacon : TBeacon; AQuery : string = '') : TBeacon;
+ Function Register(aBeacon : TBeacon; AQuery : TBeaconsregisterOptions) : TBeacon;
+ Function Decommission(beaconName: string; AQuery : string = '') : TEmpty;
+ Function Decommission(beaconName: string; AQuery : TBeaconsdecommissionOptions) : TEmpty;
+ Function Get(beaconName: string; AQuery : string = '') : TBeacon;
+ Function Get(beaconName: string; AQuery : TBeaconsgetOptions) : TBeacon;
+ Function List(AQuery : string = '') : TListBeaconsResponse;
+ Function List(AQuery : TBeaconslistOptions) : TListBeaconsResponse;
+ Function Update(beaconName: string; aBeacon : TBeacon; AQuery : string = '') : TBeacon;
+ Function Update(beaconName: string; aBeacon : TBeacon; AQuery : TBeaconsupdateOptions) : TBeacon;
+ Function Activate(beaconName: string; AQuery : string = '') : TEmpty;
+ Function Activate(beaconName: string; AQuery : TBeaconsactivateOptions) : TEmpty;
+ Function Deactivate(beaconName: string; AQuery : string = '') : TEmpty;
+ Function Deactivate(beaconName: string; AQuery : TBeaconsdeactivateOptions) : TEmpty;
+ Function CreateAttachmentsResource(AOwner : TComponent) : TBeaconsAttachmentsResource;virtual;overload;
+ Function CreateAttachmentsResource : TBeaconsAttachmentsResource;virtual;overload;
+ Function CreateDiagnosticsResource(AOwner : TComponent) : TBeaconsDiagnosticsResource;virtual;overload;
+ Function CreateDiagnosticsResource : TBeaconsDiagnosticsResource;virtual;overload;
+ Property AttachmentsResource : TBeaconsAttachmentsResource Read GetAttachmentsInstance;
+ Property DiagnosticsResource : TBeaconsDiagnosticsResource Read GetDiagnosticsInstance;
+ end;
+
+
+ { --------------------------------------------------------------------
+ TNamespacesResource
+ --------------------------------------------------------------------}
+
+
+ //Optional query Options for TNamespacesResource, method List
+
+ TNamespacesListOptions = Record
+ projectId : String;
+ end;
+
+
+ //Optional query Options for TNamespacesResource, method Update
+
+ TNamespacesUpdateOptions = Record
+ projectId : String;
+ end;
+
+ TNamespacesResource = Class(TGoogleResource)
+ Public
+ Class Function ResourceName : String; override;
+ Class Function DefaultAPI : TGoogleAPIClass; override;
+ Function List(AQuery : string = '') : TListNamespacesResponse;
+ Function List(AQuery : TNamespaceslistOptions) : TListNamespacesResponse;
+ Function Update(namespaceName: string; aNamespace : TNamespace; AQuery : string = '') : TNamespace;
+ Function Update(namespaceName: string; aNamespace : TNamespace; AQuery : TNamespacesupdateOptions) : TNamespace;
+ end;
+
+
+ { --------------------------------------------------------------------
+ TV1beta1Resource
+ --------------------------------------------------------------------}
+
+ TV1beta1Resource = Class(TGoogleResource)
+ Public
+ Class Function ResourceName : String; override;
+ Class Function DefaultAPI : TGoogleAPIClass; override;
+ Function GetEidparams : TEphemeralIdRegistrationParams;
+ end;
+
+
+ { --------------------------------------------------------------------
+ TBeaconinfoResource
+ --------------------------------------------------------------------}
+
+ TBeaconinfoResource = Class(TGoogleResource)
+ Public
+ Class Function ResourceName : String; override;
+ Class Function DefaultAPI : TGoogleAPIClass; override;
+ Function Getforobserved(aGetInfoForObservedBeaconsRequest : TGetInfoForObservedBeaconsRequest) : TGetInfoForObservedBeaconsResponse;
+ end;
+
+
+ { --------------------------------------------------------------------
+ TProximitybeaconAPI
+ --------------------------------------------------------------------}
+
+ TProximitybeaconAPI = Class(TGoogleAPI)
+ Private
+ FBeaconsAttachmentsInstance : TBeaconsAttachmentsResource;
+ FBeaconsDiagnosticsInstance : TBeaconsDiagnosticsResource;
+ FBeaconsInstance : TBeaconsResource;
+ FNamespacesInstance : TNamespacesResource;
+ FV1beta1Instance : TV1beta1Resource;
+ FBeaconinfoInstance : TBeaconinfoResource;
+ Function GetBeaconsAttachmentsInstance : TBeaconsAttachmentsResource;virtual;
+ Function GetBeaconsDiagnosticsInstance : TBeaconsDiagnosticsResource;virtual;
+ Function GetBeaconsInstance : TBeaconsResource;virtual;
+ Function GetNamespacesInstance : TNamespacesResource;virtual;
+ Function GetV1beta1Instance : TV1beta1Resource;virtual;
+ Function GetBeaconinfoInstance : TBeaconinfoResource;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 CreateBeaconsAttachmentsResource(AOwner : TComponent) : TBeaconsAttachmentsResource;virtual;overload;
+ Function CreateBeaconsAttachmentsResource : TBeaconsAttachmentsResource;virtual;overload;
+ Function CreateBeaconsDiagnosticsResource(AOwner : TComponent) : TBeaconsDiagnosticsResource;virtual;overload;
+ Function CreateBeaconsDiagnosticsResource : TBeaconsDiagnosticsResource;virtual;overload;
+ Function CreateBeaconsResource(AOwner : TComponent) : TBeaconsResource;virtual;overload;
+ Function CreateBeaconsResource : TBeaconsResource;virtual;overload;
+ Function CreateNamespacesResource(AOwner : TComponent) : TNamespacesResource;virtual;overload;
+ Function CreateNamespacesResource : TNamespacesResource;virtual;overload;
+ Function CreateV1beta1Resource(AOwner : TComponent) : TV1beta1Resource;virtual;overload;
+ Function CreateV1beta1Resource : TV1beta1Resource;virtual;overload;
+ Function CreateBeaconinfoResource(AOwner : TComponent) : TBeaconinfoResource;virtual;overload;
+ Function CreateBeaconinfoResource : TBeaconinfoResource;virtual;overload;
+ //Add default on-demand instances for resources
+ Property BeaconsAttachmentsResource : TBeaconsAttachmentsResource Read GetBeaconsAttachmentsInstance;
+ Property BeaconsDiagnosticsResource : TBeaconsDiagnosticsResource Read GetBeaconsDiagnosticsInstance;
+ Property BeaconsResource : TBeaconsResource Read GetBeaconsInstance;
+ Property NamespacesResource : TNamespacesResource Read GetNamespacesInstance;
+ Property V1beta1Resource : TV1beta1Resource Read GetV1beta1Instance;
+ Property BeaconinfoResource : TBeaconinfoResource Read GetBeaconinfoInstance;
+ end;
+
+implementation
+
+
+{ --------------------------------------------------------------------
+ TBeaconTypeproperties
+ --------------------------------------------------------------------}
+
+
+Class Function TBeaconTypeproperties.AllowAdditionalProperties : Boolean;
+
+begin
+ Result:=True;
+end;
+
+
+
+{ --------------------------------------------------------------------
+ TBeacon
+ --------------------------------------------------------------------}
+
+
+Procedure TBeacon.SetbeaconName(AIndex : Integer; const AValue : String);
+
+begin
+ If (FbeaconName=AValue) then exit;
+ FbeaconName:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.SetadvertisedId(AIndex : Integer; const AValue : TAdvertisedId);
+
+begin
+ If (FadvertisedId=AValue) then exit;
+ FadvertisedId:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.Setstatus(AIndex : Integer; const AValue : String);
+
+begin
+ If (Fstatus=AValue) then exit;
+ Fstatus:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.SetplaceId(AIndex : Integer; const AValue : String);
+
+begin
+ If (FplaceId=AValue) then exit;
+ FplaceId:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.SetlatLng(AIndex : Integer; const AValue : TLatLng);
+
+begin
+ If (FlatLng=AValue) then exit;
+ FlatLng:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.SetindoorLevel(AIndex : Integer; const AValue : TIndoorLevel);
+
+begin
+ If (FindoorLevel=AValue) then exit;
+ FindoorLevel:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.SetexpectedStability(AIndex : Integer; const AValue : String);
+
+begin
+ If (FexpectedStability=AValue) then exit;
+ FexpectedStability:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.Setdescription(AIndex : Integer; const AValue : String);
+
+begin
+ If (Fdescription=AValue) then exit;
+ Fdescription:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.Setproperties(AIndex : Integer; const AValue : TBeaconTypeproperties);
+
+begin
+ If (Fproperties=AValue) then exit;
+ Fproperties:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.SetephemeralIdRegistration(AIndex : Integer; const AValue : TEphemeralIdRegistration);
+
+begin
+ If (FephemeralIdRegistration=AValue) then exit;
+ FephemeralIdRegistration:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeacon.SetprovisioningKey(AIndex : Integer; const AValue : String);
+
+begin
+ If (FprovisioningKey=AValue) then exit;
+ FprovisioningKey:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TAdvertisedId
+ --------------------------------------------------------------------}
+
+
+Procedure TAdvertisedId.Set_type(AIndex : Integer; const AValue : String);
+
+begin
+ If (F_type=AValue) then exit;
+ F_type:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TAdvertisedId.Setid(AIndex : Integer; const AValue : String);
+
+begin
+ If (Fid=AValue) then exit;
+ Fid:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Class Function TAdvertisedId.ExportPropertyName(Const AName : String) :String;
+
+begin
+ Case AName of
+ '_type' : Result:='type';
+ else
+ Result:=Inherited ExportPropertyName(AName);
+ end;
+end;
+
+
+
+
+{ --------------------------------------------------------------------
+ TLatLng
+ --------------------------------------------------------------------}
+
+
+Procedure TLatLng.Setlatitude(AIndex : Integer; const AValue : double);
+
+begin
+ If (Flatitude=AValue) then exit;
+ Flatitude:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TLatLng.Setlongitude(AIndex : Integer; const AValue : double);
+
+begin
+ If (Flongitude=AValue) then exit;
+ Flongitude:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TIndoorLevel
+ --------------------------------------------------------------------}
+
+
+Procedure TIndoorLevel.Setname(AIndex : Integer; const AValue : String);
+
+begin
+ If (Fname=AValue) then exit;
+ Fname:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TEphemeralIdRegistration
+ --------------------------------------------------------------------}
+
+
+Procedure TEphemeralIdRegistration.SetbeaconEcdhPublicKey(AIndex : Integer; const AValue : String);
+
+begin
+ If (FbeaconEcdhPublicKey=AValue) then exit;
+ FbeaconEcdhPublicKey:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TEphemeralIdRegistration.SetserviceEcdhPublicKey(AIndex : Integer; const AValue : String);
+
+begin
+ If (FserviceEcdhPublicKey=AValue) then exit;
+ FserviceEcdhPublicKey:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TEphemeralIdRegistration.SetbeaconIdentityKey(AIndex : Integer; const AValue : String);
+
+begin
+ If (FbeaconIdentityKey=AValue) then exit;
+ FbeaconIdentityKey:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TEphemeralIdRegistration.SetrotationPeriodExponent(AIndex : Integer; const AValue : integer);
+
+begin
+ If (FrotationPeriodExponent=AValue) then exit;
+ FrotationPeriodExponent:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TEphemeralIdRegistration.SetinitialClockValue(AIndex : Integer; const AValue : String);
+
+begin
+ If (FinitialClockValue=AValue) then exit;
+ FinitialClockValue:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TEphemeralIdRegistration.SetinitialEid(AIndex : Integer; const AValue : String);
+
+begin
+ If (FinitialEid=AValue) then exit;
+ FinitialEid:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TEmpty
+ --------------------------------------------------------------------}
+
+
+
+
+{ --------------------------------------------------------------------
+ TListBeaconsResponse
+ --------------------------------------------------------------------}
+
+
+Procedure TListBeaconsResponse.Setbeacons(AIndex : Integer; const AValue : TListBeaconsResponseTypebeaconsArray);
+
+begin
+ If (Fbeacons=AValue) then exit;
+ Fbeacons:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TListBeaconsResponse.SetnextPageToken(AIndex : Integer; const AValue : String);
+
+begin
+ If (FnextPageToken=AValue) then exit;
+ FnextPageToken:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TListBeaconsResponse.SettotalCount(AIndex : Integer; const AValue : String);
+
+begin
+ If (FtotalCount=AValue) then exit;
+ FtotalCount:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+//2.6.4. bug workaround
+{$IFDEF VER2_6}
+Procedure TListBeaconsResponse.SetArrayLength(Const AName : String; ALength : Longint);
+
+begin
+ Case AName of
+ 'beacons' : SetLength(Fbeacons,ALength);
+ else
+ Inherited SetArrayLength(AName,ALength);
+ end;
+end;
+{$ENDIF VER2_6}
+
+
+
+
+{ --------------------------------------------------------------------
+ TBeaconAttachment
+ --------------------------------------------------------------------}
+
+
+Procedure TBeaconAttachment.SetattachmentName(AIndex : Integer; const AValue : String);
+
+begin
+ If (FattachmentName=AValue) then exit;
+ FattachmentName:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeaconAttachment.SetnamespacedType(AIndex : Integer; const AValue : String);
+
+begin
+ If (FnamespacedType=AValue) then exit;
+ FnamespacedType:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeaconAttachment.Setdata(AIndex : Integer; const AValue : String);
+
+begin
+ If (Fdata=AValue) then exit;
+ Fdata:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TListBeaconAttachmentsResponse
+ --------------------------------------------------------------------}
+
+
+Procedure TListBeaconAttachmentsResponse.Setattachments(AIndex : Integer; const AValue : TListBeaconAttachmentsResponseTypeattachmentsArray);
+
+begin
+ If (Fattachments=AValue) then exit;
+ Fattachments:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+//2.6.4. bug workaround
+{$IFDEF VER2_6}
+Procedure TListBeaconAttachmentsResponse.SetArrayLength(Const AName : String; ALength : Longint);
+
+begin
+ Case AName of
+ 'attachments' : SetLength(Fattachments,ALength);
+ else
+ Inherited SetArrayLength(AName,ALength);
+ end;
+end;
+{$ENDIF VER2_6}
+
+
+
+
+{ --------------------------------------------------------------------
+ TDeleteAttachmentsResponse
+ --------------------------------------------------------------------}
+
+
+Procedure TDeleteAttachmentsResponse.SetnumDeleted(AIndex : Integer; const AValue : integer);
+
+begin
+ If (FnumDeleted=AValue) then exit;
+ FnumDeleted:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TListNamespacesResponse
+ --------------------------------------------------------------------}
+
+
+Procedure TListNamespacesResponse.Setnamespaces(AIndex : Integer; const AValue : TListNamespacesResponseTypenamespacesArray);
+
+begin
+ If (Fnamespaces=AValue) then exit;
+ Fnamespaces:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+//2.6.4. bug workaround
+{$IFDEF VER2_6}
+Procedure TListNamespacesResponse.SetArrayLength(Const AName : String; ALength : Longint);
+
+begin
+ Case AName of
+ 'namespaces' : SetLength(Fnamespaces,ALength);
+ else
+ Inherited SetArrayLength(AName,ALength);
+ end;
+end;
+{$ENDIF VER2_6}
+
+
+
+
+{ --------------------------------------------------------------------
+ TNamespace
+ --------------------------------------------------------------------}
+
+
+Procedure TNamespace.SetnamespaceName(AIndex : Integer; const AValue : String);
+
+begin
+ If (FnamespaceName=AValue) then exit;
+ FnamespaceName:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TNamespace.SetservingVisibility(AIndex : Integer; const AValue : String);
+
+begin
+ If (FservingVisibility=AValue) then exit;
+ FservingVisibility:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TEphemeralIdRegistrationParams
+ --------------------------------------------------------------------}
+
+
+Procedure TEphemeralIdRegistrationParams.SetserviceEcdhPublicKey(AIndex : Integer; const AValue : String);
+
+begin
+ If (FserviceEcdhPublicKey=AValue) then exit;
+ FserviceEcdhPublicKey:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TEphemeralIdRegistrationParams.SetminRotationPeriodExponent(AIndex : Integer; const AValue : integer);
+
+begin
+ If (FminRotationPeriodExponent=AValue) then exit;
+ FminRotationPeriodExponent:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TEphemeralIdRegistrationParams.SetmaxRotationPeriodExponent(AIndex : Integer; const AValue : integer);
+
+begin
+ If (FmaxRotationPeriodExponent=AValue) then exit;
+ FmaxRotationPeriodExponent:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TListDiagnosticsResponse
+ --------------------------------------------------------------------}
+
+
+Procedure TListDiagnosticsResponse.Setdiagnostics(AIndex : Integer; const AValue : TListDiagnosticsResponseTypediagnosticsArray);
+
+begin
+ If (Fdiagnostics=AValue) then exit;
+ Fdiagnostics:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TListDiagnosticsResponse.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 TListDiagnosticsResponse.SetArrayLength(Const AName : String; ALength : Longint);
+
+begin
+ Case AName of
+ 'diagnostics' : SetLength(Fdiagnostics,ALength);
+ else
+ Inherited SetArrayLength(AName,ALength);
+ end;
+end;
+{$ENDIF VER2_6}
+
+
+
+
+{ --------------------------------------------------------------------
+ TDiagnostics
+ --------------------------------------------------------------------}
+
+
+Procedure TDiagnostics.SetbeaconName(AIndex : Integer; const AValue : String);
+
+begin
+ If (FbeaconName=AValue) then exit;
+ FbeaconName:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TDiagnostics.SetestimatedLowBatteryDate(AIndex : Integer; const AValue : TDate);
+
+begin
+ If (FestimatedLowBatteryDate=AValue) then exit;
+ FestimatedLowBatteryDate:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TDiagnostics.Setalerts(AIndex : Integer; const AValue : TStringArray);
+
+begin
+ If (Falerts=AValue) then exit;
+ Falerts:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+//2.6.4. bug workaround
+{$IFDEF VER2_6}
+Procedure TDiagnostics.SetArrayLength(Const AName : String; ALength : Longint);
+
+begin
+ Case AName of
+ 'alerts' : SetLength(Falerts,ALength);
+ else
+ Inherited SetArrayLength(AName,ALength);
+ end;
+end;
+{$ENDIF VER2_6}
+
+
+
+
+{ --------------------------------------------------------------------
+ TDate
+ --------------------------------------------------------------------}
+
+
+Procedure TDate.Setyear(AIndex : Integer; const AValue : integer);
+
+begin
+ If (Fyear=AValue) then exit;
+ Fyear:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TDate.Setmonth(AIndex : Integer; const AValue : integer);
+
+begin
+ If (Fmonth=AValue) then exit;
+ Fmonth:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TDate.Setday(AIndex : Integer; const AValue : integer);
+
+begin
+ If (Fday=AValue) then exit;
+ Fday:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TGetInfoForObservedBeaconsRequest
+ --------------------------------------------------------------------}
+
+
+Procedure TGetInfoForObservedBeaconsRequest.Setobservations(AIndex : Integer; const AValue : TGetInfoForObservedBeaconsRequestTypeobservationsArray);
+
+begin
+ If (Fobservations=AValue) then exit;
+ Fobservations:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TGetInfoForObservedBeaconsRequest.SetnamespacedTypes(AIndex : Integer; const AValue : TStringArray);
+
+begin
+ If (FnamespacedTypes=AValue) then exit;
+ FnamespacedTypes:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+//2.6.4. bug workaround
+{$IFDEF VER2_6}
+Procedure TGetInfoForObservedBeaconsRequest.SetArrayLength(Const AName : String; ALength : Longint);
+
+begin
+ Case AName of
+ 'observations' : SetLength(Fobservations,ALength);
+ 'namespacedtypes' : SetLength(FnamespacedTypes,ALength);
+ else
+ Inherited SetArrayLength(AName,ALength);
+ end;
+end;
+{$ENDIF VER2_6}
+
+
+
+
+{ --------------------------------------------------------------------
+ TObservation
+ --------------------------------------------------------------------}
+
+
+Procedure TObservation.SetadvertisedId(AIndex : Integer; const AValue : TAdvertisedId);
+
+begin
+ If (FadvertisedId=AValue) then exit;
+ FadvertisedId:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TObservation.Settelemetry(AIndex : Integer; const AValue : String);
+
+begin
+ If (Ftelemetry=AValue) then exit;
+ Ftelemetry:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TObservation.SettimestampMs(AIndex : Integer; const AValue : String);
+
+begin
+ If (FtimestampMs=AValue) then exit;
+ FtimestampMs:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TGetInfoForObservedBeaconsResponse
+ --------------------------------------------------------------------}
+
+
+Procedure TGetInfoForObservedBeaconsResponse.Setbeacons(AIndex : Integer; const AValue : TGetInfoForObservedBeaconsResponseTypebeaconsArray);
+
+begin
+ If (Fbeacons=AValue) then exit;
+ Fbeacons:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+//2.6.4. bug workaround
+{$IFDEF VER2_6}
+Procedure TGetInfoForObservedBeaconsResponse.SetArrayLength(Const AName : String; ALength : Longint);
+
+begin
+ Case AName of
+ 'beacons' : SetLength(Fbeacons,ALength);
+ else
+ Inherited SetArrayLength(AName,ALength);
+ end;
+end;
+{$ENDIF VER2_6}
+
+
+
+
+{ --------------------------------------------------------------------
+ TBeaconInfo
+ --------------------------------------------------------------------}
+
+
+Procedure TBeaconInfo.SetadvertisedId(AIndex : Integer; const AValue : TAdvertisedId);
+
+begin
+ If (FadvertisedId=AValue) then exit;
+ FadvertisedId:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeaconInfo.SetbeaconName(AIndex : Integer; const AValue : String);
+
+begin
+ If (FbeaconName=AValue) then exit;
+ FbeaconName:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TBeaconInfo.Setattachments(AIndex : Integer; const AValue : TBeaconInfoTypeattachmentsArray);
+
+begin
+ If (Fattachments=AValue) then exit;
+ Fattachments:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+//2.6.4. bug workaround
+{$IFDEF VER2_6}
+Procedure TBeaconInfo.SetArrayLength(Const AName : String; ALength : Longint);
+
+begin
+ Case AName of
+ 'attachments' : SetLength(Fattachments,ALength);
+ else
+ Inherited SetArrayLength(AName,ALength);
+ end;
+end;
+{$ENDIF VER2_6}
+
+
+
+
+{ --------------------------------------------------------------------
+ TAttachmentInfo
+ --------------------------------------------------------------------}
+
+
+Procedure TAttachmentInfo.SetnamespacedType(AIndex : Integer; const AValue : String);
+
+begin
+ If (FnamespacedType=AValue) then exit;
+ FnamespacedType:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+Procedure TAttachmentInfo.Setdata(AIndex : Integer; const AValue : String);
+
+begin
+ If (Fdata=AValue) then exit;
+ Fdata:=AValue;
+ MarkPropertyChanged(AIndex);
+end;
+
+
+
+
+
+{ --------------------------------------------------------------------
+ TBeaconsAttachmentsResource
+ --------------------------------------------------------------------}
+
+
+Class Function TBeaconsAttachmentsResource.ResourceName : String;
+
+begin
+ Result:='attachments';
+end;
+
+Class Function TBeaconsAttachmentsResource.DefaultAPI : TGoogleAPIClass;
+
+begin
+ Result:=TproximitybeaconAPI;
+end;
+
+Function TBeaconsAttachmentsResource.Create(beaconName: string; aBeaconAttachment : TBeaconAttachment; AQuery : string = '') : TBeaconAttachment;
+
+Const
+ _HTTPMethod = 'POST';
+ _Path = 'v1beta1/{+beaconName}/attachments';
+ _Methodid = 'proximitybeacon.beacons.attachments.create';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['beaconName',beaconName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,aBeaconAttachment,TBeaconAttachment) as TBeaconAttachment;
+end;
+
+
+Function TBeaconsAttachmentsResource.Create(beaconName: string; aBeaconAttachment : TBeaconAttachment; AQuery : TBeaconsAttachmentscreateOptions) : TBeaconAttachment;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=Create(beaconName,aBeaconAttachment,_Q);
+end;
+
+Function TBeaconsAttachmentsResource.List(beaconName: string; AQuery : string = '') : TListBeaconAttachmentsResponse;
+
+Const
+ _HTTPMethod = 'GET';
+ _Path = 'v1beta1/{+beaconName}/attachments';
+ _Methodid = 'proximitybeacon.beacons.attachments.list';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['beaconName',beaconName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TListBeaconAttachmentsResponse) as TListBeaconAttachmentsResponse;
+end;
+
+
+Function TBeaconsAttachmentsResource.List(beaconName: string; AQuery : TBeaconsAttachmentslistOptions) : TListBeaconAttachmentsResponse;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'namespacedType',AQuery.namespacedType);
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=List(beaconName,_Q);
+end;
+
+Function TBeaconsAttachmentsResource.Delete(attachmentName: string; AQuery : string = '') : TEmpty;
+
+Const
+ _HTTPMethod = 'DELETE';
+ _Path = 'v1beta1/{+attachmentName}';
+ _Methodid = 'proximitybeacon.beacons.attachments.delete';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['attachmentName',attachmentName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TEmpty) as TEmpty;
+end;
+
+
+Function TBeaconsAttachmentsResource.Delete(attachmentName: string; AQuery : TBeaconsAttachmentsdeleteOptions) : TEmpty;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=Delete(attachmentName,_Q);
+end;
+
+Function TBeaconsAttachmentsResource.BatchDelete(beaconName: string; AQuery : string = '') : TDeleteAttachmentsResponse;
+
+Const
+ _HTTPMethod = 'POST';
+ _Path = 'v1beta1/{+beaconName}/attachments:batchDelete';
+ _Methodid = 'proximitybeacon.beacons.attachments.batchDelete';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['beaconName',beaconName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TDeleteAttachmentsResponse) as TDeleteAttachmentsResponse;
+end;
+
+
+Function TBeaconsAttachmentsResource.BatchDelete(beaconName: string; AQuery : TBeaconsAttachmentsbatchDeleteOptions) : TDeleteAttachmentsResponse;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'namespacedType',AQuery.namespacedType);
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=BatchDelete(beaconName,_Q);
+end;
+
+
+
+{ --------------------------------------------------------------------
+ TBeaconsDiagnosticsResource
+ --------------------------------------------------------------------}
+
+
+Class Function TBeaconsDiagnosticsResource.ResourceName : String;
+
+begin
+ Result:='diagnostics';
+end;
+
+Class Function TBeaconsDiagnosticsResource.DefaultAPI : TGoogleAPIClass;
+
+begin
+ Result:=TproximitybeaconAPI;
+end;
+
+Function TBeaconsDiagnosticsResource.List(beaconName: string; AQuery : string = '') : TListDiagnosticsResponse;
+
+Const
+ _HTTPMethod = 'GET';
+ _Path = 'v1beta1/{+beaconName}/diagnostics';
+ _Methodid = 'proximitybeacon.beacons.diagnostics.list';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['beaconName',beaconName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TListDiagnosticsResponse) as TListDiagnosticsResponse;
+end;
+
+
+Function TBeaconsDiagnosticsResource.List(beaconName: string; AQuery : TBeaconsDiagnosticslistOptions) : TListDiagnosticsResponse;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'pageSize',AQuery.pageSize);
+ AddToQuery(_Q,'pageToken',AQuery.pageToken);
+ AddToQuery(_Q,'alertFilter',AQuery.alertFilter);
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=List(beaconName,_Q);
+end;
+
+
+
+{ --------------------------------------------------------------------
+ TBeaconsResource
+ --------------------------------------------------------------------}
+
+
+Class Function TBeaconsResource.ResourceName : String;
+
+begin
+ Result:='beacons';
+end;
+
+Class Function TBeaconsResource.DefaultAPI : TGoogleAPIClass;
+
+begin
+ Result:=TproximitybeaconAPI;
+end;
+
+Function TBeaconsResource.Register(aBeacon : TBeacon; AQuery : string = '') : TBeacon;
+
+Const
+ _HTTPMethod = 'POST';
+ _Path = 'v1beta1/beacons:register';
+ _Methodid = 'proximitybeacon.beacons.register';
+
+begin
+ Result:=ServiceCall(_HTTPMethod,_Path,AQuery,aBeacon,TBeacon) as TBeacon;
+end;
+
+
+Function TBeaconsResource.Register(aBeacon : TBeacon; AQuery : TBeaconsregisterOptions) : TBeacon;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=Register(aBeacon,_Q);
+end;
+
+Function TBeaconsResource.Decommission(beaconName: string; AQuery : string = '') : TEmpty;
+
+Const
+ _HTTPMethod = 'POST';
+ _Path = 'v1beta1/{+beaconName}:decommission';
+ _Methodid = 'proximitybeacon.beacons.decommission';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['beaconName',beaconName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TEmpty) as TEmpty;
+end;
+
+
+Function TBeaconsResource.Decommission(beaconName: string; AQuery : TBeaconsdecommissionOptions) : TEmpty;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=Decommission(beaconName,_Q);
+end;
+
+Function TBeaconsResource.Get(beaconName: string; AQuery : string = '') : TBeacon;
+
+Const
+ _HTTPMethod = 'GET';
+ _Path = 'v1beta1/{+beaconName}';
+ _Methodid = 'proximitybeacon.beacons.get';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['beaconName',beaconName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TBeacon) as TBeacon;
+end;
+
+
+Function TBeaconsResource.Get(beaconName: string; AQuery : TBeaconsgetOptions) : TBeacon;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=Get(beaconName,_Q);
+end;
+
+Function TBeaconsResource.List(AQuery : string = '') : TListBeaconsResponse;
+
+Const
+ _HTTPMethod = 'GET';
+ _Path = 'v1beta1/beacons';
+ _Methodid = 'proximitybeacon.beacons.list';
+
+begin
+ Result:=ServiceCall(_HTTPMethod,_Path,AQuery,Nil,TListBeaconsResponse) as TListBeaconsResponse;
+end;
+
+
+Function TBeaconsResource.List(AQuery : TBeaconslistOptions) : TListBeaconsResponse;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'q',AQuery.q);
+ AddToQuery(_Q,'pageToken',AQuery.pageToken);
+ AddToQuery(_Q,'pageSize',AQuery.pageSize);
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=List(_Q);
+end;
+
+Function TBeaconsResource.Update(beaconName: string; aBeacon : TBeacon; AQuery : string = '') : TBeacon;
+
+Const
+ _HTTPMethod = 'PUT';
+ _Path = 'v1beta1/{+beaconName}';
+ _Methodid = 'proximitybeacon.beacons.update';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['beaconName',beaconName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,aBeacon,TBeacon) as TBeacon;
+end;
+
+
+Function TBeaconsResource.Update(beaconName: string; aBeacon : TBeacon; AQuery : TBeaconsupdateOptions) : TBeacon;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=Update(beaconName,aBeacon,_Q);
+end;
+
+Function TBeaconsResource.Activate(beaconName: string; AQuery : string = '') : TEmpty;
+
+Const
+ _HTTPMethod = 'POST';
+ _Path = 'v1beta1/{+beaconName}:activate';
+ _Methodid = 'proximitybeacon.beacons.activate';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['beaconName',beaconName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TEmpty) as TEmpty;
+end;
+
+
+Function TBeaconsResource.Activate(beaconName: string; AQuery : TBeaconsactivateOptions) : TEmpty;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=Activate(beaconName,_Q);
+end;
+
+Function TBeaconsResource.Deactivate(beaconName: string; AQuery : string = '') : TEmpty;
+
+Const
+ _HTTPMethod = 'POST';
+ _Path = 'v1beta1/{+beaconName}:deactivate';
+ _Methodid = 'proximitybeacon.beacons.deactivate';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['beaconName',beaconName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TEmpty) as TEmpty;
+end;
+
+
+Function TBeaconsResource.Deactivate(beaconName: string; AQuery : TBeaconsdeactivateOptions) : TEmpty;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=Deactivate(beaconName,_Q);
+end;
+
+
+
+Function TBeaconsResource.GetAttachmentsInstance : TBeaconsAttachmentsResource;
+
+begin
+ if (FAttachmentsInstance=Nil) then
+ FAttachmentsInstance:=CreateAttachmentsResource;
+ Result:=FAttachmentsInstance;
+end;
+
+Function TBeaconsResource.CreateAttachmentsResource : TBeaconsAttachmentsResource;
+
+begin
+ Result:=CreateAttachmentsResource(Self);
+end;
+
+
+Function TBeaconsResource.CreateAttachmentsResource(AOwner : TComponent) : TBeaconsAttachmentsResource;
+
+begin
+ Result:=TBeaconsAttachmentsResource.Create(AOwner);
+ Result.API:=Self.API;
+end;
+
+
+
+Function TBeaconsResource.GetDiagnosticsInstance : TBeaconsDiagnosticsResource;
+
+begin
+ if (FDiagnosticsInstance=Nil) then
+ FDiagnosticsInstance:=CreateDiagnosticsResource;
+ Result:=FDiagnosticsInstance;
+end;
+
+Function TBeaconsResource.CreateDiagnosticsResource : TBeaconsDiagnosticsResource;
+
+begin
+ Result:=CreateDiagnosticsResource(Self);
+end;
+
+
+Function TBeaconsResource.CreateDiagnosticsResource(AOwner : TComponent) : TBeaconsDiagnosticsResource;
+
+begin
+ Result:=TBeaconsDiagnosticsResource.Create(AOwner);
+ Result.API:=Self.API;
+end;
+
+
+
+{ --------------------------------------------------------------------
+ TNamespacesResource
+ --------------------------------------------------------------------}
+
+
+Class Function TNamespacesResource.ResourceName : String;
+
+begin
+ Result:='namespaces';
+end;
+
+Class Function TNamespacesResource.DefaultAPI : TGoogleAPIClass;
+
+begin
+ Result:=TproximitybeaconAPI;
+end;
+
+Function TNamespacesResource.List(AQuery : string = '') : TListNamespacesResponse;
+
+Const
+ _HTTPMethod = 'GET';
+ _Path = 'v1beta1/namespaces';
+ _Methodid = 'proximitybeacon.namespaces.list';
+
+begin
+ Result:=ServiceCall(_HTTPMethod,_Path,AQuery,Nil,TListNamespacesResponse) as TListNamespacesResponse;
+end;
+
+
+Function TNamespacesResource.List(AQuery : TNamespaceslistOptions) : TListNamespacesResponse;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=List(_Q);
+end;
+
+Function TNamespacesResource.Update(namespaceName: string; aNamespace : TNamespace; AQuery : string = '') : TNamespace;
+
+Const
+ _HTTPMethod = 'PUT';
+ _Path = 'v1beta1/{+namespaceName}';
+ _Methodid = 'proximitybeacon.namespaces.update';
+
+Var
+ _P : String;
+
+begin
+ _P:=SubstitutePath(_Path,['namespaceName',namespaceName]);
+ Result:=ServiceCall(_HTTPMethod,_P,AQuery,aNamespace,TNamespace) as TNamespace;
+end;
+
+
+Function TNamespacesResource.Update(namespaceName: string; aNamespace : TNamespace; AQuery : TNamespacesupdateOptions) : TNamespace;
+
+Var
+ _Q : String;
+
+begin
+ _Q:='';
+ AddToQuery(_Q,'projectId',AQuery.projectId);
+ Result:=Update(namespaceName,aNamespace,_Q);
+end;
+
+
+
+{ --------------------------------------------------------------------
+ TV1beta1Resource
+ --------------------------------------------------------------------}
+
+
+Class Function TV1beta1Resource.ResourceName : String;
+
+begin
+ Result:='v1beta1';
+end;
+
+Class Function TV1beta1Resource.DefaultAPI : TGoogleAPIClass;
+
+begin
+ Result:=TproximitybeaconAPI;
+end;
+
+Function TV1beta1Resource.GetEidparams : TEphemeralIdRegistrationParams;
+
+Const
+ _HTTPMethod = 'GET';
+ _Path = 'v1beta1/eidparams';
+ _Methodid = 'proximitybeacon.getEidparams';
+
+begin
+ Result:=ServiceCall(_HTTPMethod,_Path,'',Nil,TEphemeralIdRegistrationParams) as TEphemeralIdRegistrationParams;
+end;
+
+
+
+{ --------------------------------------------------------------------
+ TBeaconinfoResource
+ --------------------------------------------------------------------}
+
+
+Class Function TBeaconinfoResource.ResourceName : String;
+
+begin
+ Result:='beaconinfo';
+end;
+
+Class Function TBeaconinfoResource.DefaultAPI : TGoogleAPIClass;
+
+begin
+ Result:=TproximitybeaconAPI;
+end;
+
+Function TBeaconinfoResource.Getforobserved(aGetInfoForObservedBeaconsRequest : TGetInfoForObservedBeaconsRequest) : TGetInfoForObservedBeaconsResponse;
+
+Const
+ _HTTPMethod = 'POST';
+ _Path = 'v1beta1/beaconinfo:getforobserved';
+ _Methodid = 'proximitybeacon.beaconinfo.getforobserved';
+
+begin
+ Result:=ServiceCall(_HTTPMethod,_Path,'',aGetInfoForObservedBeaconsRequest,TGetInfoForObservedBeaconsResponse) as TGetInfoForObservedBeaconsResponse;
+end;
+
+
+
+{ --------------------------------------------------------------------
+ TProximitybeaconAPI
+ --------------------------------------------------------------------}
+
+Class Function TProximitybeaconAPI.APIName : String;
+
+begin
+ Result:='proximitybeacon';
+end;
+
+Class Function TProximitybeaconAPI.APIVersion : String;
+
+begin
+ Result:='v1beta1';
+end;
+
+Class Function TProximitybeaconAPI.APIRevision : String;
+
+begin
+ Result:='20160429';
+end;
+
+Class Function TProximitybeaconAPI.APIID : String;
+
+begin
+ Result:='proximitybeacon:v1beta1';
+end;
+
+Class Function TProximitybeaconAPI.APITitle : String;
+
+begin
+ Result:='Google Proximity Beacon API';
+end;
+
+Class Function TProximitybeaconAPI.APIDescription : String;
+
+begin
+ Result:='Registers, manages, indexes, and searches beacons.';
+end;
+
+Class Function TProximitybeaconAPI.APIOwnerDomain : String;
+
+begin
+ Result:='google.com';
+end;
+
+Class Function TProximitybeaconAPI.APIOwnerName : String;
+
+begin
+ Result:='Google';
+end;
+
+Class Function TProximitybeaconAPI.APIIcon16 : String;
+
+begin
+ Result:='http://www.google.com/images/icons/product/search-16.gif';
+end;
+
+Class Function TProximitybeaconAPI.APIIcon32 : String;
+
+begin
+ Result:='http://www.google.com/images/icons/product/search-32.gif';
+end;
+
+Class Function TProximitybeaconAPI.APIdocumentationLink : String;
+
+begin
+ Result:='https://developers.google.com/beacons/proximity/';
+end;
+
+Class Function TProximitybeaconAPI.APIrootUrl : string;
+
+begin
+ Result:='https://proximitybeacon.googleapis.com/';
+end;
+
+Class Function TProximitybeaconAPI.APIbasePath : string;
+
+begin
+ Result:='';
+end;
+
+Class Function TProximitybeaconAPI.APIbaseURL : String;
+
+begin
+ Result:='https://proximitybeacon.googleapis.com/';
+end;
+
+Class Function TProximitybeaconAPI.APIProtocol : string;
+
+begin
+ Result:='rest';
+end;
+
+Class Function TProximitybeaconAPI.APIservicePath : string;
+
+begin
+ Result:='';
+end;
+
+Class Function TProximitybeaconAPI.APIbatchPath : String;
+
+begin
+ Result:='batch';
+end;
+
+Class Function TProximitybeaconAPI.APIAuthScopes : TScopeInfoArray;
+
+begin
+ SetLength(Result,1);
+ Result[0].Name:='https://www.googleapis.com/auth/userlocation.beacon.registry';
+ Result[0].Description:='View and modify your beacons';
+
+end;
+
+Class Function TProximitybeaconAPI.APINeedsAuth : Boolean;
+
+begin
+ Result:=True;
+end;
+
+Class Procedure TProximitybeaconAPI.RegisterAPIResources;
+
+begin
+ TBeaconTypeproperties.RegisterObject;
+ TBeacon.RegisterObject;
+ TAdvertisedId.RegisterObject;
+ TLatLng.RegisterObject;
+ TIndoorLevel.RegisterObject;
+ TEphemeralIdRegistration.RegisterObject;
+ TEmpty.RegisterObject;
+ TListBeaconsResponse.RegisterObject;
+ TBeaconAttachment.RegisterObject;
+ TListBeaconAttachmentsResponse.RegisterObject;
+ TDeleteAttachmentsResponse.RegisterObject;
+ TListNamespacesResponse.RegisterObject;
+ TNamespace.RegisterObject;
+ TEphemeralIdRegistrationParams.RegisterObject;
+ TListDiagnosticsResponse.RegisterObject;
+ TDiagnostics.RegisterObject;
+ TDate.RegisterObject;
+ TGetInfoForObservedBeaconsRequest.RegisterObject;
+ TObservation.RegisterObject;
+ TGetInfoForObservedBeaconsResponse.RegisterObject;
+ TBeaconInfo.RegisterObject;
+ TAttachmentInfo.RegisterObject;
+end;
+
+
+Function TProximitybeaconAPI.GetBeaconsAttachmentsInstance : TBeaconsAttachmentsResource;
+
+begin
+ if (FBeaconsAttachmentsInstance=Nil) then
+ FBeaconsAttachmentsInstance:=CreateBeaconsAttachmentsResource;
+ Result:=FBeaconsAttachmentsInstance;
+end;
+
+Function TProximitybeaconAPI.CreateBeaconsAttachmentsResource : TBeaconsAttachmentsResource;
+
+begin
+ Result:=CreateBeaconsAttachmentsResource(Self);
+end;
+
+
+Function TProximitybeaconAPI.CreateBeaconsAttachmentsResource(AOwner : TComponent) : TBeaconsAttachmentsResource;
+
+begin
+ Result:=TBeaconsAttachmentsResource.Create(AOwner);
+ Result.API:=Self.API;
+end;
+
+
+
+Function TProximitybeaconAPI.GetBeaconsDiagnosticsInstance : TBeaconsDiagnosticsResource;
+
+begin
+ if (FBeaconsDiagnosticsInstance=Nil) then
+ FBeaconsDiagnosticsInstance:=CreateBeaconsDiagnosticsResource;
+ Result:=FBeaconsDiagnosticsInstance;
+end;
+
+Function TProximitybeaconAPI.CreateBeaconsDiagnosticsResource : TBeaconsDiagnosticsResource;
+
+begin
+ Result:=CreateBeaconsDiagnosticsResource(Self);
+end;
+
+
+Function TProximitybeaconAPI.CreateBeaconsDiagnosticsResource(AOwner : TComponent) : TBeaconsDiagnosticsResource;
+
+begin
+ Result:=TBeaconsDiagnosticsResource.Create(AOwner);
+ Result.API:=Self.API;
+end;
+
+
+
+Function TProximitybeaconAPI.GetBeaconsInstance : TBeaconsResource;
+
+begin
+ if (FBeaconsInstance=Nil) then
+ FBeaconsInstance:=CreateBeaconsResource;
+ Result:=FBeaconsInstance;
+end;
+
+Function TProximitybeaconAPI.CreateBeaconsResource : TBeaconsResource;
+
+begin
+ Result:=CreateBeaconsResource(Self);
+end;
+
+
+Function TProximitybeaconAPI.CreateBeaconsResource(AOwner : TComponent) : TBeaconsResource;
+
+begin
+ Result:=TBeaconsResource.Create(AOwner);
+ Result.API:=Self.API;
+end;
+
+
+
+Function TProximitybeaconAPI.GetNamespacesInstance : TNamespacesResource;
+
+begin
+ if (FNamespacesInstance=Nil) then
+ FNamespacesInstance:=CreateNamespacesResource;
+ Result:=FNamespacesInstance;
+end;
+
+Function TProximitybeaconAPI.CreateNamespacesResource : TNamespacesResource;
+
+begin
+ Result:=CreateNamespacesResource(Self);
+end;
+
+
+Function TProximitybeaconAPI.CreateNamespacesResource(AOwner : TComponent) : TNamespacesResource;
+
+begin
+ Result:=TNamespacesResource.Create(AOwner);
+ Result.API:=Self.API;
+end;
+
+
+
+Function TProximitybeaconAPI.GetV1beta1Instance : TV1beta1Resource;
+
+begin
+ if (FV1beta1Instance=Nil) then
+ FV1beta1Instance:=CreateV1beta1Resource;
+ Result:=FV1beta1Instance;
+end;
+
+Function TProximitybeaconAPI.CreateV1beta1Resource : TV1beta1Resource;
+
+begin
+ Result:=CreateV1beta1Resource(Self);
+end;
+
+
+Function TProximitybeaconAPI.CreateV1beta1Resource(AOwner : TComponent) : TV1beta1Resource;
+
+begin
+ Result:=TV1beta1Resource.Create(AOwner);
+ Result.API:=Self.API;
+end;
+
+
+
+Function TProximitybeaconAPI.GetBeaconinfoInstance : TBeaconinfoResource;
+
+begin
+ if (FBeaconinfoInstance=Nil) then
+ FBeaconinfoInstance:=CreateBeaconinfoResource;
+ Result:=FBeaconinfoInstance;
+end;
+
+Function TProximitybeaconAPI.CreateBeaconinfoResource : TBeaconinfoResource;
+
+begin
+ Result:=CreateBeaconinfoResource(Self);
+end;
+
+
+Function TProximitybeaconAPI.CreateBeaconinfoResource(AOwner : TComponent) : TBeaconinfoResource;
+
+begin
+ Result:=TBeaconinfoResource.Create(AOwner);
+ Result.API:=Self.API;
+end;
+
+
+
+initialization
+ TProximitybeaconAPI.RegisterAPI;
+end.