Class CanSignal

java.lang.Object
software.amazon.awssdk.services.iotfleetwise.model.CanSignal
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<CanSignal.Builder,CanSignal>

@Generated("software.amazon.awssdk:codegen") public final class CanSignal extends Object implements SdkPojo, Serializable, ToCopyableBuilder<CanSignal.Builder,CanSignal>

Information about a single controller area network (CAN) signal and the messages it receives and transmits.

See Also:
  • Method Details

    • messageId

      public final Integer messageId()

      The ID of the message.

      Returns:
      The ID of the message.
    • isBigEndian

      public final Boolean isBigEndian()

      Whether the byte ordering of a CAN message is big-endian.

      Returns:
      Whether the byte ordering of a CAN message is big-endian.
    • isSigned

      public final Boolean isSigned()

      Determines whether the message is signed (true) or not (false). If it's signed, the message can represent both positive and negative numbers. The isSigned parameter only applies to the INTEGER raw signal type, and it doesn't affect the FLOATING_POINT raw signal type.

      Returns:
      Determines whether the message is signed (true) or not (false). If it's signed, the message can represent both positive and negative numbers. The isSigned parameter only applies to the INTEGER raw signal type, and it doesn't affect the FLOATING_POINT raw signal type.
    • startBit

      public final Integer startBit()

      Indicates the beginning of the CAN signal. This should always be the least significant bit (LSB).

      This value might be different from the value in a DBC file. For little endian signals, startBit is the same value as in the DBC file. For big endian signals in a DBC file, the start bit is the most significant bit (MSB). You will have to calculate the LSB instead and pass it as the startBit.

      Returns:
      Indicates the beginning of the CAN signal. This should always be the least significant bit (LSB).

      This value might be different from the value in a DBC file. For little endian signals, startBit is the same value as in the DBC file. For big endian signals in a DBC file, the start bit is the most significant bit (MSB). You will have to calculate the LSB instead and pass it as the startBit.

    • offset

      public final Double offset()

      The offset used to calculate the signal value. Combined with factor, the calculation is value = raw_value * factor + offset.

      Returns:
      The offset used to calculate the signal value. Combined with factor, the calculation is value = raw_value * factor + offset.
    • factor

      public final Double factor()

      A multiplier used to decode the CAN message.

      Returns:
      A multiplier used to decode the CAN message.
    • length

      public final Integer length()

      How many bytes of data are in the message.

      Returns:
      How many bytes of data are in the message.
    • name

      public final String name()

      The name of the signal.

      Returns:
      The name of the signal.
    • signalValueType

      public final SignalValueType signalValueType()

      The value type of the signal. The default value is INTEGER.

      If the service returns an enum value that is not available in the current SDK version, signalValueType will return SignalValueType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from signalValueTypeAsString().

      Returns:
      The value type of the signal. The default value is INTEGER.
      See Also:
    • signalValueTypeAsString

      public final String signalValueTypeAsString()

      The value type of the signal. The default value is INTEGER.

      If the service returns an enum value that is not available in the current SDK version, signalValueType will return SignalValueType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from signalValueTypeAsString().

      Returns:
      The value type of the signal. The default value is INTEGER.
      See Also:
    • toBuilder

      public CanSignal.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<CanSignal.Builder,CanSignal>
      Returns:
      a builder for type T
    • builder

      public static CanSignal.Builder builder()
    • serializableBuilderClass

      public static Class<? extends CanSignal.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.