de.cardcontact.opencard.service.gemxcos
Class GemXCosFileControlInformation
java.lang.Object
de.cardcontact.opencard.service.gemxcos.GemXCosFileControlInformation
- All Implemented Interfaces:
- CardFileInfo
public class GemXCosFileControlInformation
- extends java.lang.Object
- implements CardFileInfo
Method Summary |
short |
getFileID()
Returns the identifier of the file. |
byte[] |
getHeader()
Returns the file header. |
int |
getLength()
Returns the length of the file. |
int |
getRecordSize()
Returns the record size of the file. |
boolean |
isCyclic()
Tests whether the file is a cyclic file. |
boolean |
isDirectory()
Tests whether the file is a DF. |
boolean |
isTransparent()
Tests whether the file is a transparent file. |
boolean |
isVariable()
Tests whether the file is a variable record file. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
GemXCosFileControlInformation
public GemXCosFileControlInformation()
GemXCosFileControlInformation
public GemXCosFileControlInformation(byte[] newfci)
- Create file control information from TLV coded byte array
- Parameters:
newfci
- File control information obtained from card as response to SELECT APDU
getFileID
public short getFileID()
- Description copied from interface:
CardFileInfo
- Returns the identifier of the file.
It is most likely that this method is of no particular use, but since
the file identifier is the most basic information about a file at all,
it is included here anyway.
- Specified by:
getFileID
in interface CardFileInfo
- Returns:
- the identifier of the file
isDirectory
public boolean isDirectory()
- Description copied from interface:
CardFileInfo
- Tests whether the file is a DF.
- Specified by:
isDirectory
in interface CardFileInfo
- Returns:
- true if the file is a DF, false otherwise
isTransparent
public boolean isTransparent()
- Description copied from interface:
CardFileInfo
- Tests whether the file is a transparent file.
The value returned is valid only if the file is not a DF,
that is if isDirectory returns false.
- Specified by:
isTransparent
in interface CardFileInfo
- Returns:
- true if the file is a transparent file
- See Also:
CardFileInfo.isDirectory()
isCyclic
public boolean isCyclic()
- Description copied from interface:
CardFileInfo
- Tests whether the file is a cyclic file.
The value returned is valid only if the file is not a DF and not a
transparent file, that is if isDirectory as well as
isTransparent return false.
- Specified by:
isCyclic
in interface CardFileInfo
- Returns:
- true if the file is a cyclic file
- See Also:
CardFileInfo.isDirectory()
,
CardFileInfo.isTransparent()
isVariable
public boolean isVariable()
- Description copied from interface:
CardFileInfo
- Tests whether the file is a variable record file.
The value returned is valid only if the file is not a DF and not a
transparent file, that is if isDirectory as well as
isTransparent return false.
- Specified by:
isVariable
in interface CardFileInfo
- Returns:
- true if the file is a structured file with
variable record size
- See Also:
CardFileInfo.isDirectory()
,
CardFileInfo.isTransparent()
getLength
public int getLength()
- Description copied from interface:
CardFileInfo
- Returns the length of the file.
If the file is a transparent file, that is if isDirectory
returns false and isTransparent returns true,
this method returns the number of bytes in the file.
If the file is a structured file with fixed record length, either
cyclic or non-cyclic, this method returns also returns the number
of bytes in the file, that is the size of a record multiplied by
the number of bytes in a record.
If the file is a DF, a structured file with variable record length,
or some card specific file type, the value returned by this method
is implementation dependent.
- Specified by:
getLength
in interface CardFileInfo
- Returns:
- the number of bytes in the file
- See Also:
CardFileInfo.isDirectory()
,
CardFileInfo.isTransparent()
getRecordSize
public int getRecordSize()
- Description copied from interface:
CardFileInfo
- Returns the record size of the file.
The value returned is valid only if the file is a structured file
with fixed record size, that is if isDirectory,
isTransparent and isVariable return false.
- Specified by:
getRecordSize
in interface CardFileInfo
- Returns:
- the size of a record of the file
- See Also:
CardFileInfo.isDirectory()
,
CardFileInfo.isTransparent()
,
CardFileInfo.isVariable()
getHeader
public byte[] getHeader()
- Description copied from interface:
CardFileInfo
- Returns the file header.
This method actually returns the smartcard's response (or expected
response) to a selection of the file. For an EF, this is the file
header which may have been expanded by some application data, if
the card OS allows to do so. For a DF, this is the file header,
also optionally expanded, or some other data that has been defined
as the select response for the DF. The EMV standard requires the
select response for a DF to be defineable by applications.
This method is not invoked by the OpenCard Framework, and it is
not yet clear whether it will be useful for applications. However,
removing a method from this interface will be easier than adding
it later, so it is currently required. File services that do not
want to support this method may simply return null.
- Specified by:
getHeader
in interface CardFileInfo
- Returns:
- the smartcard's response to a selection of the file,
or null if not supported