opencard.opt.emv.mgmt
Class EMVAppletInfo

java.lang.Object
  |
  +--opencard.opt.applet.AppletInfo
        |
        +--opencard.opt.emv.mgmt.EMVAppletInfo

public class EMVAppletInfo
extends AppletInfo
implements EMVTags

The EMVAppletInfo encapsulates the information describing an application which is stored on an EMV'96 card.

It extends the generic AppletInfo class.

See Also:
opencard.opt.applet.mgmt.AppletInfo

Field Summary
protected  byte[] discrData
          Discretionary Data retrieved from an EMV EF_DIR (optional)
protected static java.lang.String[] hexChars
          Auxillary string array.
protected  byte[] prefName
          Preferred name retrieved from an EMV EF_DIR (optional)
protected  byte[] prioInd
          Priority Index retrieved from an EMV EF_DIR (optional)
 
Fields inherited from class opencard.opt.applet.AppletInfo
aid, data, domain, label
 
Constructor Summary
protected EMVAppletInfo()
          Instantiate an EMVAppletInfo. (hidden, contains "defaults" for all instances set by each constructor)
  EMVAppletInfo(AppletID aid, java.lang.String label)
           
  EMVAppletInfo(TLV info)
          Instantiate an EMVAppletInfo from a TLV object.
 
Method Summary
 void fromEMVTLV(TLV info)
          Analyses the given EMV compliant application description TLV and writes the data into the attributes of this class
 byte[] getDiscretionaryData()
          Get the Discretionary Data.
 byte[] getPreferredName()
          Get the application preferred name; Tag 0x9F12.
 byte[] getPriority()
          Get the application priority indicator; Tag 0x87.
 TLV toEMVTLV()
          Packs the attributes of this application info class into an EMV compliant TLV structure
 java.lang.String toString()
           
 
Methods inherited from class opencard.opt.applet.AppletInfo
getAppletID, getData, getDomain, getLabel, setAppletID, setData, setDomain, setLabel
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

prefName

protected byte[] prefName
Preferred name retrieved from an EMV EF_DIR (optional)

prioInd

protected byte[] prioInd
Priority Index retrieved from an EMV EF_DIR (optional)

discrData

protected byte[] discrData
Discretionary Data retrieved from an EMV EF_DIR (optional)

hexChars

protected static final java.lang.String[] hexChars
Auxillary string array.
Constructor Detail

EMVAppletInfo

protected EMVAppletInfo()
Instantiate an EMVAppletInfo. (hidden, contains "defaults" for all instances set by each constructor)

EMVAppletInfo

public EMVAppletInfo(AppletID aid,
                     java.lang.String label)

EMVAppletInfo

public EMVAppletInfo(TLV info)
              throws InvalidAppletInfoException
Instantiate an EMVAppletInfo from a TLV object.
Parameters:
tlv - A TLV object from which to instantiate.
Method Detail

getPreferredName

public byte[] getPreferredName()
Get the application preferred name; Tag 0x9F12.

Returns:
A byte array of length 1-16 containing the application preferred name or null if preferred name is not present.

getPriority

public byte[] getPriority()
Get the application priority indicator; Tag 0x87.

Returns:
A single byte indicating the application priority or null if priority is not present.

getDiscretionaryData

public byte[] getDiscretionaryData()
Get the Discretionary Data.

Returns:
A single byte indicating the discretionary Data.

fromEMVTLV

public void fromEMVTLV(TLV info)
                throws InvalidAppletInfoException
Analyses the given EMV compliant application description TLV and writes the data into the attributes of this class
Parameters:
info - description of this application packed in an EMV TLV structure

toEMVTLV

public TLV toEMVTLV()
Packs the attributes of this application info class into an EMV compliant TLV structure
Returns:
TLV description of this application packed in an EMV TLV structure

toString

public java.lang.String toString()
Overrides:
toString in class AppletInfo