Interface ApduConnection
- All Known Subinterfaces:
Cwa14890Connection
- All Known Implementing Classes:
AbstractApduConnectionIso7816, Cwa14890OneV1Connection, Cwa14890OneV2Connection, PaceConnection, SmartcardIoConnection
public interface ApduConnection
Define los requerimientos de clases que representen una conexión con una tarjeta inteligente insertada en un lector.
-
Method Summary
Modifier and TypeMethodDescriptionvoidAñade un objeto al que se notificará cuando existan eventos en la conexión.voidclose()Cierra la conexión con la tarjeta inteligente actualmente insertada en el lector.Recupera la conexión subyacente utilizada por la conexión.getTerminalInfo(int terminal) Devuelve información sobre un terminal.long[]getTerminals(boolean onlyWithCardPresent) Devuelve todos los lectores de tarjetas presentes en el sistema.booleanisOpen()Indica si la conexión está abierta o no.voidopen()Abre la conexión con la tarjeta inteligente actualmente insertada en el lector.voidIndica que ya no se desea notificar a un objeto cuando existan eventos en la conexión.byte[]reset()Reinicializa la conexión con la tarjeta inteligente.voidEstablece el Protocolo de conexión con la tarjeta.voidsetTerminal(int t) Establece el lector de tarjetas que se usará para la conexión.transmit(CommandApdu command) Envía un comando APDU a la tarjeta inteligente.
-
Method Details
-
setProtocol
Establece el Protocolo de conexión con la tarjeta.- Parameters:
p- Protocolo de conexión con la tarjeta.
-
open
Abre la conexión con la tarjeta inteligente actualmente insertada en el lector.- Throws:
ApduConnectionException- Cuando ocurre cualquier problema abriendo la conexión.- See Also:
-
close
Cierra la conexión con la tarjeta inteligente actualmente insertada en el lector.- Throws:
ApduConnectionException- Cuando ocurre cualquier problema cerrando la conexión.- See Also:
-
transmit
Envía un comando APDU a la tarjeta inteligente.- Parameters:
command- APDU que se desea enviar a la tarjeta.- Returns:
- APDU de respuesta de la tarjeta al envío.
- Throws:
ApduConnectionException- Cuando ocurre cualquier problema con la conexión transmitiendo la APDU.
-
reset
Reinicializa la conexión con la tarjeta inteligente.- Returns:
- Respuesta al reset (ATR) de la tarjeta.
- Throws:
ApduConnectionException- Cuando ocurre cualquier problema reinicializando la conexión.
-
addCardConnectionListener
Añade un objeto al que se notificará cuando existan eventos en la conexión. Solo se notificarán las inserciones y las extracciones cuando la implementación subyacente lo soporte.- Parameters:
ccl- Objeto al que se desea notificar los eventos de la conexión.
-
removeCardConnectionListener
Indica que ya no se desea notificar a un objeto cuando existan eventos en la conexión.- Parameters:
ccl- Objeto al que ya no se desea notificar los eventos de la conexión.
-
getTerminals
Devuelve todos los lectores de tarjetas presentes en el sistema.- Parameters:
onlyWithCardPresent- Para indicar que sólo devuelva lectores que tengan una tarjeta insertada.- Returns:
- Una lista con los identificadores de lectores de tarjetas conectados.
- Throws:
ApduConnectionException- Cuando ocurran problemas en la conexión con los lectores.
-
getTerminalInfo
Devuelve información sobre un terminal.- Parameters:
terminal- Número de terminal que se desea obtener información.- Returns:
- Una descripción del terminal especificado.
- Throws:
ApduConnectionException- Cuando ocurren problemas en la conexión con los lectores.
-
setTerminal
Establece el lector de tarjetas que se usará para la conexión. Si se cambia el terminal estando la conexión ya abierta, se intentará reabrirla con el nuevo terminal.- Parameters:
t- Número de terminal que se desea pase a ser el actual.- Throws:
ApduConnectionException- Cuando se especifica un número de terminal no válido.
-
isOpen
boolean isOpen()Indica si la conexión está abierta o no.- Returns:
truesi la conexión esta abierta,falsesi está cerrada.
-
getSubConnection
ApduConnection getSubConnection()Recupera la conexión subyacente utilizada por la conexión.- Returns:
- Conexión subyacente con la tarjeta o
nullsi esta conexión es ya la de más bajo nivel.
-