com.linuxnet.jpcsc
Class Context

java.lang.Object
  extended bycom.linuxnet.jpcsc.Context

public final class Context
extends java.lang.Object

The Context-class wraps the PCSC-functions related to connecting/disconnecting to the PCSC-service and card-readers. An invocation of Connect() returns a connection to a Card allowing for the transmission of APDUs.


Field Summary
private  long ctx
          The native handle.
private static java.lang.String[] emptyStringArray
          Dummy empty string array.
 
Constructor Summary
Context()
          Constructor.
 
Method Summary
 void Cancel()
          Cancel all pending GetStatusChange() calls.
 Card Connect(java.lang.String szReader, int dwShareMode, int dwPreferredProtocols)
          Return card object in case of successful connection.
 void EstablishContext(int dwScope, java.lang.String pvReserved1, java.lang.String pvReserved2)
          Establish context.
 void finalize()
          Cleanup operation.
 void GetStatusChange(int timeout, State[] readerStates)
          Return status change for given readers.
 java.lang.String[] ListReaderGroups()
          List all known reader groups by the system.
 java.lang.String[] ListReaders()
          List all known readers in all known groups.
 java.lang.String[] ListReaders(java.lang.String group)
          List all known readers in given group.
 java.lang.String[] ListReaders(java.lang.String[] group)
          List all known readers in given group.
private  int NativeCancel()
           
private  int NativeConnect(Card card, java.lang.String szReader, int dwShareMode, int dwPreferredProtocols)
           
private  int NativeEstablishContext(int dwScope, java.lang.String pvReserved1, java.lang.String pvReserved2)
           
private  int NativeGetStatusChange(int timeout, State[] readerStates)
           
private  java.lang.String[] NativeListReaderGroups()
           
private  java.lang.String[] NativeListReaders()
           
private  java.lang.String[] NativeListReaders(java.lang.String group)
           
private  java.lang.String[] NativeListReaders(java.lang.String[] groups)
           
private  int NativeReleaseContext()
           
 void ReleaseContext()
          Release context.
static java.lang.String StringifyError(int code)
          Return symbolic representation of an error.
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

emptyStringArray

private static java.lang.String[] emptyStringArray
Dummy empty string array.


ctx

private long ctx
The native handle.

Constructor Detail

Context

public Context()
Constructor. Try to use established contexts as much as possible. This keeps the number of underlying connections to the PCSC-daemon low.

Method Detail

finalize

public final void finalize()
Cleanup operation. Destroy context we have.


EstablishContext

public final void EstablishContext(int dwScope,
                                   java.lang.String pvReserved1,
                                   java.lang.String pvReserved2)
Establish context.


ReleaseContext

public final void ReleaseContext()
Release context.


ListReaders

public final java.lang.String[] ListReaders()
List all known readers in all known groups.


ListReaders

public final java.lang.String[] ListReaders(java.lang.String group)
List all known readers in given group. Group may be null, all known readers by the system are then returned.


ListReaders

public final java.lang.String[] ListReaders(java.lang.String[] group)
List all known readers in given group. Group may be null, all known readers by the system are then returned.


ListReaderGroups

public final java.lang.String[] ListReaderGroups()
List all known reader groups by the system.


GetStatusChange

public final void GetStatusChange(int timeout,
                                  State[] readerStates)
Return status change for given readers.


Connect

public final Card Connect(java.lang.String szReader,
                          int dwShareMode,
                          int dwPreferredProtocols)
Return card object in case of successful connection.


Cancel

public final void Cancel()
Cancel all pending GetStatusChange() calls.


StringifyError

public static java.lang.String StringifyError(int code)
Return symbolic representation of an error. Uses pcsc_stringify_error() on Linux.


NativeEstablishContext

private int NativeEstablishContext(int dwScope,
                                   java.lang.String pvReserved1,
                                   java.lang.String pvReserved2)

NativeCancel

private int NativeCancel()

NativeReleaseContext

private int NativeReleaseContext()

NativeListReaders

private java.lang.String[] NativeListReaders()

NativeListReaders

private java.lang.String[] NativeListReaders(java.lang.String group)

NativeListReaders

private java.lang.String[] NativeListReaders(java.lang.String[] groups)

NativeListReaderGroups

private java.lang.String[] NativeListReaderGroups()

NativeGetStatusChange

private int NativeGetStatusChange(int timeout,
                                  State[] readerStates)

NativeConnect

private int NativeConnect(Card card,
                          java.lang.String szReader,
                          int dwShareMode,
                          int dwPreferredProtocols)