Interface PINPadInterface
- All Superinterfaces:
JposBaseInterface
- All Known Implementing Classes:
PINPadProperties
Interface for methods that implement property setter and method calls for the PINPad device category.
For details about properties, methods and method parameters, see UPOS specification, chapter PIN Pad.
Further details about error handling can be found in introduction - Device Behavior Models - Errors.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
beginEFTTransaction(String pinPadSystem, int transactionHost)
Final part of BeginEFTTransaction method.void
computeMAC(String inMsg, String[] outMsg)
Final part of ComputeMAC method.void
Final part of EnablePINEntry method.void
endEFTTransaction(int completionCode)
Final part of EndEFTTransaction method.void
setAccountNumber(String accountNumber)
Final part of setting AccountNumber.void
setAmount(long amount)
Final part of setting Amount.void
setMaximumPINLength(int maximumPINLength)
Final part of setting MaximumPINLength.void
setMerchantID(String merchantID)
Final part of setting MerchantID.void
setMinimumPINLength(int minimumPINLength)
Final part of setting MinimumPINLength.void
setPrompt(int prompt)
Final part of setting Prompt.void
setPromptLanguage(String promptLanguage)
Final part of setting PromptLanguage.void
setTerminalID(String terminalID)
Final part of setting TerminalID.void
setTrack1Data(byte[] track1Data)
Final part of setting Track1Data.void
setTrack2Data(byte[] track2Data)
Final part of setting Track2Data.void
setTrack3Data(byte[] track3Data)
Final part of setting Track3Data.void
setTrack4Data(byte[] track4Data)
Final part of setting Track4Data.void
setTransactionType(int transactionType)
Final part of setting TransactionType.void
Final part of UpdateKey method.void
Final part of VerifyMAC method.Methods inherited from interface de.gmxhome.conrad.jpos.jpos_base.JposBaseInterface
asyncMode, autoDisable, checkHealth, claim, clearInput, clearOutput, close, compareFirmwareVersion, dataEventEnabled, deviceEnabled, directIO, directIO, flagWhenIdle, freezeEvents, handlePowerStateOnEnable, newJposOutputRequest, open, powerNotify, release, removeFromPropertySetList, resetStatistics, retrieveStatistics, retryInput, retryOutput, unitDataCount, updateFirmware, updateFirmware, updateStatistics
-
Method Details
-
setAccountNumber
Final part of setting AccountNumber. 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 opened,
- EFT transaction has not been started,
- internal property AllowAlwaysSetProperties is true or accountNumber equals the previous value of AccountNumber.
- Parameters:
accountNumber
- Account number to be used for the current EFT transaction.- Throws:
jpos.JposException
- If an error occurs.
-
setAmount
void setAmount(long amount) throws jpos.JposExceptionFinal part of setting Amount. 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 opened,
- EFT transaction has not been started,
- amount is not negative,
- internal property AllowAlwaysSetProperties is true or amount equals the previous value of Amount.
- Parameters:
amount
- Amount of the current EFT transaction.- Throws:
jpos.JposException
- If an error occurs.
-
setMaximumPINLength
void setMaximumPINLength(int maximumPINLength) throws jpos.JposExceptionFinal part of setting MaximumPINLength. 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 opened,
- Property PINEntryEnabled is false,
- maximumPINLength is greater than zero,
- internal property AllowAlwaysSetProperties is true or maximumPINLength equals the previous value of MaximumPINLength.
- Parameters:
maximumPINLength
- Maximum acceptable number of digits in a PIN.- Throws:
jpos.JposException
- If an error occurs.
-
setMerchantID
Final part of setting MerchantID. 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 opened,
- EFT transaction has not been started,
- internal property AllowAlwaysSetProperties is true or merchantID equals the previous value of MerchantID.
- Parameters:
merchantID
- Merchant ID, as known by the EFT Transaction Host.- Throws:
jpos.JposException
- If an error occurs.
-
setMinimumPINLength
void setMinimumPINLength(int minimumPINLength) throws jpos.JposExceptionFinal part of setting MinimumPINLength. 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 opened,
- Property PINEntryEnabled is false,
- minimumPINLength is a positive value,
- internal property AllowAlwaysSetProperties is true or minimumPINLength equals the previous value of MinimumPINLength.
- Parameters:
minimumPINLength
- Minimum acceptable number of digits in a PIN.- Throws:
jpos.JposException
- If an error occurs.
-
setPrompt
void setPrompt(int prompt) throws jpos.JposExceptionFinal part of setting Prompt. 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 opened,
- CapDisplay is one of DISP_PINRESTRICTED, DISP_RESTRICTED_LIST or DISP_RESTRICTED_ORDER,
- If CapDisplay is DISP_PINRESTRICTED, PINEntryEnabled is true,
- prompt equals one of the values specified in property AvailablePromptsList,
- internal property AllowAlwaysSetProperties is true or prompt equals the previous value of Prompt.
- Parameters:
prompt
- Identifies a predefined message to be displayed on the PIN Pad.- Throws:
jpos.JposException
- If an error occurs.
-
setPromptLanguage
Final part of setting PromptLanguage. 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 opened,
- CapLanguage is not LANG_NONE,
- If CapLanguage is LANG_ONE, promptLanguage equals the default value of PromptLanguage,
- If CapLanguage is LANG_PINRESTRICTED, PINEntryEnabled is false,
- promptLanguage specifies one of the languages specified in property AvailableLanguagesList,
- internal property AllowAlwaysSetProperties is true or promptLanguage equals the previous value of PromptLanguage.
- Parameters:
promptLanguage
- Holds the "language definition" for the message to be displayed.- Throws:
jpos.JposException
- If an error occurs.
-
setTerminalID
Final part of setting TerminalID. 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 opened,
- EFT transaction has not been started,
- internal property AllowAlwaysSetProperties is true or terminalID equals the previous value of TerminalID.
- Parameters:
terminalID
- Terminal ID, as known by the EFT Transaction Host.- Throws:
jpos.JposException
- If an error occurs.
-
setTrack1Data
void setTrack1Data(byte[] track1Data) throws jpos.JposExceptionFinal part of setting Track1Data. 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 opened,
- EFT transaction has not been started,
- internal property AllowAlwaysSetProperties is true or track1Data equals the previous value of Track1Data.
- Parameters:
track1Data
- Decoded track 1 data from the previous card swipe or an empty array.- Throws:
jpos.JposException
- If an error occurs.
-
setTrack2Data
void setTrack2Data(byte[] track2Data) throws jpos.JposExceptionFinal part of setting Track2Data. 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 opened,
- EFT transaction has not been started,
- internal property AllowAlwaysSetProperties is true or track2Data equals the previous value of Track2Data.
- Parameters:
track2Data
- Decoded track 2 data from the previous card swipe or an empty array.- Throws:
jpos.JposException
- If an error occurs.
-
setTrack3Data
void setTrack3Data(byte[] track3Data) throws jpos.JposExceptionFinal part of setting Track3Data. 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 opened,
- EFT transaction has not been started,
- internal property AllowAlwaysSetProperties is true or track3Data equals the previous value of Track3Data.
- Parameters:
track3Data
- Decoded track 3 data from the previous card swipe or an empty array.- Throws:
jpos.JposException
- If an error occurs.
-
setTrack4Data
void setTrack4Data(byte[] track4Data) throws jpos.JposExceptionFinal part of setting Track4Data. 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 opened,
- EFT transaction has not been started,
- internal property AllowAlwaysSetProperties is true or track4Data equals the previous value of Track4Data.
- Parameters:
track4Data
- Decoded track 4 (JIS-II) data from the previous card swipe or an empty array.- Throws:
jpos.JposException
- If an error occurs.
-
setTransactionType
void setTransactionType(int transactionType) throws jpos.JposExceptionFinal part of setting TransactionType. 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 opened,
- EFT transaction has not been started,
- transactionType is one of TRANS_DEBIT, TRANS_CREDIT, TRANS_INQ, TRANS_RECONCILE or TRANS_ADMIN,
- internal property AllowAlwaysSetProperties is true or transactionType equals the previous value of TransactionType.
- Parameters:
transactionType
- Type of the current EFT Transaction.- Throws:
jpos.JposException
- If an error occurs.
-
beginEFTTransaction
Final part of BeginEFTTransaction 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,
- EFT transaction has not been started,
- pinPadSystem equals one of the predefined values, see PINPadProperties, property SupportedPINPadSystems.
- Parameters:
pinPadSystem
- Name of the desired PIN Pad Management System.transactionHost
- Identifier of an EFT transaction host to be used for this transaction.- Throws:
jpos.JposException
- If an error occurs.
-
computeMAC
Final part of ComputeMAC 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,
- EFT transaction has been started,
- CapMACCalculation is true,
- PINEntryEnabled is false,
- inMsg is not null,
- outMsg is a String array with length 1.
- Parameters:
inMsg
- The message that the application intends to send to an EFT Transaction.outMsg
- Reformatted message that may actually be transmitted to an EFT Transaction Host.- Throws:
jpos.JposException
- If an error occurs.
-
enablePINEntry
void enablePINEntry() throws jpos.JposExceptionFinal part of EnablePINEntry 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,
- EFT transaction has been started,
- PINEntryEnabled is false,
- MaximumPINLength ≥ MinimumPINLength.
- Throws:
jpos.JposException
- If an error occurs.
-
endEFTTransaction
void endEFTTransaction(int completionCode) throws jpos.JposExceptionFinal part of EndEFTTransaction 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,
- EFT transaction has been started,
- completionCode is EFT_NORMAL or EFT_ABNORMAL.
- Parameters:
completionCode
- The completion code.- Throws:
jpos.JposException
- If an error occurs.
-
updateKey
Final part of UpdateKey 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,
- EFT transaction has been started,
- key consists of an even number of hexadecimal digits (0-9 and A-F).
- Parameters:
keyNum
- A key number.key
- A Hex-ASCII value for a new key.- Throws:
jpos.JposException
- If an error occurs.
-
verifyMAC
Final part of VerifyMAC 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,
- CapMACCalculation is true,
- EFT transaction has been started,
- PINEntryEnabled is false,
- message is not null.
- Parameters:
message
- A message received from an EFT Transaction Host.- Throws:
jpos.JposException
- If an error occurs.
-