public final class

ResponseAPDU

extends Object
implements Serializable
java.lang.Object
   ↳ javax.smartcardio.ResponseAPDU

Class Overview

A response APDU as defined in ISO/IEC 7816-4. It consists of a conditional body and a two byte trailer. This class does not attempt to verify that the APDU encodes a semantically valid response.

Instances of this class are immutable. Where data is passed in or out via byte arrays, defensive cloning is performed.

Summary

Public Constructors
ResponseAPDU(byte[] apdu)
Constructs a ResponseAPDU from a byte array containing the complete APDU contents (conditional body and trailed).
Public Methods
boolean equals(Object obj)
Compares the specified object with this response APDU for equality.
byte[] getBytes()
Returns a copy of the bytes in this APDU.
byte[] getData()
Returns a copy of the data bytes in the response body.
int getNr()
Returns the number of data bytes in the response body (Nr) or 0 if this APDU has no body.
int getSW()
Returns the value of the status bytes SW1 and SW2 as a single status word SW.
int getSW1()
Returns the value of the status byte SW1 as a value between 0 and 255.
int getSW2()
Returns the value of the status byte SW2 as a value between 0 and 255.
int hashCode()
Returns the hash code value for this response APDU.
String toString()
Returns a string representation of this response APDU.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public ResponseAPDU (byte[] apdu)

Constructs a ResponseAPDU from a byte array containing the complete APDU contents (conditional body and trailed).

Note that the byte array is cloned to protect against subsequent modification.

Parameters
apdu the complete response APDU
Throws
NullPointerException if apdu is null
IllegalArgumentException if apdu.length is less than 2

Public Methods

public boolean equals (Object obj)

Compares the specified object with this response APDU for equality. Returns true if the given object is also a ResponseAPDU and its bytes are identical to the bytes in this ResponseAPDU.

Parameters
obj the object to be compared for equality with this response APDU
Returns
  • true if the specified object is equal to this response APDU

public byte[] getBytes ()

Returns a copy of the bytes in this APDU.

Returns
  • a copy of the bytes in this APDU.

public byte[] getData ()

Returns a copy of the data bytes in the response body. If this APDU as no body, this method returns a byte array with a length of zero.

Returns
  • a copy of the data bytes in the response body or the empty byte array if this APDU has no body.

public int getNr ()

Returns the number of data bytes in the response body (Nr) or 0 if this APDU has no body. This call is equivalent to getData().length.

Returns
  • the number of data bytes in the response body or 0 if this APDU has no body.

public int getSW ()

Returns the value of the status bytes SW1 and SW2 as a single status word SW. It is defined as (getSW1() << 8) | getSW2().

Returns
  • the value of the status word SW.

public int getSW1 ()

Returns the value of the status byte SW1 as a value between 0 and 255.

Returns
  • the value of the status byte SW1 as a value between 0 and 255.

public int getSW2 ()

Returns the value of the status byte SW2 as a value between 0 and 255.

Returns
  • the value of the status byte SW2 as a value between 0 and 255.

public int hashCode ()

Returns the hash code value for this response APDU.

Returns
  • the hash code value for this response APDU.

public String toString ()

Returns a string representation of this response APDU.

Returns
  • a String representation of this response APDU.