Module ibm.jzos

Class BinaryAsIntField

java.lang.Object
com.ibm.jzos.fields.BinaryAsIntField
All Implemented Interfaces:
Field, IntAccessor
Direct Known Subclasses:
BinarySignedIntField, BinaryUnsignedIntField

public class BinaryAsIntField extends Object implements IntAccessor
A 1-4 byte binary Field with int accessors.

Since:
2.1.0
  • Field Details

  • Constructor Details

    • BinaryAsIntField

      public BinaryAsIntField(int offset)
      Construct a signed instance with a field width = DEFAULT_FIELD_WIDTH = 4.
      Parameters:
      offset - int the offset in some byte array to the start of this field.
    • BinaryAsIntField

      public BinaryAsIntField(int offset, int length)
      Construct a signed instance with a given offset and length.
      Parameters:
      offset - int the offset in some byte array to the start of this field.
      length - int the size of the field in bytes
    • BinaryAsIntField

      public BinaryAsIntField(int offset, int length, boolean signed)
      Construct an instance.
      Parameters:
      offset - int the offset in some byte array to the start of this field.
      length - int the size of the field in bytes
      signed - boolean true if the field is signed, false if unsigned.
  • Method Details

    • getByteLength

      public int getByteLength()
      Answer the length of the field described by the receiver
      Specified by:
      getByteLength in interface Field
      Returns:
      int
    • getOffset

      public int getOffset()
      Answer the offset of this field into some array of bytes
      Specified by:
      getOffset in interface Field
      Returns:
      int
    • setOffset

      public void setOffset(int offset)
      Specified by:
      setOffset in interface Field
      See Also:
    • getInt

      public int getInt(byte[] buffer)
      Answer an int from the given byte array buffer, at the offset of this field.
      Specified by:
      getInt in interface IntAccessor
      Parameters:
      buffer - the byte array
      Returns:
      int
      Throws:
      IllegalArgumentException - if the value in the field is unsigned and too large to be represented as a java int
    • getInt

      public int getInt(byte[] buffer, int bufOffset)
      Answer an int from the given byte array buffer, at the bufOffset + offset of this field.
      Specified by:
      getInt in interface IntAccessor
      Parameters:
      buffer - the byte array
      bufOffset - the additional offset into the byte array
      Returns:
      int
      Throws:
      IllegalArgumentException - if the value in the field is unsigned and too large to be represented as a java int
    • putInt

      public void putInt(int value, byte[] buffer) throws IllegalArgumentException
      Put a signed int into the given byte array buffer, at the offset of this field.
      Specified by:
      putInt in interface IntAccessor
      Parameters:
      value - the signed int value
      buffer - the byte array
      Throws:
      IllegalArgumentException - if the value is out of range
    • putInt

      public void putInt(int value, byte[] buffer, int bufOffset) throws IllegalArgumentException
      Put a signed int into thegiven byte array buffer, at the bufOffset + offset of this field.
      Specified by:
      putInt in interface IntAccessor
      Parameters:
      value - the signed int value
      buffer - the byte array
      bufOffset - the additional offset into the byte array
      Throws:
      IllegalArgumentException - if the value is out of range
    • isSigned

      public boolean isSigned()
      Answer true if this field described a signed binary int, false if unsigned.
      Specified by:
      isSigned in interface IntAccessor
    • setSigned

      @Deprecated public void setSigned(boolean signed)
      Deprecated.
      Change the sign of the field. When Data Access Acceleration (DAA) is enabled, this method is not supported and an UnsupportedOperationException will be thrown.
      See Also:
    • equals

      public boolean equals(Integer anInteger, int anInt)
      Compare an Integer, possibly null, with an int for equality.
      Parameters:
      anInteger -
      anInt -
      Returns:
      boolean true if equal, false otherwise