Package SampleCombiSpecial
Class Device
java.lang.Object
de.gmxhome.conrad.jpos.jpos_base.JposBaseDevice
de.gmxhome.conrad.jpos.jpos_base.JposDevice
SampleCombiSpecial.Device
- All Implemented Interfaces:
Runnable
JposDevice based implementation of JavaPOS Gate, ItemDispenser, Lights, MotionSensor and SignatureCapture device
service implementations for the sample device implemented in SampleCombiSpecial.tcl.
For a complete list of possible commands and responses, look at the comments at the beginning of the sub-device specific parts of the device simulator script.
For a complete list of possible commands and responses, look at the comments at the beginning of the sub-device specific parts of the device simulator script.
Here a full list of all device specific properties that can be changed via jpos.xml:
- Baudrate: Baud rate of the communication device. Must be one of the baud rate constants specified in the
SerialIOProcessor class. Default: 9600 (BAUDRATE_9600).
This property may only be set if the communication with the device shall be made via serial port. - CharacterTimeout: Positive integer value, specifying the maximum delay between bytes that belong to the same frame. Default value: 10 milliseconds.
- Databits: Number of data bits per data unit. Must be 7 or 8. Default: 8. It is strictly recommended to let
this value unchanged.
This property may only be set if the communication with the device shall be made via serial port. - DispenserNearEndCount: Specifies the number of items in the item dispenser that must be present to report status OK instead of nearly empty. Default: 2.
- LoggingType: Specifies the logging format used by the IO processor. Must be one of the logging type values specified in the UniqueIOProcessor class. Default: 1 (UniqueIOProcessor.LoggingTypeEscapeString).
- MaxRetry: Specifies the maximum number of retries. Should be > 0 only for RS232 (real COM ports) where characters can become lost or corrupted on the communication line. Default: 2.
- MotionActivityTimeout: The device uses this delay after motion detection before it reports motion has been
finished. Default: 5000.
This property must only be set if the corresponding timeout in the device simulator has been changed. - OwnPort: Integer value between 0 and 65535 specifying the TCP port used for communication with the device
simulator. Default: 0 (for random port number selected by operating system).
This property may only be set if the communication with the device shall be made via TCP. - Parity: Parity of each data unit. Must be one of the parity constants specified in the
SerialIOProcessor class. Default: 0 (PARITY_NONE).
This property may only be set if the communication with the device shall be made via serial port. - PollDelay: Minimum time between status requests, in milliseconds. Status requests will be used to monitor the device state. Default: 300.
- Port: Operating system specific name of the serial communication port (e.g. RS232, Usb2Serial, Bluetooth...) or the TCP address to be used for communication with the device simulator. In case of RS232, names look typically like COM2 or /dev/ttyS1. In case of TCP, names are of the form IPv4:port, where IPv4 is the IP address of the device and port its TCP port.
- RequestTimeout: Maximum time, in milliseconds, between sending a command to the simulator and getting the first byte of its response. Default: 500.
- Stopbits: Number of stop bits per data unit. Must be 1 or 2. Default: 2.
This property may only be set if the communication with the device shall be made via serial port. - UsbToSerial: Specifies whether the specified port is a virtual port that will be removed by the operating
system when the device is not connected. Default: false.
This property may only be set if the communication with the device shall be made via serial port.
-
Field Summary
Fields inherited from class de.gmxhome.conrad.jpos.jpos_base.JposDevice
Belts, BillAcceptors, BillDispensers, Biometricss, BumpBars, CashChangers, CashDrawers, CATs, CheckScanners, ClaimedBelt, ClaimedBillAcceptor, ClaimedBillDispenser, ClaimedBiometrics, ClaimedBumpBar, ClaimedCashChanger, ClaimedCashDrawer, ClaimedCAT, ClaimedCheckScanner, ClaimedCoinAcceptor, ClaimedCoinDispenser, ClaimedDeviceMonitor, ClaimedElectronicJournal, ClaimedElectronicValueRW, ClaimedFiscalPrinter, ClaimedGate, ClaimedGestureControl, ClaimedGraphicDisplay, ClaimedHardTotals, ClaimedImageScanner, ClaimedIndividualRecognition, ClaimedItemDispenser, ClaimedKeylock, ClaimedLights, ClaimedLineDisplay, ClaimedMICR, ClaimedMotionSensor, ClaimedMSR, ClaimedPINPad, ClaimedPointCardRW, ClaimedPOSKeyboard, ClaimedPOSPower, ClaimedPOSPrinter, ClaimedRemoteOrderDisplay, ClaimedRFIDScanner, ClaimedScale, ClaimedScanner, ClaimedSignatureCapture, ClaimedSmartCardRW, ClaimedSoundPlayer, ClaimedSoundRecorder, ClaimedSpeechSynthesis, ClaimedToneIndicator, ClaimedVideoCapture, ClaimedVoiceRecognition, CoinAcceptors, CoinDispensers, DeviceMonitors, ElectronicJournals, ElectronicValueRWs, FiscalPrinters, Gates, GestureControls, GraphicDisplays, HardTotalss, ImageScanners, IndividualRecognitions, ItemDispensers, Keylocks, Lightss, LineDisplays, MICRs, MotionSensors, MSRs, PINPads, PointCardRWs, POSKeyboards, POSPowers, POSPrinters, RemoteOrderDisplays, RFIDScanners, Scales, Scanners, SignatureCaptures, SmartCardRWs, SoundPlayers, SoundRecorders, SpeechSynthesiss, ToneIndicators, VideoCaptures, VoiceRecognitions
Fields inherited from class de.gmxhome.conrad.jpos.jpos_base.JposBaseDevice
AllowAlwaysSetProperties, AsyncProcessorRunning, CapCompareFirmwareVersion, CapPowerReporting, CapUpdateFirmware, CurrentCommand, DrawerBeepVolume, ID, JposVersion, Log, LogFilePath, LogFilePattern, LoggerFormat, LoggerName, LogLevel, MaxArrayStringElements, MaximumConfirmationEventWaitingTime, PendingCommands, PhysicalDeviceDescription, PhysicalDeviceName, SerialIOAdapterClass, StrictFIFOEventHandling
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
changeDefaults(GateProperties props)
Change defaults of properties.void
Change defaults of properties.void
changeDefaults(LightsProperties props)
Change defaults of properties.void
changeDefaults(MotionSensorProperties props)
Change defaults of properties.void
Change defaults of properties.void
checkProperties(jpos.config.JposEntry entry)
Checks whether a JposEntry belongs to a predefined property value an if so, sets the corresponding driver valuegetGateProperties(int index)
Returns device implementation of GateProperties.getItemDispenserProperties(int index)
Returns device implementation of ItemDispenserProperties.getLightsProperties(int index)
Returns device implementation of LightsProperties.getMotionSensorProperties(int index)
Returns device implementation of MotionSensorProperties.getSignatureCaptureProperties(int index)
Returns device implementation of SignatureCaptureProperties.void
run()
Device control thread, polls device states and handles status changes.Methods inherited from class de.gmxhome.conrad.jpos.jpos_base.JposDevice
beltInit, billAcceptorInit, billDispenserInit, biometricsInit, bumpBarInit, cashChangerInit, cashDrawerInit, cATInit, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, changeDefaults, checkScannerInit, coinAcceptorInit, coinDispenserInit, deviceMonitorInit, electronicJournalInit, electronicValueRWInit, fiscalPrinterInit, gateInit, gestureControlInit, getArrayOf, getBeltProperties, getBillAcceptorProperties, getBillDispenserProperties, getBiometricsProperties, getBumpBarProperties, getCashChangerProperties, getCashDrawerProperties, getCATProperties, getCheckScannerProperties, getCoinAcceptorProperties, getCoinDispenserProperties, getDeviceMonitorProperties, getElectronicJournalProperties, getElectronicValueRWProperties, getFiscalPrinterProperties, getGestureControlProperties, getGraphicDisplayProperties, getHardTotalsProperties, getImageScannerProperties, getIndividualRecognitionProperties, getKeylockProperties, getLineDisplayProperties, getMICRProperties, getMSRProperties, getPINPadProperties, getPointCardRWProperties, getPOSKeyboardProperties, getPOSPowerProperties, getPOSPrinterProperties, getRemoteOrderDisplayProperties, getRFIDScannerProperties, getScaleProperties, getScannerProperties, getSmartCardRWProperties, getSoundPlayerProperties, getSoundRecorderProperties, getSpeechSynthesisProperties, getToneIndicatorProperties, getVideoCaptureProperties, getVoiceRecognitionProperties, graphicDisplayInit, hardTotalsInit, imageScannerInit, individualRecognitionInit, itemDispenserInit, keylockInit, lightsInit, lineDisplayInit, mICRInit, motionSensorInit, mSRInit, noOfPropertySets, pINPadInit, pointCardRWInit, pOSKeyboardInit, pOSPowerInit, pOSPrinterInit, remoteOrderDisplayInit, rFIDScannerInit, scaleInit, scannerInit, signatureCaptureInit, smartCardRWInit, soundPlayerInit, soundRecorderInit, speechSynthesisInit, toneIndicatorInit, videoCaptureInit, voiceRecognitionInit
Methods inherited from class de.gmxhome.conrad.jpos.jpos_base.JposBaseDevice
check, checkext, checkMember, checkRange, concurrentProcessingSupported, createConcurrentRequestThread, delay, getClaimingInstance, getCount, getPropertySetInstance, getRequestRunnersRequest, handleEvent, handleEvent, handleEvent, handleEvent, handleEvent, handleEvent, handlePowerStateOnEnable, invokeRequestThread, log, member, member, postDirectIOProcessing, postTransitionProcessing, prepareSignalStatusWaits, processEventList, removePropertySet, signalStatusWaits, stringArrayToLongArray, synchronizedMessageBox
-
Constructor Details
-
Device
Constructor, Stores communication target. Communication target can be a COM port or a TCP target. Valid COM port specifiers differ between operating systems, e.g. on Windows, COM1 can be a valid communication target while on Linux, /dev/ttyS0 might specify the same target. Format of TCP targets is IpAddress:Port, e.g. 10.11.12.13:45678.- Parameters:
id
- COM port or TCP target.- Throws:
jpos.JposException
- if Communication target invalid.
-
-
Method Details
-
checkProperties
public void checkProperties(jpos.config.JposEntry entry) throws jpos.JposExceptionDescription copied from class:JposBaseDevice
Checks whether a JposEntry belongs to a predefined property value an if so, sets the corresponding driver value- Overrides:
checkProperties
in classJposBaseDevice
- Parameters:
entry
- Entry to be checked, contains value to be set- Throws:
jpos.JposException
- if a property value is invalid
-
run
public void run()Device control thread, polls device states and handles status changes. -
changeDefaults
Description copied from class:JposDevice
Change defaults of properties. Must be implemented within derived classed that support lights services.- Overrides:
changeDefaults
in classJposDevice
- Parameters:
props
- Property set for setting the property defaults
-
changeDefaults
Description copied from class:JposDevice
Change defaults of properties. Must be implemented within derived classed that support gate services.- Overrides:
changeDefaults
in classJposDevice
- Parameters:
props
- Property set for setting the property defaults
-
changeDefaults
Description copied from class:JposDevice
Change defaults of properties. Must be implemented within derived classed that support motion sensor services.- Overrides:
changeDefaults
in classJposDevice
- Parameters:
props
- Property set for setting the property defaults
-
changeDefaults
Description copied from class:JposDevice
Change defaults of properties. Must be implemented within derived classed that support signature capture services.- Overrides:
changeDefaults
in classJposDevice
- Parameters:
props
- Property set for setting the property defaults
-
changeDefaults
Description copied from class:JposDevice
Change defaults of properties. Must be implemented within derived classed that support item dispenser services.- Overrides:
changeDefaults
in classJposDevice
- Parameters:
props
- Property set for setting the property defaults
-
getGateProperties
Description copied from class:JposDevice
Returns device implementation of GateProperties.- Overrides:
getGateProperties
in classJposDevice
- Parameters:
index
- Device index, see constructor of JposCommonProperties.- Returns:
- Instance of GateProperties that matches the requirements of the corresponding device service.
-
getItemDispenserProperties
Description copied from class:JposDevice
Returns device implementation of ItemDispenserProperties.- Overrides:
getItemDispenserProperties
in classJposDevice
- Parameters:
index
- Device index, see constructor of JposCommonProperties.- Returns:
- Instance of ItemDispenserProperties that matches the requirements of the corresponding device service.
-
getLightsProperties
Description copied from class:JposDevice
Returns device implementation of LightsProperties.- Overrides:
getLightsProperties
in classJposDevice
- Parameters:
index
- Device index, see constructor of JposCommonProperties.- Returns:
- Instance of LightsProperties that matches the requirements of the corresponding device service.
-
getMotionSensorProperties
Description copied from class:JposDevice
Returns device implementation of MotionSensorProperties.- Overrides:
getMotionSensorProperties
in classJposDevice
- Parameters:
index
- Device index, see constructor of JposCommonProperties.- Returns:
- Instance of MotionSensorProperties that matches the requirements of the corresponding device service.
-
getSignatureCaptureProperties
Description copied from class:JposDevice
Returns device implementation of SignatureCaptureProperties.- Overrides:
getSignatureCaptureProperties
in classJposDevice
- Parameters:
index
- Device index, see constructor of JposCommonProperties.- Returns:
- Instance of SignatureCaptureProperties that matches the requirements of the corresponding device service.
-