Class SmartcardIoConnection

    • Field Detail

      • MAX_APDU_SIZE

        private static final int MAX_APDU_SIZE
        Tamaño máximo de las APDU. Por encima de este tamaño, se hace automáticamente una envoltura en varias APDU.
        See Also:
        Constant Field Values
      • SCARD_W_RESET_CARD

        private static final java.lang.String SCARD_W_RESET_CARD
        Constante para la indicación de que se ha detectado un reinicio del canal con la tarjeta.
        See Also:
        Constant Field Values
      • LOGGER

        private static final java.util.logging.Logger LOGGER
      • terminalNumber

        private int terminalNumber
      • cardChannel

        private javax.smartcardio.CardChannel cardChannel
      • card

        private javax.smartcardio.Card card
      • exclusive

        private boolean exclusive
    • Constructor Detail

      • SmartcardIoConnection

        public SmartcardIoConnection()
    • Method Detail

      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • addCardConnectionListener

        public void addCardConnectionListener​(CardConnectionListener ccl)
        JSR-268 no soporta eventos de inserción o extracción.
        Parameters:
        ccl - Objeto al que se desea notificar los eventos de la conexión.
      • getTerminalInfo

        public java.lang.String getTerminalInfo​(int terminal)
                                         throws ApduConnectionException
        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.
      • getTerminals

        public long[] getTerminals​(boolean onlyWithCardPresent)
                            throws ApduConnectionException
        Description copied from interface: ApduConnection
        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.
      • isOpen

        public boolean isOpen()
        Description copied from interface: ApduConnection
        Indica si la conexión está abierta o no.
        Returns:
        true si la conexión esta abierta, false si está cerrada.
      • removeCardConnectionListener

        public void removeCardConnectionListener​(CardConnectionListener ccl)
        JSR-268 no soporta eventos de inserción o extracción.
        Parameters:
        ccl - Objeto al que ya no se desea notificar los eventos de la conexión.
      • reset

        public byte[] reset()
                     throws ApduConnectionException
        Description copied from interface: ApduConnection
        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.
      • setExclusiveUse

        public void setExclusiveUse​(boolean ex)
        Establece si la conexión se debe abrir en modo exclusivo. Solo puede establecerse si la conexión aun no ha sido abierta.
        Parameters:
        ex - true para abrir la conexión en modo exclusivo, false para abrirla en modo no exclusivo.
      • setProtocol

        public void setProtocol​(ApduConnectionProtocol p)
        Establece el protocolo de conexión con la tarjeta. Por defecto, si no se establece ninguno, se indica * para que sea el API subyancente el que detecte el apropiado.
        Parameters:
        p - Protocolo de conexión con la tarjeta.
      • setTerminal

        public void setTerminal​(int terminalN)
        Description copied from interface: ApduConnection
        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:
        terminalN - Número de terminal que se desea pase a ser el actual.
      • getProtocol

        public ApduConnectionProtocol getProtocol()
        Devuelve el protocolo de conexión con la tarjeta usado actualmente.
        Returns:
        Un objeto de tipo enumerado ConnectionProtocol.
      • isExclusiveUse

        public boolean isExclusiveUse()
        Indica si la conexión con la tarjeta se ha establecido en modo exclusivo o no.
        Returns:
        true si la conexión está establecida en modo exclusivo.
      • getSubConnection

        public ApduConnection getSubConnection()
        Description copied from interface: ApduConnection
        Recupera la conexión subyacente utilizada por la conexión.
        Returns:
        Conexión subyacente con la tarjeta o null si esta conexión es ya la de más bajo nivel.
      • getMaxApduSize

        public int getMaxApduSize()
        Description copied from class: AbstractApduConnectionIso7816
        Obtiene el tamaño máximo de APDU que se puede enviar sin necesidad de hacer una envoltura.
        Specified by:
        getMaxApduSize in class AbstractApduConnectionIso7816
        Returns:
        Tamaño máximo (en octetos) de APDU que se puede enviar sin necesidad de hacer una envoltura.