예제 #1
0
        /// <summary>
        /// Create a new PushChargingPoolStatus result.
        /// </summary>
        /// <param name="AuthId">The unqiue identification of the authenticator.</param>
        /// <param name="IReceiveStatus">An object implementing IReceiveStatus.</param>
        /// <param name="Result">The result of the operation.</param>
        /// <param name="Description">An optional description of the result code.</param>
        /// <param name="RejectedChargingPoolStatusUpdates">An enumeration of rejected ChargingPool status updates.</param>
        /// <param name="Warnings">Warnings or additional information.</param>
        /// <param name="Runtime">The runtime of the request.</param>
        internal PushChargingPoolStatusResult(IId AuthId,
                                              IReceiveStatus IReceiveStatus,
                                              PushChargingPoolStatusResultTypes Result,
                                              String Description = null,
                                              IEnumerable <ChargingPoolStatusUpdate> RejectedChargingPoolStatusUpdates = null,
                                              IEnumerable <Warning> Warnings = null,
                                              TimeSpan?Runtime = null)

            : this(AuthId,
                   Result,
                   Description,
                   RejectedChargingPoolStatusUpdates,
                   Warnings,
                   Runtime)

        {
            this.IReceiveStatus = IReceiveStatus;
        }
예제 #2
0
        /// <summary>
        /// Create a new PushChargingPoolStatus result.
        /// </summary>
        /// <param name="AuthId">The unqiue identification of the authenticator.</param>
        /// <param name="Result">The result of the operation.</param>
        /// <param name="Description">An optional description of the result code.</param>
        /// <param name="RejectedChargingPoolStatusUpdates">An enumeration of rejected ChargingPool status updates.</param>
        /// <param name="Warnings">Warnings or additional information.</param>
        /// <param name="Runtime">The runtime of the request.</param>
        private PushChargingPoolStatusResult(IId AuthId,
                                             PushChargingPoolStatusResultTypes Result,
                                             String Description = null,
                                             IEnumerable <ChargingPoolStatusUpdate> RejectedChargingPoolStatusUpdates = null,
                                             IEnumerable <Warning> Warnings = null,
                                             TimeSpan?Runtime = null)
        {
            this.AuthId = AuthId;
            this.Result = Result;

            this.Description = Description.IsNotNullOrEmpty()
                                                  ? Description.Trim()
                                                  : null;

            this.RejectedChargingPoolStatusUpdates = RejectedChargingPoolStatusUpdates != null
                                                  ? RejectedChargingPoolStatusUpdates.Where(evse => evse != null)
                                                  : new ChargingPoolStatusUpdate[0];

            this.Warnings = Warnings != null
                                                  ? Warnings.Where(warning => warning.IsNotNullOrEmpty())
                                                  : new Warning[0];

            this.Runtime = Runtime;
        }