/** * Class constructor. Instantiates a new {@code TXStatusPacket} object * with the given parameters. * * @param frameID Packet frame ID. * @param transmitStatus Transmit status. * * @throws ArgumentException if {@code frameID < 0} or * if {@code frameID > 255}. * @throws ArgumentNullException if {@code transmitStatus == null}. * * @see com.digi.xbee.api.models.XBeeTransmitStatus */ public TXStatusPacket(byte frameID, XBeeTransmitStatus transmitStatus) : base(APIFrameType.TX_STATUS) { Contract.Requires <ArgumentNullException>(transmitStatus != null, "Transmit status cannot be null."); this.frameID = frameID; this.TransmitStatus = transmitStatus; }
private const int MIN_API_PAYLOAD_LENGTH = 3; // 1 (Frame type) + 1 (frame ID) + 1 (status) #endregion Fields #region Constructors /** * Class constructor. Instantiates a new {@code TXStatusPacket} object * with the given parameters. * * @param frameID Packet frame ID. * @param transmitStatus Transmit status. * * @throws ArgumentException if {@code frameID < 0} or * if {@code frameID > 255}. * @throws ArgumentNullException if {@code transmitStatus == null}. * * @see com.digi.xbee.api.models.XBeeTransmitStatus */ public TXStatusPacket(byte frameID, XBeeTransmitStatus transmitStatus) : base(APIFrameType.TX_STATUS) { Contract.Requires<ArgumentNullException>(transmitStatus != null, "Transmit status cannot be null."); this.frameID = frameID; this.TransmitStatus = transmitStatus; }
/// <summary> /// Class constructor. Instantiates a new <see cref="TransmitStatusPacket"/> object with the /// given parameters. /// </summary> /// <param name="frameID">The frame ID.</param> /// <param name="destAddress16">The 16-bit network address the packet was delivered to.</param> /// <param name="transmitRetryCount">The number of application transmission retries that took place.</param> /// <param name="transmitStatus">The transmit status.</param> /// <param name="discoveryStatus">The discovery status.</param> /// <exception cref="ArgumentNullException">If <c><paramref name="destAddress16"/> == null</c>.</exception> /// <seealso cref="XBeeDiscoveryStatus"/> /// <seealso cref="XBeeTransmitStatus"/> /// <seealso cref="XBee16BitAddress"/> public TransmitStatusPacket(byte frameID, XBee16BitAddress destAddress16, byte transmitRetryCount, XBeeTransmitStatus transmitStatus, XBeeDiscoveryStatus discoveryStatus) : base(APIFrameType.TRANSMIT_STATUS) { FrameID = frameID; DestAddress16 = destAddress16 ?? throw new ArgumentNullException("16-bit destination address cannot be null."); TransmitRetryCount = transmitRetryCount; TransmitStatus = transmitStatus; DiscoveryStatus = discoveryStatus; logger = LogManager.GetLogger <TransmitStatusPacket>(); }
/// <summary> /// Returns the <see cref="XBeeTransmitStatus"/> in string format. /// </summary> /// <param name="source"></param> /// <returns>The <see cref="XBeeTransmitStatus"/> in string format.</returns> public static string ToDisplayString(this XBeeTransmitStatus source) { if (source != XBeeTransmitStatus.SUCCESS) { return("Error: " + lookupTable[source]); } else { return(lookupTable[source]); } }
/// <summary> /// Returns the <see cref="XBeeTransmitStatus"/> associated to the given ID. /// </summary> /// <param name="source"></param> /// <param name="id">The ID of the <see cref="XBeeTransmitStatus"/> to retrieve.</param> /// <returns>The <see cref="XBeeTransmitStatus"/> associated to the given ID, /// <see cref="XBeeTransmitStatus.UNKNOWN"/> if it does not exist.</returns> public static XBeeTransmitStatus Get(this XBeeTransmitStatus source, byte id) { var values = Enum.GetValues(typeof(XBeeTransmitStatus)).OfType <XBeeTransmitStatus>(); if (values.Cast <byte>().Contains(id)) { return((XBeeTransmitStatus)id); } return(XBeeTransmitStatus.UNKNOWN); }
/** * Class constructor. Instantiates a new {@code TransmitStatusPacket} * object with the given parameters. * * @param frameID Frame ID. * @param destAddress16 16-bit Network address the packet was delivered to. * @param tranmistRetryCount The number of application transmission retries * that took place. * @param transmitStatus Transmit status. * @param discoveryStatus Discovery status. * * @throws ArgumentException if {@code frameID < 0} or * if {@code frameID > 255} or * if {@code tranmistRetryCount < 0} or * if {@code tranmistRetryCount > 255}. * @throws ArgumentNullException if {@code destAddress16 == null} or * if {@code transmitStatus == null} or * if {@code discoveryStatus == null}. * * @see com.digi.xbee.api.models.XBeeDiscoveryStatus * @see com.digi.xbee.api.models.XBeeTransmitStatus * @see com.digi.xbee.api.models.XBee16BitAddress */ public TransmitStatusPacket(byte frameID, XBee16BitAddress destAddress16, byte tranmistRetryCount, XBeeTransmitStatus transmitStatus, XBeeDiscoveryStatus discoveryStatus) : base(APIFrameType.TRANSMIT_STATUS) { if (destAddress16 == null) throw new ArgumentNullException("16-bit destination address cannot be null."); if (transmitStatus == null) throw new ArgumentNullException("Delivery status cannot be null."); if (discoveryStatus == null) throw new ArgumentNullException("Discovery status cannot be null."); this.frameID = frameID; this.destAddress16 = destAddress16; this.tranmistRetryCount = tranmistRetryCount; this.transmitStatus = transmitStatus; this.discoveryStatus = discoveryStatus; this.logger = LogManager.GetLogger<TransmitStatusPacket>(); }
/** * Class constructor. Instantiates a new {@code TransmitStatusPacket} * object with the given parameters. * * @param frameID Frame ID. * @param destAddress16 16-bit Network address the packet was delivered to. * @param tranmistRetryCount The number of application transmission retries * that took place. * @param transmitStatus Transmit status. * @param discoveryStatus Discovery status. * * @throws ArgumentException if {@code frameID < 0} or * if {@code frameID > 255} or * if {@code tranmistRetryCount < 0} or * if {@code tranmistRetryCount > 255}. * @throws ArgumentNullException if {@code destAddress16 == null} or * if {@code transmitStatus == null} or * if {@code discoveryStatus == null}. * * @see com.digi.xbee.api.models.XBeeDiscoveryStatus * @see com.digi.xbee.api.models.XBeeTransmitStatus * @see com.digi.xbee.api.models.XBee16BitAddress */ public TransmitStatusPacket(byte frameID, XBee16BitAddress destAddress16, byte tranmistRetryCount, XBeeTransmitStatus transmitStatus, XBeeDiscoveryStatus discoveryStatus) : base(APIFrameType.TRANSMIT_STATUS) { if (destAddress16 == null) { throw new ArgumentNullException("16-bit destination address cannot be null."); } if (transmitStatus == null) { throw new ArgumentNullException("Delivery status cannot be null."); } if (discoveryStatus == null) { throw new ArgumentNullException("Discovery status cannot be null."); } this.frameID = frameID; this.destAddress16 = destAddress16; this.tranmistRetryCount = tranmistRetryCount; this.transmitStatus = transmitStatus; this.discoveryStatus = discoveryStatus; this.logger = LogManager.GetLogger <TransmitStatusPacket>(); }
private const int MIN_API_PAYLOAD_LENGTH = 3; // 1 (Frame type) + 1 (frame ID) + 1 (status) /// <summary> /// Class constructor. Instantiates a new <see cref="TXStatusPacket"/> object with the /// given parameters. /// </summary> /// <param name="frameID">The Frame ID.</param> /// <param name="transmitStatus">The transmit status.</param> /// <exception cref="ArgumentException">If <c><paramref name="frameID"/> <![CDATA[<]]> 0</c> /// or if <c><paramref name="frameID"/> <![CDATA[>]]> 255</c>.</exception> /// <seealso cref="XBeeTransmitStatus"/> public TXStatusPacket(byte frameID, XBeeTransmitStatus transmitStatus) : base(APIFrameType.TX_STATUS) { FrameID = frameID; TransmitStatus = transmitStatus; }
/// <summary> /// Initializes a new instance of the <see cref="TimeoutException"/> class with a specified error message and the exception that is the cause of this exception. /// </summary> /// <param name="message">ThThe error message that explains the reason for this exception.</param> /// <param name="innerException">The exception that is the cause of the current exception, or a null reference if no inner exception is specified.</param> /// <param name="transmitStatus">The status of the transmission.</param> public TransmitException(string message, Exception innerException, XBeeTransmitStatus transmitStatus) : base(message, innerException) { TransmitStatus = transmitStatus; }
/// <summary> /// Initializes a new instance of the <see cref="TimeoutException"/> class with a specified error message. /// </summary> /// <param name="message">ThThe error message that explains the reason for this exception.</param> /// <param name="transmitStatus">The status of the transmission.</param> public TransmitException(string message, XBeeTransmitStatus transmitStatus) : base(message) { TransmitStatus = transmitStatus; }
/// <summary> /// Initializes a new instance of the <see cref="TimeoutException"/> class. /// </summary> /// <param name="transmitStatus">The status of the transmission.</param> public TransmitException(XBeeTransmitStatus transmitStatus) : base(DEFAULT_MESSAGE) { TransmitStatus = transmitStatus; }
/// <summary> /// Gets the XBee transmit status description. /// </summary> /// <param name="source"></param> /// <returns>XBee transmit status description.</returns> public static string GetDescription(this XBeeTransmitStatus source) { return(lookupTable[source]); }
/// <summary> /// Gets the XBee transmit status ID. /// </summary> /// <param name="source"></param> /// <returns>XBee transmit status ID.</returns> public static byte GetId(this XBeeTransmitStatus source) { return((byte)source); }
/** * Returns the {@code XBeeTransmitStatus} associated to the given ID. * * @param id ID of the {@code XBeeTransmitStatus} to retrieve. * * @return The {@code XBeeTransmitStatus} associated to the given ID. */ public static XBeeTransmitStatus Get(this XBeeTransmitStatus dumb, byte id) { return((XBeeTransmitStatus)id); }