Interface CashChangerInterface

All Superinterfaces:
JposBaseInterface
All Known Implementing Classes:
CashChangerProperties

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

    • currencyCode

      void currencyCode(String code) throws jpos.JposException
      Final part of setting CurrencyCode. 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 open,
      • code is one of the values specified in CurrencyCodeList,
      • internal property AllowAlwaysSetProperties is true or code equals the previous value of CurrencyCode.
      Parameters:
      code - New value for CurrencyCode property.
      Throws:
      jpos.JposException - If an error occurs.
    • currentExit

      void currentExit(int i) throws jpos.JposException
      Final part of setting CurrentExit. 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 open,
      • i is neither less than one nor greater than DeviceExits.
      Parameters:
      i - New value for CurrentExit property.
      Throws:
      jpos.JposException - If an error occurs.
    • currentService

      void currentService(int i) throws jpos.JposException
      Final part of setting CurrentService. 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 open,
      • i is neither less than zero nor greater than ServiceCount,
      • i is one of the index values specified in ServiceIndex.
      Parameters:
      i - New value for CurrentService property.
      Throws:
      jpos.JposException - If an error occurs.
    • realTimeDataEnabled

      void realTimeDataEnabled(boolean flag) throws jpos.JposException
      Final part of setting RealTimeDataEnabled. 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,
      • CapRealTimeData is true or flag is false.
      Parameters:
      flag - New value for RealTimeDataEnabled property.
      Throws:
      jpos.JposException - If an error occurs.
    • adjustCashCounts

      void adjustCashCounts(String cashCounts) throws jpos.JposException
      Final part of AdjustCashCounts 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,
      • cashCounts consists of a comma separated, not empty list of integer value pairs separated by double-point,
      • one pair may start with ";" to indicate the first bill adjustment.
      Parameters:
      cashCounts - The cashCounts parameter contains cash types and amounts to be initialized.
      Throws:
      jpos.JposException - If an error occurs.
    • beginDeposit

      void beginDeposit() throws jpos.JposException
      Final part of BeginDeposit 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,
      • DepositStatus is STATUS_DEPOSIT_END.
      Throws:
      jpos.JposException - If an error occurs.
    • endDeposit

      void endDeposit(int success) throws jpos.JposException
      Final part of EndDeposit 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,
      • DepositStatus is STATUS_DEPOSIT_COUNT,
      • success is DEPOSIT_CHANGE, DEPOSIT_NOCHANGE or DEPOSIT_REPAY.
      Parameters:
      success - The success parameter holds the value of how to deal with the cash that was deposited. Must be DEPOSIT_COMPLETE.
      Throws:
      jpos.JposException - If an error occurs.
    • fixDeposit

      void fixDeposit() throws jpos.JposException
      Final part of FixDeposit 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,
      • DepositStatus is STATUS_DEPOSIT_START.
      Throws:
      jpos.JposException - If an error occurs.
    • pauseDeposit

      void pauseDeposit(int control) throws jpos.JposException
      Final part of PauseDeposit 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,
      • CapPauseDeposit is true,
      • control is DEPOSIT_PAUSE or DEPOSIT_RESTART,
      • if control is DEPOSIT_PAUSE, DepositStatus is not STATUS_DEPOSIT_END.
      Parameters:
      control - The control parameter contains one of DEPOSIT_PAUSE and DEPOSIT_RESTART.
      Throws:
      jpos.JposException - If an error occurs.
    • readCashCounts

      void readCashCounts(String[] cashCounts, boolean[] discrepancy) throws jpos.JposException
      Final part of ReadCashCounts 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,
      • cashCounts and discrepancy are arrays with length one.
      Parameters:
      cashCounts - The cash count data is placed into cashCounts.
      discrepancy - Reports whether not all counts could be updated as requested.
      Throws:
      jpos.JposException - If an error occurs.
    • dispenseCash

      DispenseCash dispenseCash(String cashCounts) throws jpos.JposException
      Validation part of DispenseCash 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 synchronous or asynchronous execution. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled,
      • all previous DispenseCash operations have been finished,
      • the remainder of cashCounts consists of a comma separated, not empty list of integer value pairs separated by double-point;
      • one pair may start with ";" to indicate the first bill dispense.
      Parameters:
      cashCounts - The cashCounts parameter contains the dispensing cash units and counts.
      Returns:
      DispenseCash object for use in final part.
      Throws:
      jpos.JposException - If an error occurs.
    • dispenseCash

      void dispenseCash(DispenseCash request) throws jpos.JposException
      Final part of DispenseCash method. Can be overwritten within derived classes, if necessary. The parameters of the method will be passed via a DispenseCash object. This method will be called when the corresponding operation shall be performed, either synchronously or asynchronously. All plausibility checks have been made before, only runtime errors can occur.
      Parameters:
      request - Output request object returned by validation method that contains all parameters to be used by DispenseCash.
      Throws:
      jpos.JposException - If an error occurs.
    • dispenseChange

      DispenseChange dispenseChange(int amount) throws jpos.JposException
      Validation part of DispenseChange 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 synchronous or asynchronous execution. This method will be called only if the following plausibility checks lead to a positive result:
      • Device is enabled,
      • all previous DispenseCash and DispenseChange operations have been finished,
      • amount is greater than zero.
      Parameters:
      amount - The amount parameter contains the amount of change to be dispensed.
      Returns:
      DispenseChange object for use in final part.
      Throws:
      jpos.JposException - If an error occurs.
    • dispenseChange

      void dispenseChange(DispenseChange request) throws jpos.JposException
      Final part of DispenseChange method. Can be overwritten within derived classes, if necessary. The parameters of the method will be passed via a DispenseChange object. This method will be called when the corresponding operation shall be performed, either synchronously or asynchronously. All plausibility checks have been made before, only runtime errors can occur.
      Parameters:
      request - Output request object returned by validation method that contains all parameters to be used by DispenseChange.
      Throws:
      jpos.JposException - If an error occurs.