/// <summary> /// Create a SetChargingStationAvailabilityStatus XML/SOAP request. /// </summary> /// <param name="PartnerId">The partner identification.</param> /// <param name="OperatorId">The operator identification.</param> /// <param name="ChargingStationId">The charging station identification.</param> /// <param name="StatusEventDate">The timestamp of the status change.</param> /// <param name="AvailabilityStatus">The charging station availability status.</param> /// <param name="TransactionId">An optional transaction identification.</param> /// <param name="AvailabilityStatusUntil">An optional timestamp until which the given availability status is valid.</param> /// <param name="AvailabilityStatusComment">An optional comment about the availability status.</param> /// /// <param name="HTTPRequest">The correlated HTTP request of this eMIP request.</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">An optional timeout for this request.</param> public SetChargingStationAvailabilityStatusRequest(Partner_Id PartnerId, Operator_Id OperatorId, ChargingStation_Id ChargingStationId, DateTime StatusEventDate, ChargingStationAvailabilityStatusTypes AvailabilityStatus, Transaction_Id?TransactionId = null, DateTime?AvailabilityStatusUntil = null, String AvailabilityStatusComment = null, HTTPRequest HTTPRequest = null, DateTime?Timestamp = null, CancellationToken?CancellationToken = null, EventTracking_Id EventTrackingId = null, TimeSpan?RequestTimeout = null) : base(HTTPRequest, PartnerId, TransactionId, Timestamp, CancellationToken, EventTrackingId, RequestTimeout) { this.OperatorId = OperatorId; this.ChargingStationId = ChargingStationId; this.StatusEventDate = StatusEventDate; this.AvailabilityStatus = AvailabilityStatus; this.AvailabilityStatusUntil = AvailabilityStatusUntil; this.AvailabilityStatusComment = AvailabilityStatusComment?.Trim(); }
/// <summary> /// Return a text representation of the given charging station availability status. /// </summary> /// <param name="AvailabilityStatus">A charging station availability status.</param> public static String AsText(this ChargingStationAvailabilityStatusTypes AvailabilityStatus) { switch (AvailabilityStatus) { case ChargingStationAvailabilityStatusTypes.OutOfOrder: return("out-of-order"); case ChargingStationAvailabilityStatusTypes.InService: return("in-service"); case ChargingStationAvailabilityStatusTypes.Future: return("future"); case ChargingStationAvailabilityStatusTypes.Deleted: return("deleted"); default: return("unspecified"); } }
/// <summary> /// Return a numeric representation of the given charging station availability status. /// </summary> /// <param name="AvailabilityStatus">A charging station availability status.</param> public static Byte AsNumber(this ChargingStationAvailabilityStatusTypes AvailabilityStatus) { switch (AvailabilityStatus) { case ChargingStationAvailabilityStatusTypes.OutOfOrder: return(1); case ChargingStationAvailabilityStatusTypes.InService: return(2); case ChargingStationAvailabilityStatusTypes.Future: return(3); case ChargingStationAvailabilityStatusTypes.Deleted: return(4); default: return(0); } }