/// <summary> /// Create a new geographical coordinate or position on a map. /// </summary> /// <param name="Latitude">The latitude ("Breitengrad": South -90° to Nord +90°).</param> /// <param name="Longitude">The longitude ("Längengrad": West -180° to East +180°).</param> /// <param name="GeoFormat">The format of the coordinates.</param> public GeoCoordinates(Double Latitude, Double Longitude, GeoCoordinatesFormats GeoFormat = GeoCoordinatesFormats.DecimalDegree) { this.Latitude = Latitude; this.Longitude = Longitude; this.GeoFormat = GeoFormat; }
/// <summary> /// Create a new PullEVSEData request. /// The request might either have none, 'SearchCenter + DistanceKM' or 'LastCall' parameters. /// Because of limitations at Hubject the SearchCenter and LastCall parameters can not be used at the same time! /// </summary> /// <param name="ProviderId">The unique identification of the e-mobility provider.</param> /// <param name="LastCall">An optional timestamp of the last call. Cannot be combined with 'SearchCenter'.</param> /// /// <param name="GeoCoordinatesResponseFormat">An optional response format for representing geo coordinates.</param> /// <param name="OperatorIdFilter">Only return EVSEs belonging to the given optional enumeration of EVSE operators.</param> /// <param name="CountryCodeFilter">An optional enumeration of countries whose EVSE's a provider wants to retrieve.</param> /// <param name="SearchCenter">An optional geo coordinate of the search center.</param> /// <param name="DistanceKM">An optional search distance relative to the search center.</param> /// /// <param name="Page">An optional page number of the request page.</param> /// <param name="Size">An optional size of a request page.</param> /// <param name="SortOrder">Optional sorting criteria in the format: property(,asc|desc).</param> /// <param name="CustomData">Optional customer specific data, e.g. in combination with custom parsers and serializers.</param> /// /// <param name="Timestamp">The optional timestamp of the request.</param> /// <param name="CancellationToken">An optional token to cancel this request.</param> /// <param name="EventTrackingId">An optional event tracking identification for correlating this request with other events.</param> /// <param name="RequestTimeout">The timeout for this request.</param> public PullEVSEDataRequest(Provider_Id ProviderId, DateTime?LastCall = null, IEnumerable <Operator_Id> OperatorIdFilter = null, IEnumerable <Country> CountryCodeFilter = null, IEnumerable <AccessibilityTypes> AccessibilityFilter = null, IEnumerable <AuthenticationModes> AuthenticationModeFilter = null, IEnumerable <CalibrationLawDataAvailabilities> CalibrationLawDataAvailabilityFilter = null, Boolean?RenewableEnergyFilter = null, Boolean?IsHubjectCompatibleFilter = null, Boolean?IsOpen24HoursFilter = null, GeoCoordinates?SearchCenter = null, Single?DistanceKM = null, GeoCoordinatesFormats?GeoCoordinatesResponseFormat = GeoCoordinatesFormats.DecimalDegree, UInt32?Page = null, UInt32?Size = null, IEnumerable <String> SortOrder = null, JObject CustomData = null, DateTime?Timestamp = null, CancellationToken?CancellationToken = null, EventTracking_Id EventTrackingId = null, TimeSpan?RequestTimeout = null) : base(Page, Size, SortOrder, CustomData, Timestamp, CancellationToken, EventTrackingId, RequestTimeout) { this.ProviderId = ProviderId; this.LastCall = LastCall; this.OperatorIdFilter = OperatorIdFilter?.Distinct() ?? new Operator_Id[0]; this.CountryCodeFilter = CountryCodeFilter?.Distinct() ?? new Country[0]; this.AccessibilityFilter = AccessibilityFilter?.Distinct() ?? new AccessibilityTypes[0]; this.AuthenticationModeFilter = AuthenticationModeFilter?.Distinct() ?? new AuthenticationModes[0]; this.CalibrationLawDataAvailabilityFilter = CalibrationLawDataAvailabilityFilter?.Distinct() ?? new CalibrationLawDataAvailabilities[0]; this.RenewableEnergyFilter = RenewableEnergyFilter; this.IsHubjectCompatibleFilter = IsHubjectCompatibleFilter; this.IsOpen24HoursFilter = IsOpen24HoursFilter; this.SearchCenter = SearchCenter; this.DistanceKM = DistanceKM; this.GeoCoordinatesResponseFormat = GeoCoordinatesResponseFormat ?? GeoCoordinatesFormats.DecimalDegree; }