Class RFIDScannerProperties
java.lang.Object
de.gmxhome.conrad.jpos.jpos_base.JposCommonProperties
de.gmxhome.conrad.jpos.jpos_base.rfidscanner.RFIDScannerProperties
- All Implemented Interfaces:
JposBaseInterface
,RFIDScannerInterface
Class containing the RFID scanner specific properties, their default values and default implementations of
RFIDScannerInterface.
For details about properties, methods and method parameters, see UPOS specification, chapter RFID Scanner.
No methods for meth
-
Field Summary
FieldsModifier and TypeFieldDescriptionboolean
UPOS property CapContinuousRead.boolean
UPOS property CapDisableTag.boolean
UPOS property CapLockTag.int
UPOS property CapMultipleProtocols.boolean
UPOS property CapReadTimer.int
UPOS property CapWriteTag.boolean
UPOS property ContinuousReadMode.byte[]
UPOS property CurrentTagID.int
UPOS property CurrentTagProtocol.byte[]
UPOS property CurrentTagUserData.int
UPOS property ProtocolMask.int
UPOS property ReadTimerInterval.int
UPOS property CapCardErrorDetection.Fields inherited from class de.gmxhome.conrad.jpos.jpos_base.JposCommonProperties
AllowAlwaysSetProperties, AllowDeprecatedMethods, AsyncInputActive, AsyncMode, AutoDisable, CapStatisticsReporting, CapUpdateStatistics, CheckHealthText, Claimed, Claiming, ClaimWaiters, CurrentCommands, CurrentUnitID, DataCount, DataEventEnabled, DataEventList, Device, DeviceEnabled, DeviceServiceDescription, DeviceServiceVersion, DevProps, ErrorString, ErrorUnits, EventCB, EventList, EventSource, EventString, EventUnitID, EventUnits, ExclusiveAllowed, ExclusiveNo, ExclusiveUse, ExclusiveYes, FirstEnableHappened, FlagWhenIdle, FlagWhenIdleStatusValue, FreezeEvents, Index, LogicalName, MaximumConfirmationEventWaitingTime, OutputID, PowerNotify, PowerState, SerializedRequestRunner, SerializedRequests, State, StrictFIFOEventHandling, SuspendedCommands, SuspendedConcurrentCommands, UnitsOnline, UsesSubsystemUnits
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Clear data properties.disableTag(byte[] tagID, int timeout, byte[] password)
Validation part of DisableTag method.void
disableTag(DisableTag request)
Final part of DisableTag method.void
Initialization of properties that must be initialized during open.lockTag(byte[] tagID, int timeout, byte[] password)
Validation part of LockTag method.void
Final part of LockTag method.void
protocolMask(int mask)
Final part of setting ProtocolMask.readTags(int cmd, byte[] filterID, byte[] filtermask, int start, int length, int timeout, byte[] password)
Validation part of ReadTags method.void
Final part of ReadTags method.void
readTimerInterval(int interval)
Final part of setting ReadTimerInterval.startReadTags(int cmd, byte[] filterID, byte[] filtermask, int start, int length, byte[] password)
Final part of StartReadTags method.void
startReadTags(StartReadTags request)
Final part of StartReadTags method.void
stopReadTags(byte[] password)
Final part of StopReadTags method.writeTagData(byte[] tagID, byte[] userdata, int start, int timeout, byte[] password)
Validation part of WriteTagData method.void
writeTagData(WriteTagData request)
Final part of WriteTagData method.writeTagID(byte[] sourceID, byte[] destID, int timeout, byte[] password)
Validation part of DisableTag method.void
writeTagID(WriteTagID request)
Final part of WriteTagID method.Methods inherited from class de.gmxhome.conrad.jpos.jpos_base.JposCommonProperties
addProperties, asyncMode, attachWaiter, autoDisable, checkForDeprecation, checkHealth, checkProperties, claim, clearErrorProperties, clearInput, clearOutput, clearOutputErrorProperties, close, compareFirmwareVersion, dataEventEnabled, deviceEnabled, directIO, directIO, flagWhenIdle, freezeEvents, getClaimingInstance, handlePowerStateOnEnable, initOnClaim, initOnEnable, initOnFirstEnable, newJposOutputRequest, open, powerNotify, release, releaseWaiter, removeFromPropertySetList, resetStatistics, retrieveStatistics, retryInput, retryOutput, signalWaiter, unitDataCount, updateFirmware, updateFirmware, updateStatistics, waitWaiter
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
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
-
Field Details
-
CapContinuousRead
public boolean CapContinuousReadUPOS property CapContinuousRead. Default: false. Can be overwritten by objects derived from JposDevice within the changeDefaults method. -
CapDisableTag
public boolean CapDisableTagUPOS property CapDisableTag. Default: false. Can be overwritten by objects derived from JposDevice within the changeDefaults method. -
CapLockTag
public boolean CapLockTagUPOS property CapLockTag. Default: false. Can be overwritten by objects derived from JposDevice within the changeDefaults method. -
CapMultipleProtocols
public int CapMultipleProtocolsUPOS property CapMultipleProtocols. Default: 0. Must be overwritten by objects derived from JposDevice within the changeDefaults method. -
CapReadTimer
public boolean CapReadTimerUPOS property CapReadTimer. Default: false. Can be overwritten by objects derived from JposDevice within the changeDefaults method. -
CapWriteTag
public int CapWriteTagUPOS property CapWriteTag. Default: CWT_NONE. Can be overwritten by objects derived from JposDevice within the changeDefaults method. -
ContinuousReadMode
public boolean ContinuousReadModeUPOS property ContinuousReadMode. Default: false. Can be overwritten by objects derived from JposDevice within the changeDefaults method. -
CurrentTagID
public byte[] CurrentTagIDUPOS property CurrentTagID. Default: null. Can be overwritten by objects derived from JposDevice within the changeDefaults method. -
CurrentTagProtocol
public int CurrentTagProtocolUPOS property CurrentTagProtocol. Default: 0. Must be overwritten by objects derived from JposDevice before delivering a DataEvent. -
CurrentTagUserData
public byte[] CurrentTagUserDataUPOS property CurrentTagUserData. Default: null. Must be overwritten by objects derived from JposDevice before delivering a DataEvent. -
ProtocolMask
public int ProtocolMaskUPOS property ProtocolMask. Default: Same as CapMultipleProtocols. -
ReadTimerInterval
public int ReadTimerIntervalUPOS property ReadTimerInterval. Default: 0. -
TagCount
public int TagCountUPOS property CapCardErrorDetection. Default: 0.
-
-
Constructor Details
-
RFIDScannerProperties
protected RFIDScannerProperties(int dev)Constructor.- Parameters:
dev
- Device index
-
-
Method Details
-
clearDataProperties
public void clearDataProperties()Description copied from class:JposCommonProperties
Clear data properties. Performed during ClearInput and ClearInputProperties.- Overrides:
clearDataProperties
in classJposCommonProperties
-
initOnOpen
public void initOnOpen()Description copied from class:JposCommonProperties
Initialization of properties that must be initialized during open.- Overrides:
initOnOpen
in classJposCommonProperties
-
protocolMask
public void protocolMask(int mask) throws jpos.JposExceptionDescription copied from interface:RFIDScannerInterface
Final part of setting ProtocolMask. 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 claimed,
- Mask contains only bits that are set in CapMultipleProtocols as well.
- Specified by:
protocolMask
in interfaceRFIDScannerInterface
- Parameters:
mask
- Bit pattern wherein each bit signifies one predefined RFID tag protocol.- Throws:
jpos.JposException
- If an error occurs.
-
readTimerInterval
public void readTimerInterval(int interval) throws jpos.JposExceptionDescription copied from interface:RFIDScannerInterface
Final part of setting ReadTimerInterval. 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 claimed,
- CapReadTimer is true,
- ContinuousReadMode is false,
- interval is not negative.
- Specified by:
readTimerInterval
in interfaceRFIDScannerInterface
- Parameters:
interval
- The minimum time interval between tag reads in milliseconds.- Throws:
jpos.JposException
- If an error occurs.
-
stopReadTags
public void stopReadTags(byte[] password) throws jpos.JposExceptionDescription copied from interface:RFIDScannerInterface
Final part of StopReadTags 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,
- ContinuousReadMode is true.
- Specified by:
stopReadTags
in interfaceRFIDScannerInterface
- Parameters:
password
- Authorized key for reader, if needed, null or zero length binary otherwise.- Throws:
jpos.JposException
- If an error occurs.
-
startReadTags
public StartReadTags startReadTags(int cmd, byte[] filterID, byte[] filtermask, int start, int length, byte[] password) throws jpos.JposExceptionDescription copied from interface:RFIDScannerInterface
Final part of StartReadTags method. Can be overwritten in derived class, 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,
- CapContinuousRead is true,
- ContinuousReadMode is false,
- State is S_IDLE,
- filterID and filtermask have the same length,
- cmd is one of RT_ID, RT_FULLUSERDATA, RT_PARTIALUSERDATA, RT_ID_FULLUSERDATA or RT_ID_PARTIALUSERDATA,
- If cmd is one of RT_PARTIALUSERDATA or RT_ID_PARTIALUSERDATA, start and length are positive.
- Specified by:
startReadTags
in interfaceRFIDScannerInterface
- Parameters:
cmd
- Read command, specifies what has to be read.filterID
- Holds a bit pattern to be AND’ed with filtermask to specify which tags shall be read.filtermask
- Mask for filterID and tag ID, a tag will be read whenever the tag ID AND'ed with filtermask is equal to filterID AND'ed with filtermask.start
- In case of partial user data read, start specifies the zero-based position within user data where read shall start.length
- In case of partial user data read, length specifies the number of bytes to be read.password
- Authorized key for reader, if needed, null or zero length binary otherwise.- Returns:
- StartReadTags object for use in final part.
- Throws:
jpos.JposException
- If an error occurs.
-
readTags
public ReadTags readTags(int cmd, byte[] filterID, byte[] filtermask, int start, int length, int timeout, byte[] password) throws jpos.JposExceptionDescription copied from interface:RFIDScannerInterface
Validation part of ReadTags method. Can be overwritten in derived class, 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,
- ContinuousReadMode is false,
- State is S_IDLE,
- filterID and filtermask have the same length,
- cmd is one of RT_ID, RT_FULLUSERDATA, RT_PARTIALUSERDATA, RT_ID_FULLUSERDATA or RT_ID_PARTIALUSERDATA,
- If cmd is one of RT_PARTIALUSERDATA or RT_ID_PARTIALUSERDATA, start and length are positive,
- timeout is positive or FOREVER.
- Specified by:
readTags
in interfaceRFIDScannerInterface
- Parameters:
cmd
- Read command, specifies what has to be read.filterID
- Holds a bit pattern to be AND’ed with filtermask to specify which tags shall be read.filtermask
- Mask for filterID and tag ID, a tag will be read whenever the tag ID AND'ed with filtermask is equal to filterID AND'ed with filtermask.start
- In case of partial user data read, start specifies the zero-based position within user data where read shall start.length
- In case of partial user data read, length specifies the number of bytes to be read.timeout
- Allowed execution time, in milliseconds or FOREVER for unlimited execution time.password
- Authorized key for reader, if needed, null or zero length binary otherwise.- Returns:
- ReadTags object for use in final part.
- Throws:
jpos.JposException
- If an error occurs.
-
disableTag
Description copied from interface:RFIDScannerInterface
Validation part of DisableTag 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,
- CapDisableTag is true,
- ContinuousReadMode is false,
- State is S_IDLE,
- timeout is positive or FOREVER.
- Specified by:
disableTag
in interfaceRFIDScannerInterface
- Parameters:
tagID
- Tag ID to be processed.timeout
- Allowed execution time, in milliseconds.password
- Authorized key for reader that might be required, zero length if not needed.- Returns:
- DisableTag object for use in final part.
- Throws:
jpos.JposException
- If an error occurs.
-
lockTag
Description copied from interface:RFIDScannerInterface
Validation part of LockTag 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,
- CapLockTag is true,
- ContinuousReadMode is false,
- State is S_IDLE,
- timeout is positive or FOREVER.
- Specified by:
lockTag
in interfaceRFIDScannerInterface
- Parameters:
tagID
- Tag ID to be processed.timeout
- Allowed execution time, in milliseconds.password
- Authorized key for reader that might be required, zero length if not needed.- Returns:
- LockTag object for use in final part.
- Throws:
jpos.JposException
- If an error occurs.
-
writeTagData
public WriteTagData writeTagData(byte[] tagID, byte[] userdata, int start, int timeout, byte[] password) throws jpos.JposExceptionDescription copied from interface:RFIDScannerInterface
Validation part of WriteTagData 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,
- CapWriteTag is one of CWT_ALL or CWT_USERDATA,
- ContinuousReadMode is false,
- State is S_IDLE,
- start is positive,
- timeout is positive or FOREVER.
- Specified by:
writeTagData
in interfaceRFIDScannerInterface
- Parameters:
tagID
- Tag ID to be processed.userdata
- Data to be written.start
- Zero-based position within the tags UserData field to begin writing.timeout
- Allowed execution time, in milliseconds.password
- Authorized key for reader that might be required, zero length if not needed.- Returns:
- WriteTagData object for use in final part.
- Throws:
jpos.JposException
- If an error occurs.
-
writeTagID
public WriteTagID writeTagID(byte[] sourceID, byte[] destID, int timeout, byte[] password) throws jpos.JposExceptionDescription copied from interface:RFIDScannerInterface
Validation part of DisableTag 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,
- CapWriteTag is one of CWT_ALL or CWT_ID,
- ContinuousReadMode is false,
- State is S_IDLE,
- timeout is positive or FOREVER.
- Specified by:
writeTagID
in interfaceRFIDScannerInterface
- Parameters:
sourceID
- Original Tag ID to be processed.destID
- New ID of the tag.timeout
- Allowed execution time, in milliseconds.password
- Authorized key for reader that might be required, zero length if not needed.- Returns:
- WriteTagID object for use in final part.
- Throws:
jpos.JposException
- If an error occurs.
-
disableTag
Description copied from interface:RFIDScannerInterface
Final part of DisableTag method. Can be overwritten within derived classes, if necessary. The parameters of the method will be passed via a DisableTag object. This method will be called when the corresponding operation shall be performed. All plausibility checks have been made before, only runtime errors can occur.- Specified by:
disableTag
in interfaceRFIDScannerInterface
- Parameters:
request
- Output request object returned by validation method that contains all parameters to be used by DisableTag.- Throws:
jpos.JposException
- If an error occurs.
-
lockTag
Description copied from interface:RFIDScannerInterface
Final part of LockTag method. Can be overwritten within derived classes, if necessary. The parameters of the method will be passed via a LockTag object. This method will be called when the corresponding operation shall be performed. All plausibility checks have been made before, only runtime errors can occur.- Specified by:
lockTag
in interfaceRFIDScannerInterface
- Parameters:
request
- Output request object returned by validation method that contains all parameters to be used by LockTag.- Throws:
jpos.JposException
- If an error occurs.
-
writeTagData
Description copied from interface:RFIDScannerInterface
Final part of WriteTagData method. Can be overwritten within derived classes, if necessary. The parameters of the method will be passed via a WriteTagData object. This method will be called when the corresponding operation shall be performed. All plausibility checks have been made before, only runtime errors can occur.- Specified by:
writeTagData
in interfaceRFIDScannerInterface
- Parameters:
request
- Output request object returned by validation method that contains all parameters to be used by WriteTagData.- Throws:
jpos.JposException
- If an error occurs.
-
writeTagID
Description copied from interface:RFIDScannerInterface
Final part of WriteTagID method. Can be overwritten within derived classes, if necessary. The parameters of the method will be passed via a WriteTagID object. This method will be called when the corresponding operation shall be performed. All plausibility checks have been made before, only runtime errors can occur.- Specified by:
writeTagID
in interfaceRFIDScannerInterface
- Parameters:
request
- Output request object returned by validation method that contains all parameters to be used by WriteTagID.- Throws:
jpos.JposException
- If an error occurs.
-
readTags
Description copied from interface:RFIDScannerInterface
Final part of ReadTags method. Can be overwritten within derived classes, if necessary. The parameters of the method will be passed via a ReadTags object. This method will be called when the corresponding operation shall be performed. All plausibility checks have been made before, only runtime errors can occur.- Specified by:
readTags
in interfaceRFIDScannerInterface
- Parameters:
request
- Input request object returned by validation method that contains all parameters to be used by ReadTags.- Throws:
jpos.JposException
- If an error occurs.
-
startReadTags
Description copied from interface:RFIDScannerInterface
Final part of StartReadTags method. Can be overwritten within derived classes, if necessary. The parameters of the method will be passed via a StartReadTags object. This method will be called when the corresponding operation shall be performed. All plausibility checks have been made before, only runtime errors can occur.- Specified by:
startReadTags
in interfaceRFIDScannerInterface
- Parameters:
request
- Input request object returned by validation method that contains all parameters to be used by StartReadTags.- Throws:
jpos.JposException
- If an error occurs.
-