Interface SmartCardRWInterface

All Superinterfaces:
JposBaseInterface
All Known Implementing Classes:
SmartCardRWProperties

public interface SmartCardRWInterface extends JposBaseInterface
Interface for methods that implement property setter and method calls for the SmartCardRW device category. For details about properties, methods and method parameters, see UPOS specification, chapter Smart Card Reader / Writer. Further details about error handling can be found in introduction - Device Behavior Models - Errors.
  • Method Details

    • interfaceMode

      void interfaceMode(int mode) throws jpos.JposException
      Final part of setting InterfaceMode. Can be overwritten within derived classes, if necessary. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled,
      • mode is one of MODE_TRANS, MODE_BLOCK, MODE_APDU or MODE_XML,
      • The corresponding capability bit in CapInterfaceMode, CMODE_TRANS, CMODE_BLOCK, CMODE_APDU or MODE_XML, is set, too.
      Parameters:
      mode - AdditionalSecurityInformation for subsequent storing data into journal.
      Throws:
      jpos.JposException - If an error occurs.
    • isoEmvMode

      void isoEmvMode(int mode) throws jpos.JposException
      Final part of setting IsoEmvMode. Can be overwritten within derived classes, if necessary. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled,
      • mode is one of MODE_ISO or MODE_EMV,
      • The corresponding capability bit in CapIsoEmvMode, CMODE_ISO or CMODE_EMV, is set, too.
      Parameters:
      mode - Indicates the message modes the SCR/W shall use.
      Throws:
      jpos.JposException - If an error occurs.
    • sCSlot

      void sCSlot(int slot) throws jpos.JposException
      Final part of setting SCSlot. Can be overwritten within derived classes, if necessary. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled,
      • Only one bit has been set in slots,
      • The bit set in slots is set in CapSCSlots as well.
      Parameters:
      slot - New current slot.
      Throws:
      jpos.JposException - If an error occurs.
    • beginInsertion

      void beginInsertion(int timeout) throws jpos.JposException
      Final part of BeginInsertion method. Can be overwritten in derived class, if necessary. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled,
      • timeout is FOREVER or ≥ 0.
      Parameters:
      timeout - The number of milliseconds before failing the method.
      Throws:
      jpos.JposException - If an error occurs.
    • beginRemoval

      void beginRemoval(int timeout) throws jpos.JposException
      Final part of BeginRemoval method. Can be overwritten in derived class, if necessary. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled,
      • timeout is FOREVER or ≥ 0.
      Parameters:
      timeout - The number of milliseconds before failing the method.
      Throws:
      jpos.JposException - If an error occurs.
    • endInsertion

      void endInsertion() throws jpos.JposException
      Final part of EndInsertion method. Can be overwritten in derived class, if necessary. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled.
      Throws:
      jpos.JposException - If an error occurs.
    • endRemoval

      void endRemoval() throws jpos.JposException
      Final part of EndRemoval method. Can be overwritten in derived class, if necessary. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled.
      Throws:
      jpos.JposException - If an error occurs.
    • readData

      void readData(int action, int[] count, String[] data) throws jpos.JposException
      Final part of ReadData method. Can be overwritten in derived class, if necessary. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled,
      • count and data are arrays with length one,
      • action is one of READ_DATA, READ_PROGRAM, EXECUTE_AND_READ_DATAor XML_READ_BLOCK_DATA.
      Parameters:
      action - Indicates the type of processing of the data.
      count - The total number of data bytes that have been returned.
      data - The data that is returned.
      Throws:
      jpos.JposException - If an error occurs.
    • writeData

      WriteData writeData(int action, int count, String data) throws jpos.JposException
      Validation part of WriteData method. Can be overwritten within derived classes, if necessary. This method shall only perform additional validation. It will be called before the service buffers the method call for asynchronous execution. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled,
      • action is one of STORE_DATA, STORE_PROGRAM, EXECUTE_DATA, XML_BLOCK_DATA, SECURITY_FUSE or RESET,
      • count is > 0.
      Parameters:
      action - Indicates the type of processing of the data.
      count - The total number of data bytes that shall be sent.
      data - The data to be sent.
      Returns:
      WriteData object for use in final part.
      Throws:
      jpos.JposException - If an error occurs.
    • writeData

      void writeData(WriteData request) throws jpos.JposException
      Final part of WriteData method. Can be overwritten within derived classes, if necessary. The parameters of the method will be passed via a WriteData object. This method will be called when the corresponding operation shall be performed, either synchronously during commit. All plausibility checks have been made before, only runtime errors can occur.
      The default implementation should be called within derived methods to ensure that the property TransactionInProgress is updated as expected.
      Parameters:
      request - Output request object returned by validation method that contains all parameters to be used by WriteData.
      Throws:
      jpos.JposException - If an error occurs.