Class SolCoder

java.lang.Object
org.metricshub.ipmi.core.coding.PayloadCoder
org.metricshub.ipmi.core.coding.sol.SolCoder

public class SolCoder extends PayloadCoder
Implementation of PayloadCoder for payload type PayloadType.Sol. This coder is used during exchanging SOL messages between BMC and application.
  • Constructor Details

    • SolCoder

      public SolCoder(byte[] message, byte ackNackSequenceNumber, byte acceptedCharacters, SolAckState ackState, Set<SolOperation> operations)
      Creates new SolCoder. Use this constructor if you want to send character data, operations and ACK/NACK in single packet.
      Parameters:
      message - data to send as byte array
      ackNackSequenceNumber - sequence number of packet that is ACKd/NACKd
      acceptedCharacters - number of characters accepted from the ACKd/NACKd packet
      ackState - actual acknowledge state - SolAckState.ACK or SolAckState.NACK
      operations - set of operations to invoke on remote serial port
    • SolCoder

      public SolCoder(byte[] message)
      Creates new SolCoder. Use this constructor for character data only packets (no ACK/NACK and no operations will be sent).
      Parameters:
      message - data to send as byte array
    • SolCoder

      public SolCoder(Set<SolOperation> operations)
      Creates new SolCoder. Use this constructor for packets that should only invoke operations on remote serial port.
      Parameters:
      operations - set of operations to invoke on remote serial port.
    • SolCoder

      public SolCoder(byte ackNackSequenceNumber, byte acceptedCharacters, SolAckState ackState)
      Creates new SolCoder. Use this constructor for ACK/NACK packet, that only sends ACK/NACK for specific remote message.
      Parameters:
      ackNackSequenceNumber - sequence number of packet that is ACKd/NACKd
      acceptedCharacters - number of characters accepted from the ACKd/NACKd packet
      ackState - actual acknowledge state - SolAckState.ACK or SolAckState.NACK
    • SolCoder

      public SolCoder(byte ackNackSequenceNumber, byte acceptedCharacters, SolAckState ackState, Set<SolOperation> operations)
      Creates new SolCoder. Use this constructor for ACK/NACK packet, that only sends ACK/NACK for specific remote message, with the state of the serial lines the console holds.
      Parameters:
      ackNackSequenceNumber - sequence number of packet that is ACKd/NACKd
      acceptedCharacters - number of characters accepted from the ACKd/NACKd packet
      ackState - actual acknowledge state - SolAckState.ACK or SolAckState.NACK
      operations - the operations of the packet: the serial line states the console holds
  • Method Details