2008-09-15 1.1.0

org.eclipse.soda.dk.rfid.write.profile
Class RfidWriteProfile

java.lang.Object
  extended by Profile
      extended by org.eclipse.soda.dk.rfid.write.profile.RfidWriteProfile
All Implemented Interfaces:
RfidWriteProfileService
Direct Known Subclasses:
RfidWriteProfileTester

public abstract class RfidWriteProfile
extends Profile
implements RfidWriteProfileService

The RFID Write Profile defined the common method of perform write operation against Radio Frequency Identification (RFID) tags across different RFID readers. We have tried to model some of this profile based the Low Level Reader Protocol (LLRP) write functions. The first set of controls define how the RFID Write Profile will report the tag write information. The next set of controls define how the Write Operations will be performed and how these Write Operations will be triggered. <p> NOTE: This is a very early definition of this profile and will change as we get important feedback from application providers and hardware vendors. </p> <p>RFID Write Profile Questions/Issues </p> <ul> <li>Currently, LLRP does not support auto increment of the Tag ID's being written. This profile currently does not support auto increment. Is this the correct decision for this profile? </li> <li>What other operations (like Kill Tag, Erase Tag) should be supported? </li> <li>What is the best way to handle passwords? </li> <li>Can this profile be made simpler? Can any of these controls be deleted? </li> </ul> . The RfidWriteProfile class implements the RfidWriteProfileService and provides the controls for the profile.

The list of exported services:

Version:
1.1.0
See Also:
RfidWriteProfileService,

See the following specification(s) for more details:

Title: EPCglobal Low Level Reader Protocol (LLRP)
URL: http://www.epcglobalinc.org/standards/llrp
Version: 1.0.1
Date: August 13, 2007
Vendor: EPCglobal
Comment: Ratified

Title: EPCglobal Application Level Events (ALE) Specification
URL: http://www.epcglobalinc.org/standards/ale/
Version: 1.1
Date: February 27, 2008
Vendor: EPCglobal
Comment: Ratified

Title: EPCglobal Low Level Reader Protocol (LLRP)
URL: http://www.epcglobalinc.org/standards/llrp
Version: 1.0.1
Date: August 13, 2007
Vendor: EPCglobal
Comment: Ratified

Title: EPCglobal Application Level Events (ALE) Specification
URL: http://www.epcglobalinc.org/standards/ale/
Version: 1.1
Date: February 27, 2008
Vendor: EPCglobal
Comment: Ratified

Field Summary
protected  InterestMasks aggregationInterest
          Define the aggregation interest (InterestMasks) field.
protected  MethodMeasurement antennaConfiguration
          The "AntennaConfiguration" is the map containing the antenna configuration.
static java.lang.String CLASS_NAME
          Defines the full class name.
static java.lang.String CONTROL_PROFILE_PREFIX
          Define the control profile prefix configuration key.
protected  java.lang.String controlProfileServiceBitsExternalKey
          Define control profile service bits external key.
protected  java.lang.String controlProfileServiceBitsGetExternalKey
          Define control profile service bits get external key.
protected  java.lang.String controlProfileServiceLongsExternalKey
          Define control profile service longs external key.
protected  java.lang.String controlProfileServiceLongsGetExternalKey
          Define control profile service longs get external key.
protected  MethodMeasurement dataExtensions
          The DataExtensions measurement is a map of metadata to be associated with tag data.
protected  MethodMeasurement dataWriteExtensions
          The "DataWriteExtensions" measurement is a map of meta data to be associated with tag data.
static java.lang.String GPIO_PROFILE_PREFIX
          Define the gpio profile prefix configuration key.
protected  java.lang.String gpioProfileServiceAnalogInputExternalKey
          Define gpio profile service analog input external key.
protected  java.lang.String gpioProfileServiceAnalogInputGetExternalKey
          Define gpio profile service analog input get external key.
protected  java.lang.String gpioProfileServiceInputExternalKey
          Define gpio profile service input external key.
protected  java.lang.String gpioProfileServiceInputGetExternalKey
          Define gpio profile service input get external key.
protected  MethodMeasurement tagAggregationWriteMaskSetting
          The "TagAggregationWriteMaskSetting" specifies the definition of tags that should be published on the TagWriteAggregationReport signal.
protected  InterestMasks tagInterest
          Define the tag interest (InterestMasks) field.
protected  MethodMeasurement tagWriteAggregating
          The "TagWriteAggregating" measurement specifies the state of aggregating behavior.
protected  MethodMeasurement tagWriteAggregatingExpression
          The "TagWriteAggregatingExpression" is an Lightweight Directory Access Protocol (LDAP) expression to trigger the behavior of aggregating based on input pin and control values.
protected  Signal tagWriteAggregationReport
          The "TagWriteAggregationReport" is a signal containing a collection of tag write information in a map structure.
protected  MethodMeasurement tagWriteAntennaReporting
          The "TagWriteAntennaReporting" measurement specifies the state of tag antenna reporting.
protected  MethodMeasurement tagWriteMaskSetting
          The "TagWriteMaskSetting" specifies the definition of tags that should be published on the TagWriteReport signal.
protected  Signal tagWriteReport
          The "TagWriteReport" is a signal containing tag write information in a map structure.
protected  MethodMeasurement writeOperations
          The "WriteOperations" specifies the definition of write operations block against the tag(s).
protected  MethodCommand writeOperationsExecuteRequest
          The "WriteOperationsExecuteRequest" command requests that that tag write operations be executed.
protected  MethodMeasurement writeOperationsExecuteStatus
          The "WriteOperationsExecuteStatus" specifies if the current WriteOperations are being executed.
protected  MethodMeasurement writeOperationsExpression
          The "WriteOperationsExpression" is an LDAP expression to trigger the state of tag writing based on input pin and control values.
protected  MethodCommand writeOperationsStopRequest
          The "WriteOperationsStopRequest" command requests that that tag write operations be stopped.
 
Fields inherited from interface org.eclipse.soda.dk.rfid.write.profile.service.RfidWriteProfileService
ALL_COMMANDS, ALL_MEASUREMENTS, ALL_SIGNALS, ANTENNA_CONFIGURATION_ERROR_EXTERNAL_KEY, ANTENNA_CONFIGURATION_EXTERNAL_KEY, ANTENNA_CONFIGURATION_GET_EXTERNAL_KEY, ANTENNA_CONFIGURATION_KEY, ANTENNA_CONFIGURATION_READ_EXTERNAL_KEY, ANTENNA_CONFIGURATION_WRITE_EXTERNAL_KEY, ANTENNA_DATA_KEY, ANTENNA1_DATA_KEY, ANTENNA2_DATA_KEY, ANTENNA3_DATA_KEY, ANTENNA4_DATA_KEY, AntennaConfiguration, BLOCKERASE, BLOCKWRITE, Capabilities, CAPABILITIES_ERROR_EXTERNAL_KEY, CAPABILITIES_EXTERNAL_KEY, CAPABILITIES_GET_EXTERNAL_KEY, CLEAN_FILTER, Configuration, CONFIGURATION_ERROR_EXTERNAL_KEY, CONFIGURATION_EXTERNAL_KEY, CONFIGURATION_GET_EXTERNAL_KEY, COUNT_DATA_KEY, DATA_EXTENSIONS_DATA_KEY, DATA_WRITE_EXTENSIONS_ERROR_EXTERNAL_KEY, DATA_WRITE_EXTENSIONS_EXTERNAL_KEY, DATA_WRITE_EXTENSIONS_GET_EXTERNAL_KEY, DATA_WRITE_EXTENSIONS_READ_EXTERNAL_KEY, DATA_WRITE_EXTENSIONS_WRITE_EXTERNAL_KEY, DataWriteExtensions, FILTER, INCREMENT_WRITE, KILL, LOCK, Metrics, METRICS_ERROR_EXTERNAL_KEY, METRICS_EXTERNAL_KEY, METRICS_GET_EXTERNAL_KEY, OP_PARAMETER_SEPERATOR, OPERATION_SEPERATOR, PEAK_RSSI_DATA_KEY, READ, READ_DATA_DATA_KEY, READDATA_KEY, READER_DATA_KEY, RESULT_CODE_DATA_KEY, RESULT_CODE_KEY, RfidWriteProfile, SERVICE_DESCRIPTION, SERVICE_NAME, Status, STATUS_ERROR_EXTERNAL_KEY, STATUS_EXTERNAL_KEY, STATUS_GET_EXTERNAL_KEY, STOP, TAG_AGGREGATION_WRITE_MASK_SETTING_ERROR_EXTERNAL_KEY, TAG_AGGREGATION_WRITE_MASK_SETTING_EXTERNAL_KEY, TAG_AGGREGATION_WRITE_MASK_SETTING_GET_EXTERNAL_KEY, TAG_AGGREGATION_WRITE_MASK_SETTING_KEY, TAG_AGGREGATION_WRITE_MASK_SETTING_READ_EXTERNAL_KEY, TAG_AGGREGATION_WRITE_MASK_SETTING_WRITE_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_ERROR_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_EXPRESSION_ERROR_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_EXPRESSION_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_EXPRESSION_GET_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_EXPRESSION_KEY, TAG_WRITE_AGGREGATING_EXPRESSION_READ_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_EXPRESSION_WRITE_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_GET_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_READ_EXTERNAL_KEY, TAG_WRITE_AGGREGATING_WRITE_EXTERNAL_KEY, TAG_WRITE_AGGREGATION_REPORT_ERROR_EXTERNAL_KEY, TAG_WRITE_AGGREGATION_REPORT_EXTERNAL_KEY, TAG_WRITE_AGGREGATION_REPORT_TRIGGER_EXTERNAL_KEY, TAG_WRITE_ANTENNA_REPORTING_ERROR_EXTERNAL_KEY, TAG_WRITE_ANTENNA_REPORTING_EXTERNAL_KEY, TAG_WRITE_ANTENNA_REPORTING_GET_EXTERNAL_KEY, TAG_WRITE_ANTENNA_REPORTING_READ_EXTERNAL_KEY, TAG_WRITE_ANTENNA_REPORTING_WRITE_EXTERNAL_KEY, TAG_WRITE_MASK_SETTING_ERROR_EXTERNAL_KEY, TAG_WRITE_MASK_SETTING_EXTERNAL_KEY, TAG_WRITE_MASK_SETTING_GET_EXTERNAL_KEY, TAG_WRITE_MASK_SETTING_KEY, TAG_WRITE_MASK_SETTING_READ_EXTERNAL_KEY, TAG_WRITE_MASK_SETTING_WRITE_EXTERNAL_KEY, TAG_WRITE_REPORT_ERROR_EXTERNAL_KEY, TAG_WRITE_REPORT_EXTERNAL_KEY, TAG_WRITE_REPORT_TRIGGER_EXTERNAL_KEY, TagAggregationWriteMaskSetting, TAGS_DATA_KEY, TagWriteAggregating, TagWriteAggregatingExpression, TagWriteAggregationReport, TagWriteAntennaReporting, TagWriteMaskSetting, TagWriteReport, TagWriting, TAGWRITING_EXTERNAL_KEY, TAGWRITING_GET_EXTERNAL_KEY, TagWritingExpression, TAGWRITINGEXPRESSION_EXTERNAL_KEY, TAGWRITINGEXPRESSION_GET_EXTERNAL_KEY, TAGWRITINGEXPRESSION_KEY, TIMESTAMP_FIRST_DATA_KEY, TIMESTAMP_LAST_DATA_KEY, WRITE, WRITE_OPERATIONS_ERROR_EXTERNAL_KEY, WRITE_OPERATIONS_EXECUTE_REQUEST_ERROR_EXTERNAL_KEY, WRITE_OPERATIONS_EXECUTE_REQUEST_EXTERNAL_KEY, WRITE_OPERATIONS_EXECUTE_STATUS_ERROR_EXTERNAL_KEY, WRITE_OPERATIONS_EXECUTE_STATUS_EXTERNAL_KEY, WRITE_OPERATIONS_EXECUTE_STATUS_GET_EXTERNAL_KEY, WRITE_OPERATIONS_EXECUTE_STATUS_READ_EXTERNAL_KEY, WRITE_OPERATIONS_EXPRESSION_ERROR_EXTERNAL_KEY, WRITE_OPERATIONS_EXPRESSION_EXTERNAL_KEY, WRITE_OPERATIONS_EXPRESSION_GET_EXTERNAL_KEY, WRITE_OPERATIONS_EXPRESSION_KEY, WRITE_OPERATIONS_EXPRESSION_READ_EXTERNAL_KEY, WRITE_OPERATIONS_EXPRESSION_WRITE_EXTERNAL_KEY, WRITE_OPERATIONS_EXTERNAL_KEY, WRITE_OPERATIONS_GET_EXTERNAL_KEY, WRITE_OPERATIONS_KEY, WRITE_OPERATIONS_READ_EXTERNAL_KEY, WRITE_OPERATIONS_STOP_REQUEST_ERROR_EXTERNAL_KEY, WRITE_OPERATIONS_STOP_REQUEST_EXTERNAL_KEY, WRITE_OPERATIONS_WRITE_EXTERNAL_KEY, WriteOperations, WriteOperationsExecuteRequest, WRITEOPERATIONSEXECUTEREQUEST_EXECUTE_EXTERNAL_KEY, WriteOperationsExecuteStatus, WriteOperationsExpression, WriteOperationsStopRequest, WRITEOPERATIONSSTOPREQUEST_EXECUTE_EXTERNAL_KEY
 
Constructor Summary
RfidWriteProfile()
          Constructs a new instance of the RfidWriteProfile class.
 
Method Summary
protected  void addTagToCache(java.lang.String key, java.util.Map reads, java.util.Map cache)
           
protected  void applyDataExtensions(java.util.Map rfidData)
           
protected  java.util.Map buildOuterTagMessage(java.util.Map tags)
           
protected  java.util.Map buildTagMessage(java.lang.String key, java.util.Map reads)
           
protected  Filter createLdapFilter(java.lang.String filterString)
           
protected abstract  void endOperations()
          End operations.
protected  void evaluateTagAggregatingLdapFilter()
          Evaluate tag aggregating ldap filter.
protected  void evaluateWriteOperationLdapFilter()
          Evaluate write operation ldap filter.
protected abstract  boolean executeBlockErase(java.lang.String[] op_params)
          Execute block erase with the specified opparams parameter and return the boolean result.
protected abstract  boolean executeBlockWrite(java.lang.String[] op_params)
          Execute block write with the specified opparams parameter and return the boolean result.
protected abstract  boolean executeFilter(java.lang.String[] op_params)
          Execute filter with the specified opparams parameter and return the boolean result.
protected abstract  boolean executeIncrementWrite(java.lang.String[] op_params)
          Execute increment write with the specified opparams parameter and return the boolean result.
protected abstract  boolean executeKill(java.lang.String[] op_params)
          Execute kill with the specified opparams parameter and return the boolean result.
protected abstract  boolean executeLock(java.lang.String[] op_params)
          Execute lock with the specified opparams parameter and return the boolean result.
protected abstract  boolean executeRead(java.lang.String[] op_params)
          Execute read with the specified opparams parameter and return the boolean result.
protected abstract  void executeStop()
          Evaluate tag reading ldap filter.
protected abstract  boolean executeWrite(java.lang.String[] op_params)
          Execute write with the specified opparams parameter and return the void result.
protected  void executeWriteOperations()
          Execute write operations.
 void flushAggregatorCache()
          Flush aggregator cache.
 void flushTagCache()
          Flush tag cache.
 MeasurementService getAntennaConfiguration()
          The "AntennaConfiguration" is the map containing the antenna configuration.
 int getControlCapacity()
          Gets the control capacity.
 java.lang.String getControlProfilePrefix()
          Get the control profile prefix value.
 MeasurementService getDataWriteExtensions()
          The "DataWriteExtensions" measurement is a map of meta data to be associated with tag data.
 DeviceService getDefaultDevice()
          Gets the default DeviceService.
 java.lang.String getDefaultKey()
          Gets the default key of the profile.
 java.lang.String getGpioProfilePrefix()
          Get the gpio profile prefix value.
 int getMessageCapacity()
          Gets the message capacity.
 java.lang.String getReaderId()
          Gets the reader id (String) value.
 MeasurementService getTagAggregationWriteMaskSetting()
          The "TagAggregationWriteMaskSetting" specifies the definition of tags that should be published on the TagWriteAggregationReport signal.
 MeasurementService getTagWriteAggregating()
          The "TagWriteAggregating" measurement specifies the state of aggregating behavior.
 MeasurementService getTagWriteAggregatingExpression()
          The "TagWriteAggregatingExpression" is an Lightweight Directory Access Protocol (LDAP) expression to trigger the behavior of aggregating based on input pin and control values.
 SignalService getTagWriteAggregationReport()
          The "TagWriteAggregationReport" is a signal containing a collection of tag write information in a map structure.
 MeasurementService getTagWriteAntennaReporting()
          The "TagWriteAntennaReporting" measurement specifies the state of tag antenna reporting.
 MeasurementService getTagWriteMaskSetting()
          The "TagWriteMaskSetting" specifies the definition of tags that should be published on the TagWriteReport signal.
 SignalService getTagWriteReport()
          The "TagWriteReport" is a signal containing tag write information in a map structure.
 MeasurementService getWriteOperations()
          The "WriteOperations" specifies the definition of write operations block against the tag(s).
 CommandService getWriteOperationsExecuteRequest()
          The "WriteOperationsExecuteRequest" command requests that that tag write operations be executed.
 MeasurementService getWriteOperationsExecuteStatus()
          The "WriteOperationsExecuteStatus" specifies if the current WriteOperations are being executed.
 MeasurementService getWriteOperationsExpression()
          The "WriteOperationsExpression" is an LDAP expression to trigger the state of tag writing based on input pin and control values.
 CommandService getWriteOperationsStopRequest()
          The "WriteOperationsStopRequest" command requests that that tag write operations be stopped.
protected  void handleControlProfileServiceBits(java.lang.String externalKey, java.util.Dictionary data)
           
protected  void handleControlProfileServiceLongs(java.lang.String externalKey, java.util.Dictionary data)
           
protected  boolean handleGetWriteOperationsExecuteStatus()
          Handle get write operations execute status and return the boolean result.
protected  void handleGpioProfileServiceAnalogInput(java.lang.String externalKey, java.util.Dictionary data)
          Handle gpio profile service analog input with the specified external key and data parameters.
protected  void handleGpioProfileServiceInput(java.lang.String externalKey, java.util.Dictionary data)
           
 java.lang.Object handleMethodAntennaConfiguration(int code, Measurement measurement, java.lang.Object data)
          Handle method antenna configuration with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodDataWriteExtensions(int code, Measurement measurement, java.lang.Object data)
          Handle method data write extensions with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodTagAggregationWriteMaskSetting(int code, Measurement measurement, java.lang.Object data)
          Handle method tag aggregation write mask setting with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodTagWriteAggregating(int code, Measurement measurement, java.lang.Object data)
          Handle method tag write aggregating with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodTagWriteAggregatingExpression(int code, Measurement measurement, java.lang.Object data)
          Handle method tag write aggregating expression with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodTagWriteAntennaReporting(int code, Measurement measurement, java.lang.Object data)
          Handle method tag write antenna reporting with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodTagWriteMaskSetting(int code, Measurement measurement, java.lang.Object data)
          Handle method tag write mask setting with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodWriteOperations(int code, Measurement measurement, java.lang.Object data)
          Handle method write operations with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodWriteOperationsExecuteRequest(int code, Command command, java.lang.Object data)
          Handle method write operations execute request with the specified code, command and data parameters and return the Object result.
 java.lang.Object handleMethodWriteOperationsExecuteStatus(int code, Measurement measurement, java.lang.Object data)
          Handle method write operations execute status with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodWriteOperationsExpression(int code, Measurement measurement, java.lang.Object data)
          Handle method write operations expression with the specified code, measurement and data parameters and return the Object result.
 java.lang.Object handleMethodWriteOperationsStopRequest(int code, Command command, java.lang.Object data)
          Handle method write operations stop request with the specified code, command and data parameters and return the Object result.
protected  java.lang.Object handleSetAntennaConfiguration(Measurement measurement, java.lang.Object data)
          Handle set antenna configuration with the specified measurement and data parameters and return the Object result.
protected  void handleSetTagAggregationWriteMaskSetting(Measurement measurement, java.lang.Object data)
          Handle set tag aggregation write mask setting with the specified measurement and data parameters.
protected  void handleSetTagWriteAggregatingExpression(Measurement measurement, java.lang.Object data)
          Handle set tag aggregating expression with the specified measurement and data parameters.
protected  void handleSetTagWriteMaskSetting(Measurement measurement, java.lang.Object data)
          Handle set tag write mask setting with the specified measurement and data parameters.
protected  void handleSetWriteOperationExpression(Measurement measurement, java.lang.Object data)
          Handle set write operation expression with the specified measurement and data parameters.
protected  java.lang.Object handleSetWriteOperations(Measurement measurement, java.lang.Object data)
          Handle set write operations with the specified measurement and data parameters and return the Object result.
protected  void handleSetWriteOperationsExecuteStatus(java.lang.Boolean status)
          Handle set write operations execute status with the specified status parameter.
protected  void handleTagWriteAggregating(MeasurementService source, java.lang.Object timestamp, java.lang.Object newValue, java.lang.Object oldValue)
           
protected  void handleWriteOperationsError(java.lang.String errorMsg)
          Handle write operations error with the specified error msg parameter.
protected  void handleWriteOperationsStopRequest()
          Handle write operations stop request.
protected  void improveReportMap(java.util.Map reads, java.lang.Object timestamp)
          Improve reads map with the specified reads and timestamp parameters.
 boolean isDeviceNeeded()
          Is device needed.
protected  boolean isOperationsRunning()
          Gets the operations running (boolean) value.
 boolean isTagWriteAntennaReporting()
          Gets the tag write antenna reporting (boolean) value.
static boolean isValidTagId(java.lang.String tagId)
          Is valid tag id with the specified tag id parameter and return the boolean result.
 void measurementChanged(MeasurementService source, java.lang.Object timestamp, java.lang.Object newValue, java.lang.Object oldValue)
          Measurement changed.
 void mergeAntennaInfo(java.util.Map cacheReadData, java.util.Map reads)
          Merge antenna info with the specified cache read data and reads parameters.
protected  java.util.Map mergeMapOverMap(java.util.Map additionalValues, java.util.Map existingValues)
           
 void notificationReceived(java.lang.String externalKey, java.util.Dictionary data)
          Notification received.
 void notifyTagAggregation()
          Notify tag aggregation.
 void notifyTagReport(java.lang.String key, java.lang.String operationId, java.util.Map reads)
          Notify tag report with the specified key, operation id and reads parameters.
 void notifyTagReport(java.lang.String key, java.lang.String operationId, java.util.Map reads, java.lang.Object timestamp)
          Notify tag report with the specified key, operation id, reads and timestamp parameters.
protected  void operationsInterrupted(java.lang.String errorMsg)
          Operations interrupted with the specified error msg parameter.
static java.lang.String[] parseDelimitedByToken(java.lang.String target, java.lang.String delimiter)
           
static byte[] parseHexSpaceDelimited(java.lang.String spaceDelimitedHex)
           
static InterestMasks parseInterestMasks(java.lang.String targetTagConfig)
           
protected  void setOperationsStatusFinished()
          Operations finished.
protected  void setOperationsStatusStarted()
          Operations started.
protected  void setTagWriteAggregatingLdapFilter(Filter tagAggregatingLdapFilter)
          Sets the tag aggregating ldap filter value.
 void setupNotification()
          Setup notification.
protected  void setWriteOperationLdapFilter(Filter writeOperationLdapFilter)
          Sets the write operation ldap filter value.
protected abstract  boolean startOperations()
          Start operations.
static byte[] toBytes(java.lang.String string)
           
protected  void updateTagInCache(java.lang.String key, java.lang.String operationId, java.util.Map reads, java.util.Map cache, java.lang.Object timestamp)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLASS_NAME

public static final java.lang.String CLASS_NAME
Defines the full class name.

See Also:
Constant Field Values

GPIO_PROFILE_PREFIX

public static final java.lang.String GPIO_PROFILE_PREFIX
Define the gpio profile prefix configuration key.

See Also:
Constant Field Values

gpioProfileServiceInputExternalKey

protected java.lang.String gpioProfileServiceInputExternalKey
Define gpio profile service input external key.


gpioProfileServiceInputGetExternalKey

protected java.lang.String gpioProfileServiceInputGetExternalKey
Define gpio profile service input get external key.


gpioProfileServiceAnalogInputExternalKey

protected java.lang.String gpioProfileServiceAnalogInputExternalKey
Define gpio profile service analog input external key.


gpioProfileServiceAnalogInputGetExternalKey

protected java.lang.String gpioProfileServiceAnalogInputGetExternalKey
Define gpio profile service analog input get external key.


CONTROL_PROFILE_PREFIX

public static final java.lang.String CONTROL_PROFILE_PREFIX
Define the control profile prefix configuration key.

See Also:
Constant Field Values

controlProfileServiceBitsExternalKey

protected java.lang.String controlProfileServiceBitsExternalKey
Define control profile service bits external key.


controlProfileServiceBitsGetExternalKey

protected java.lang.String controlProfileServiceBitsGetExternalKey
Define control profile service bits get external key.


controlProfileServiceLongsExternalKey

protected java.lang.String controlProfileServiceLongsExternalKey
Define control profile service longs external key.


controlProfileServiceLongsGetExternalKey

protected java.lang.String controlProfileServiceLongsGetExternalKey
Define control profile service longs get external key.


writeOperationsExecuteRequest

protected final MethodCommand writeOperationsExecuteRequest
The "WriteOperationsExecuteRequest" command requests that that tag write operations be executed. If an LDAP expression is specified for the WriteOperationsExpression, a publication to write a value to this command will result in an exception and will not execute the tag write operations.

See Also:
handleMethodWriteOperationsExecuteRequest(int, Command, java.lang.Object)

writeOperationsStopRequest

protected final MethodCommand writeOperationsStopRequest
The "WriteOperationsStopRequest" command requests that that tag write operations be stopped. If an LDAP expression is specified for the WriteOperationsExpression, a publication to write a value to this command will result in an exception and will not stop the tag write operations.

See Also:
handleMethodWriteOperationsStopRequest(int, Command, java.lang.Object)

antennaConfiguration

protected final MethodMeasurement antennaConfiguration
The "AntennaConfiguration" is the map containing the antenna configuration. The key is the antenna number based on a starting index of 1. The value is another map containing the information about that specific antenna.

See Also:
handleMethodAntennaConfiguration(int, Measurement, java.lang.Object)

dataWriteExtensions

protected final MethodMeasurement dataWriteExtensions
The "DataWriteExtensions" measurement is a map of meta data to be associated with tag data. Data Write extensions are applied to "TagWriteReport" data as the signal is published. Data extensions are applied to a "TagWriteAggregationReport" at the beginning and end of the aggregation cycle. Writing a value to this measurement merges the new map with the current DataWriteExtensions value. Setting the value of the measurement to an empty map clears the value.

See Also:
handleMethodDataWriteExtensions(int, Measurement, java.lang.Object)

tagWriteMaskSetting

protected final MethodMeasurement tagWriteMaskSetting
The "TagWriteMaskSetting" specifies the definition of tags that should be published on the TagWriteReport signal. A mask is specified by four comma-delimited parameters. The first parameter of a tag mask is a place holder for future use, and the value is ignored. The second parameter is the pointer value. It is the first bit location of the tag id against which to compare the mask. The third parameter is the length. It specifies the number of bits of the tag id to compare against the mask. The final parameter is the mask value. It is the pattern against which the specified section of the tag id must match to pass the filter. Multiple masks can be specified by separating them with a semicolon.

See Also:
handleMethodTagWriteMaskSetting(int, Measurement, java.lang.Object)

tagAggregationWriteMaskSetting

protected final MethodMeasurement tagAggregationWriteMaskSetting
The "TagAggregationWriteMaskSetting" specifies the definition of tags that should be published on the TagWriteAggregationReport signal. A mask is specified by four comma-delimited parameters. The first parameter of a tag mask is a place holder for future use, and the value is ignored. The second parameter is the pointer value. It is the first bit location of the tag id against which to compare the mask. The third parameter is the length. It specifies the number of bits of the tag id to compare against the mask. The final parameter is the mask value. It is the pattern against which the specified section of the tag id must match to pass the filter. Multiple masks can be specified by separating them with a semicolon.

See Also:
handleMethodTagAggregationWriteMaskSetting(int, Measurement, java.lang.Object)

tagWriteAggregatingExpression

protected final MethodMeasurement tagWriteAggregatingExpression
The "TagWriteAggregatingExpression" is an Lightweight Directory Access Protocol (LDAP) expression to trigger the behavior of aggregating based on input pin and control values.

See Also:
handleMethodTagWriteAggregatingExpression(int, Measurement, java.lang.Object)

tagWriteAggregating

protected final MethodMeasurement tagWriteAggregating
The "TagWriteAggregating" measurement specifies the state of aggregating behavior. When the measurement value is true, the profile is collecting all tags which pass the Aggregation Write Mask. When the measurement value is updated to false, the profile publishes the TagWriteAggregationReport signal, clears the aggregation cache, and stops collecting incoming tags. If an LDAP expression is specified for the TagWriteAggregatingExpression, a publication to write a value to this measurement will result in an exception and will not update the measurement value.

See Also:
handleMethodTagWriteAggregating(int, Measurement, java.lang.Object)

writeOperations

protected final MethodMeasurement writeOperations
The "WriteOperations" specifies the definition of write operations block against the tag(s). A write operation block can contain multiple write operations separated by the character ":". A write operation is specified by parameters based on the operation, the parameters are separated by the character ";". The first parameter specifies the kind of write operation. <ul > <li>Operation Filter: Defines the tag filter to apply on the rest of the operations. Format: Filter;MemoryBank;Match;BitPointer;TagMask;TagData <ol> <li> Filter: Reserved name for the filter operation. </li> <li> MemoryBank: An integer to specify the memory bank to be used for the filter. </li> <li> Match: A boolean to specify if "match" or "not match" is applied for the filter. </li> <li> BitPointer: It is the first bit location (zero based) of the data against which to compare the mask. </li> <li> TagMask: A hex String as the mask for the filter. </li> <li> TagData: The the pattern against which the specified section of the tag data must match (or not match) to pass the filter. </li> </ol> </li> <li>Operation Write: Defines the write operation on the specified memory bank on the tags. Format: Write;MemoryBank;Pointer;WriteData;Password;OpCount;Timeout[;OperationId] <ol> <li> Write: Reserved name for the write operation. </li> <li> MemoryBank: An interger to specify the memory bank to written on. </li> <li> Pointer: The first location (zero based) in the memory bank to start the write operation. </li> <li> WriteData: The data for the write operation. </li> <li> Password: The password for the write operation. </li> <li> OpCount: An integer to specify the times this write operation will be executed, it will be unlimited if the value is 0. </li> <li> Timeout: The timeout value (milliseconds) for the write operation, no timeout if the value is 0. </li> <li> OperationId: The optional parameter to assign an id to the write operation. </li> </ol> </li> <li>Operation Increment Write: Defines an automatic incremental write on the specified memory bank on the tags. Format: Increment Write;MemoryBank;Pointer;WriteData;Increment;Password;Repeat;Timeout[;OperationId] <ol> <li> Increment Write: Reserved name for the increment write operation. </li> <li> MemoryBank: An interger to specify the memory bank to written on. </li> <li> Pointer: The first location (zero based) in the memory bank to start the write operation. </li> <li> WriteData: The base data for the write operation. </li> <li> Increment: An integer to specify the incremental value for each tag writing. </li> <li> Password: The password for the write operation. </li> <li> Repeat: An integer to specify the times the increment write operation will be executed, it will be unlimited if the value is 0. </li> <li> Timeout: The timeout value (milliseconds) for the increment write operation, no timeout if the value is 0. </li> <li> OperationId: The optional parameter to assign an id to the increment write operation. </li> </ol> </li> <li>Operation Read: Defines the read operation on the specified memory bank on the tags. Format: Read;MemoryBank;Pointer;WordCount;Password;OpCount;Timeout[;OperationId] <ol> <li> Read: Reserved name for the read operation. </li> <li> MemoryBank: An interger to specify the memory bank to read from. </li> <li> Pointer: The first location (zero based) in the memory bank to start the read operation. </li> <li> Password: The password for the read operation. </li> <li> OpCount: An integer to specify the times this read operation will be executed, it will be unlimited if the value is 0. </li> <li> Timeout: The timeout value (milliseconds) for the read operation, no timeout if the value is 0. </li> <li> OperationId: The optional parameter to assign an id to the read operation. </li> </ol> </li> </ul>

See Also:
handleMethodWriteOperations(int, Measurement, java.lang.Object)

writeOperationsExpression

protected final MethodMeasurement writeOperationsExpression
The "WriteOperationsExpression" is an LDAP expression to trigger the state of tag writing based on input pin and control values. If the state of this expression changes to true, then the current WriteOperations will be executed once.

See Also:
handleMethodWriteOperationsExpression(int, Measurement, java.lang.Object)

writeOperationsExecuteStatus

protected final MethodMeasurement writeOperationsExecuteStatus
The "WriteOperationsExecuteStatus" specifies if the current WriteOperations are being executed. If the status is true, sending a new WriteOperations or execute request will result in an exception.

See Also:
handleMethodWriteOperationsExecuteStatus(int, Measurement, java.lang.Object)

tagWriteAntennaReporting

protected final MethodMeasurement tagWriteAntennaReporting
The "TagWriteAntennaReporting" measurement specifies the state of tag antenna reporting. When the measurement is true, the reader is reporting tag antenna information in tag data on the TagReport signal. When this tag antenna reporting is true, then extra process is required which may effect performance.

See Also:
handleMethodTagWriteAntennaReporting(int, Measurement, java.lang.Object)

tagWriteReport

protected final Signal tagWriteReport
The "TagWriteReport" is a signal containing tag write information in a map structure. The report contains one to many tags stored at the "tags" key. It may include data extension meta data stored at the "dataExtensions" key. See the tags and DataWriteExtensions descriptions for details.


tagWriteAggregationReport

protected final Signal tagWriteAggregationReport
The "TagWriteAggregationReport" is a signal containing a collection of tag write information in a map structure. The report can contain zero to many tags stored at the "tags" key. It may include data extension meta data stored at the "DataWriteExtensions" key. See the tags and DataWriteExtensions descriptions for details.


tagInterest

protected InterestMasks tagInterest
Define the tag interest (InterestMasks) field.


aggregationInterest

protected InterestMasks aggregationInterest
Define the aggregation interest (InterestMasks) field.


dataExtensions

protected final MethodMeasurement dataExtensions
The DataExtensions measurement is a map of metadata to be associated with tag data. Data extensions are applied to TagReport data as the signal is published. Data extensions are applied to a TagAggregationReport at the beginning and end of the aggregation cycle. Writing a value to this measurement merges the new map with the current DataExtensions value. Setting the value of the measurement to an empty map clears the value. .

Constructor Detail

RfidWriteProfile

public RfidWriteProfile()
Constructs a new instance of the RfidWriteProfile class.

Method Detail

getGpioProfilePrefix

public java.lang.String getGpioProfilePrefix()
Get the gpio profile prefix value.

Returns:
The gpio profile prefix value.
See Also:
GPIO_PROFILE_PREFIX

getControlProfilePrefix

public java.lang.String getControlProfilePrefix()
Get the control profile prefix value.

Returns:
The control profile prefix value.
See Also:
CONTROL_PROFILE_PREFIX

notificationReceived

public void notificationReceived(java.lang.String externalKey,
                                 java.util.Dictionary data)
Notification received.

Parameters:
externalKey - external key.
data - data.

setupNotification

public void setupNotification()
Setup notification.


measurementChanged

public void measurementChanged(MeasurementService source,
                               java.lang.Object timestamp,
                               java.lang.Object newValue,
                               java.lang.Object oldValue)
Measurement changed.

Parameters:
source - source.
timestamp - timestamp.
newValue - new value.
oldValue - old value.

getDefaultKey

public java.lang.String getDefaultKey()
Gets the default key of the profile.

Returns:
String The default key

getDefaultDevice

public DeviceService getDefaultDevice()
Gets the default DeviceService.

Returns:
DeviceService The default DeviceService.

isDeviceNeeded

public boolean isDeviceNeeded()
Is device needed.

Returns:
The results of this method.

getControlCapacity

public int getControlCapacity()
Gets the control capacity.

Returns:
The control capacity value.

getMessageCapacity

public int getMessageCapacity()
Gets the message capacity.

Returns:
int The message capacity.

getWriteOperationsExecuteRequest

public CommandService getWriteOperationsExecuteRequest()
The "WriteOperationsExecuteRequest" command requests that that tag write operations be executed. If an LDAP expression is specified for the WriteOperationsExpression, a publication to write a value to this command will result in an exception and will not execute the tag write operations.

Returns:
The write operations execute request value.
See Also:
handleMethodWriteOperationsExecuteRequest(int, Command, java.lang.Object)

getWriteOperationsStopRequest

public CommandService getWriteOperationsStopRequest()
The "WriteOperationsStopRequest" command requests that that tag write operations be stopped. If an LDAP expression is specified for the WriteOperationsExpression, a publication to write a value to this command will result in an exception and will not stop the tag write operations.

Returns:
The write operations stop request value.
See Also:
handleMethodWriteOperationsStopRequest(int, Command, java.lang.Object)

getAntennaConfiguration

public MeasurementService getAntennaConfiguration()
The "AntennaConfiguration" is the map containing the antenna configuration. The key is the antenna number based on a starting index of 1. The value is another map containing the information about that specific antenna.

Returns:
The antenna configuration value.
See Also:
handleMethodAntennaConfiguration(int, Measurement, java.lang.Object)

getDataWriteExtensions

public MeasurementService getDataWriteExtensions()
The "DataWriteExtensions" measurement is a map of meta data to be associated with tag data. Data Write extensions are applied to "TagWriteReport" data as the signal is published. Data extensions are applied to a "TagWriteAggregationReport" at the beginning and end of the aggregation cycle. Writing a value to this measurement merges the new map with the current DataWriteExtensions value. Setting the value of the measurement to an empty map clears the value.

Returns:
The data write extensions value.
See Also:
handleMethodDataWriteExtensions(int, Measurement, java.lang.Object)

getTagWriteMaskSetting

public MeasurementService getTagWriteMaskSetting()
The "TagWriteMaskSetting" specifies the definition of tags that should be published on the TagWriteReport signal. A mask is specified by four comma-delimited parameters. The first parameter of a tag mask is a place holder for future use, and the value is ignored. The second parameter is the pointer value. It is the first bit location of the tag id against which to compare the mask. The third parameter is the length. It specifies the number of bits of the tag id to compare against the mask. The final parameter is the mask value. It is the pattern against which the specified section of the tag id must match to pass the filter. Multiple masks can be specified by separating them with a semicolon.

Returns:
The tag write mask setting value.
See Also:
handleMethodTagWriteMaskSetting(int, Measurement, java.lang.Object)

getTagAggregationWriteMaskSetting

public MeasurementService getTagAggregationWriteMaskSetting()
The "TagAggregationWriteMaskSetting" specifies the definition of tags that should be published on the TagWriteAggregationReport signal. A mask is specified by four comma-delimited parameters. The first parameter of a tag mask is a place holder for future use, and the value is ignored. The second parameter is the pointer value. It is the first bit location of the tag id against which to compare the mask. The third parameter is the length. It specifies the number of bits of the tag id to compare against the mask. The final parameter is the mask value. It is the pattern against which the specified section of the tag id must match to pass the filter. Multiple masks can be specified by separating them with a semicolon.

Returns:
The tag aggregation write mask setting value.
See Also:
handleMethodTagAggregationWriteMaskSetting(int, Measurement, java.lang.Object)

getTagWriteAggregatingExpression

public MeasurementService getTagWriteAggregatingExpression()
The "TagWriteAggregatingExpression" is an Lightweight Directory Access Protocol (LDAP) expression to trigger the behavior of aggregating based on input pin and control values.

Returns:
The tag write aggregating expression value.
See Also:
handleMethodTagWriteAggregatingExpression(int, Measurement, java.lang.Object)

getTagWriteAggregating

public MeasurementService getTagWriteAggregating()
The "TagWriteAggregating" measurement specifies the state of aggregating behavior. When the measurement value is true, the profile is collecting all tags which pass the Aggregation Write Mask. When the measurement value is updated to false, the profile publishes the TagWriteAggregationReport signal, clears the aggregation cache, and stops collecting incoming tags. If an LDAP expression is specified for the TagWriteAggregatingExpression, a publication to write a value to this measurement will result in an exception and will not update the measurement value.

Returns:
The tag write aggregating value.
See Also:
handleMethodTagWriteAggregating(int, Measurement, java.lang.Object)

getWriteOperations

public MeasurementService getWriteOperations()
The "WriteOperations" specifies the definition of write operations block against the tag(s). A write operation block can contain multiple write operations separated by the character ":". A write operation is specified by parameters based on the operation, the parameters are separated by the character ";". The first parameter specifies the kind of write operation. <ul > <li>Operation Filter: Defines the tag filter to apply on the rest of the operations. Format: Filter;MemoryBank;Match;BitPointer;TagMask;TagData <ol> <li> Filter: Reserved name for the filter operation. </li> <li> MemoryBank: An integer to specify the memory bank to be used for the filter. </li> <li> Match: A boolean to specify if "match" or "not match" is applied for the filter. </li> <li> BitPointer: It is the first bit location (zero based) of the data against which to compare the mask. </li> <li> TagMask: A hex String as the mask for the filter. </li> <li> TagData: The the pattern against which the specified section of the tag data must match (or not match) to pass the filter. </li> </ol> </li> <li>Operation Write: Defines the write operation on the specified memory bank on the tags. Format: Write;MemoryBank;Pointer;WriteData;Password;OpCount;Timeout[;OperationId] <ol> <li> Write: Reserved name for the write operation. </li> <li> MemoryBank: An interger to specify the memory bank to written on. </li> <li> Pointer: The first location (zero based) in the memory bank to start the write operation. </li> <li> WriteData: The data for the write operation. </li> <li> Password: The password for the write operation. </li> <li> OpCount: An integer to specify the times this write operation will be executed, it will be unlimited if the value is 0. </li> <li> Timeout: The timeout value (milliseconds) for the write operation, no timeout if the value is 0. </li> <li> OperationId: The optional parameter to assign an id to the write operation. </li> </ol> </li> <li>Operation Increment Write: Defines an automatic incremental write on the specified memory bank on the tags. Format: Increment Write;MemoryBank;Pointer;WriteData;Increment;Password;Repeat;Timeout[;OperationId] <ol> <li> Increment Write: Reserved name for the increment write operation. </li> <li> MemoryBank: An interger to specify the memory bank to written on. </li> <li> Pointer: The first location (zero based) in the memory bank to start the write operation. </li> <li> WriteData: The base data for the write operation. </li> <li> Increment: An integer to specify the incremental value for each tag writing. </li> <li> Password: The password for the write operation. </li> <li> Repeat: An integer to specify the times the increment write operation will be executed, it will be unlimited if the value is 0. </li> <li> Timeout: The timeout value (milliseconds) for the increment write operation, no timeout if the value is 0. </li> <li> OperationId: The optional parameter to assign an id to the increment write operation. </li> </ol> </li> <li>Operation Read: Defines the read operation on the specified memory bank on the tags. Format: Read;MemoryBank;Pointer;WordCount;Password;OpCount;Timeout[;OperationId] <ol> <li> Read: Reserved name for the read operation. </li> <li> MemoryBank: An interger to specify the memory bank to read from. </li> <li> Pointer: The first location (zero based) in the memory bank to start the read operation. </li> <li> Password: The password for the read operation. </li> <li> OpCount: An integer to specify the times this read operation will be executed, it will be unlimited if the value is 0. </li> <li> Timeout: The timeout value (milliseconds) for the read operation, no timeout if the value is 0. </li> <li> OperationId: The optional parameter to assign an id to the read operation. </li> </ol> </li> </ul>

Returns:
The write operations value.
See Also:
handleMethodWriteOperations(int, Measurement, java.lang.Object)

getWriteOperationsExpression

public MeasurementService getWriteOperationsExpression()
The "WriteOperationsExpression" is an LDAP expression to trigger the state of tag writing based on input pin and control values. If the state of this expression changes to true, then the current WriteOperations will be executed once.

Returns:
The write operations expression value.
See Also:
handleMethodWriteOperationsExpression(int, Measurement, java.lang.Object)

getWriteOperationsExecuteStatus

public MeasurementService getWriteOperationsExecuteStatus()
The "WriteOperationsExecuteStatus" specifies if the current WriteOperations are being executed. If the status is true, sending a new WriteOperations or execute request will result in an exception.

Returns:
The write operations execute status value.
See Also:
handleMethodWriteOperationsExecuteStatus(int, Measurement, java.lang.Object)

getTagWriteAntennaReporting

public MeasurementService getTagWriteAntennaReporting()
The "TagWriteAntennaReporting" measurement specifies the state of tag antenna reporting. When the measurement is true, the reader is reporting tag antenna information in tag data on the TagReport signal. When this tag antenna reporting is true, then extra process is required which may effect performance.

Returns:
The tag write antenna reporting value.
See Also:
handleMethodTagWriteAntennaReporting(int, Measurement, java.lang.Object)

getTagWriteReport

public SignalService getTagWriteReport()
The "TagWriteReport" is a signal containing tag write information in a map structure. The report contains one to many tags stored at the "tags" key. It may include data extension meta data stored at the "dataExtensions" key. See the tags and DataWriteExtensions descriptions for details.

Returns:
The tag write report value.

getTagWriteAggregationReport

public SignalService getTagWriteAggregationReport()
The "TagWriteAggregationReport" is a signal containing a collection of tag write information in a map structure. The report can contain zero to many tags stored at the "tags" key. It may include data extension meta data stored at the "DataWriteExtensions" key. See the tags and DataWriteExtensions descriptions for details.

Returns:
The tag write aggregation report value.

isValidTagId

public static boolean isValidTagId(java.lang.String tagId)
Is valid tag id with the specified tag id parameter and return the boolean result.

Parameters:
tagId - The tag id (String) parameter.
Returns:
Results of the is valid tag id (boolean) value.

parseDelimitedByToken

public static java.lang.String[] parseDelimitedByToken(java.lang.String target,
                                                       java.lang.String delimiter)
Parameters:
target - The target (String) parameter.
delimiter - The delimiter (String) parameter.
Returns:
Results of the parse comma delimited (String[]) value. The target (String) parameter. The delimiter (String) parameter.

parseHexSpaceDelimited

public static byte[] parseHexSpaceDelimited(java.lang.String spaceDelimitedHex)
Parameters:
spaceDelimitedHex - The space delimited hex (String) parameter.
Returns:
Results of the parse hex space delimited (byte[]) value.

parseInterestMasks

public static InterestMasks parseInterestMasks(java.lang.String targetTagConfig)
Parameters:
targetTagConfig - The target tag config (String) parameter.
Returns:
Results of the parse interest masks (InterestMasks) value. The target tag config (String) parameter.

toBytes

public static byte[] toBytes(java.lang.String string)
                      throws java.lang.RuntimeException
Parameters:
string - The string (String) parameter.
Returns:
Results of the to bytes (byte[]) value. Runtime Exception.
Throws:
java.lang.RuntimeException - Runtime Exception.

addTagToCache

protected void addTagToCache(java.lang.String key,
                             java.util.Map reads,
                             java.util.Map cache)
Parameters:
key - The key (String) parameter.
reads - The reads (Map) parameter.
cache - The cache (Map) parameter.

applyDataExtensions

protected void applyDataExtensions(java.util.Map rfidData)
Parameters:
rfidData - The rfid data (Map) parameter.

buildOuterTagMessage

protected java.util.Map buildOuterTagMessage(java.util.Map tags)
Parameters:
tags - The tags (Map) parameter.
Returns:
Results of the build outer tag message (Map) value.

buildTagMessage

protected java.util.Map buildTagMessage(java.lang.String key,
                                        java.util.Map reads)
Parameters:
key - The key (String) parameter.
reads - The reads (Map) parameter.
Returns:
Results of the build tag message (Map) value.
See Also:
buildOuterTagMessage(Map)

createLdapFilter

protected Filter createLdapFilter(java.lang.String filterString)
                           throws InvalidSyntaxException
Parameters:
filterString - The filter string (String) parameter.
Returns:
Results of the create ldap filter (Filter) value. Invalid Syntax Exception.
Throws:
InvalidSyntaxException - Invalid Syntax Exception.
See Also:
evaluateTagAggregatingLdapFilter(), evaluateWriteOperationLdapFilter(), setTagWriteAggregatingLdapFilter(Filter), setWriteOperationLdapFilter(Filter)

endOperations

protected abstract void endOperations()
End operations.

See Also:
executeWriteOperations(), getWriteOperations(), handleMethodWriteOperations(int,Measurement,Object), handleSetWriteOperations(Measurement,Object), startOperations()

evaluateTagAggregatingLdapFilter

protected void evaluateTagAggregatingLdapFilter()
Evaluate tag aggregating ldap filter.


evaluateWriteOperationLdapFilter

protected void evaluateWriteOperationLdapFilter()
Evaluate write operation ldap filter.

See Also:
setWriteOperationLdapFilter(Filter)

executeBlockErase

protected abstract boolean executeBlockErase(java.lang.String[] op_params)
Execute block erase with the specified opparams parameter and return the boolean result.

Parameters:
op_params - The opparams (String[]) parameter.
Returns:
Results of the execute block erase (boolean) value.

executeBlockWrite

protected abstract boolean executeBlockWrite(java.lang.String[] op_params)
Execute block write with the specified opparams parameter and return the boolean result.

Parameters:
op_params - The opparams (String[]) parameter.
Returns:
Results of the execute block write (boolean) value.

executeFilter

protected abstract boolean executeFilter(java.lang.String[] op_params)
Execute filter with the specified opparams parameter and return the boolean result.

Parameters:
op_params - The opparams (String[]) parameter.
Returns:
Results of the execute filter (boolean) value.
See Also:
createLdapFilter(String), evaluateTagAggregatingLdapFilter(), evaluateWriteOperationLdapFilter(), setTagWriteAggregatingLdapFilter(Filter), setWriteOperationLdapFilter(Filter)

executeIncrementWrite

protected abstract boolean executeIncrementWrite(java.lang.String[] op_params)
Execute increment write with the specified opparams parameter and return the boolean result.

Parameters:
op_params - The opparams (String[]) parameter.
Returns:
Results of the execute increment write (boolean) value.

executeKill

protected abstract boolean executeKill(java.lang.String[] op_params)
Execute kill with the specified opparams parameter and return the boolean result.

Parameters:
op_params - The opparams (String[]) parameter.
Returns:
Results of the execute kill (boolean) value.

executeLock

protected abstract boolean executeLock(java.lang.String[] op_params)
Execute lock with the specified opparams parameter and return the boolean result.

Parameters:
op_params - The opparams (String[]) parameter.
Returns:
Results of the execute lock (boolean) value.

executeRead

protected abstract boolean executeRead(java.lang.String[] op_params)
Execute read with the specified opparams parameter and return the boolean result.

Parameters:
op_params - The opparams (String[]) parameter.
Returns:
Results of the execute read (boolean) value.

executeStop

protected abstract void executeStop()
Evaluate tag reading ldap filter.


executeWrite

protected abstract boolean executeWrite(java.lang.String[] op_params)
Execute write with the specified opparams parameter and return the void result.

Parameters:
op_params - The opparams (String[]) parameter.
Returns:
Results of the execute write (boolean) value.
See Also:
executeBlockWrite(String[]), executeIncrementWrite(String[])

executeWriteOperations

protected void executeWriteOperations()
Execute write operations.

See Also:
getWriteOperations(), handleMethodWriteOperations(int,Measurement,Object), handleSetWriteOperations(Measurement,Object)

flushAggregatorCache

public void flushAggregatorCache()
Flush aggregator cache.


flushTagCache

public void flushTagCache()
Flush tag cache.


getReaderId

public java.lang.String getReaderId()
Gets the reader id (String) value.

Returns:
The reader id (String) value.

handleControlProfileServiceBits

protected void handleControlProfileServiceBits(java.lang.String externalKey,
                                               java.util.Dictionary data)
Parameters:
externalKey - The external key (String) parameter.
data - The data (Dictionary) parameter.

handleControlProfileServiceLongs

protected void handleControlProfileServiceLongs(java.lang.String externalKey,
                                                java.util.Dictionary data)
Parameters:
externalKey - The external key (String) parameter.
data - The data (Dictionary) parameter.

handleGetWriteOperationsExecuteStatus

protected boolean handleGetWriteOperationsExecuteStatus()
Handle get write operations execute status and return the boolean result.

Returns:
Results of the handle get write operations execute status (boolean) value.

handleGpioProfileServiceAnalogInput

protected void handleGpioProfileServiceAnalogInput(java.lang.String externalKey,
                                                   java.util.Dictionary data)
Handle gpio profile service analog input with the specified external key and data parameters.

Parameters:
externalKey - The external key (String) parameter.
data - The data (Dictionary) parameter.

handleGpioProfileServiceInput

protected void handleGpioProfileServiceInput(java.lang.String externalKey,
                                             java.util.Dictionary data)
Parameters:
externalKey - The external key (String) parameter.
data - The data (Dictionary) parameter.

handleMethodAntennaConfiguration

public java.lang.Object handleMethodAntennaConfiguration(int code,
                                                         Measurement measurement,
                                                         java.lang.Object data)
Handle method antenna configuration with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method antenna configuration (Object) value.

handleMethodDataWriteExtensions

public java.lang.Object handleMethodDataWriteExtensions(int code,
                                                        Measurement measurement,
                                                        java.lang.Object data)
Handle method data write extensions with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method data write extensions (Object) value.

handleMethodTagAggregationWriteMaskSetting

public java.lang.Object handleMethodTagAggregationWriteMaskSetting(int code,
                                                                   Measurement measurement,
                                                                   java.lang.Object data)
Handle method tag aggregation write mask setting with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method tag aggregation write mask setting (Object) value.

handleMethodTagWriteAggregating

public java.lang.Object handleMethodTagWriteAggregating(int code,
                                                        Measurement measurement,
                                                        java.lang.Object data)
Handle method tag write aggregating with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method tag write aggregating (Object) value.

handleMethodTagWriteAggregatingExpression

public java.lang.Object handleMethodTagWriteAggregatingExpression(int code,
                                                                  Measurement measurement,
                                                                  java.lang.Object data)
Handle method tag write aggregating expression with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method tag write aggregating expression (Object) value.

handleMethodTagWriteAntennaReporting

public java.lang.Object handleMethodTagWriteAntennaReporting(int code,
                                                             Measurement measurement,
                                                             java.lang.Object data)
Handle method tag write antenna reporting with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method tag write antenna reporting (Object) value.

handleMethodTagWriteMaskSetting

public java.lang.Object handleMethodTagWriteMaskSetting(int code,
                                                        Measurement measurement,
                                                        java.lang.Object data)
Handle method tag write mask setting with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method tag write mask setting (Object) value.

handleMethodWriteOperations

public java.lang.Object handleMethodWriteOperations(int code,
                                                    Measurement measurement,
                                                    java.lang.Object data)
Handle method write operations with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method write operations (Object) value.

handleMethodWriteOperationsExecuteRequest

public java.lang.Object handleMethodWriteOperationsExecuteRequest(int code,
                                                                  Command command,
                                                                  java.lang.Object data)
Handle method write operations execute request with the specified code, command and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
command - The command (Command) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method write operations execute request (Object) value.

handleMethodWriteOperationsExecuteStatus

public java.lang.Object handleMethodWriteOperationsExecuteStatus(int code,
                                                                 Measurement measurement,
                                                                 java.lang.Object data)
Handle method write operations execute status with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method write operations execute status (Object) value.

handleMethodWriteOperationsExpression

public java.lang.Object handleMethodWriteOperationsExpression(int code,
                                                              Measurement measurement,
                                                              java.lang.Object data)
Handle method write operations expression with the specified code, measurement and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method write operations expression (Object) value.

handleMethodWriteOperationsStopRequest

public java.lang.Object handleMethodWriteOperationsStopRequest(int code,
                                                               Command command,
                                                               java.lang.Object data)
Handle method write operations stop request with the specified code, command and data parameters and return the Object result.

Parameters:
code - The code (int) parameter.
command - The command (Command) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle method write operations stop request (Object) value.

handleSetAntennaConfiguration

protected java.lang.Object handleSetAntennaConfiguration(Measurement measurement,
                                                         java.lang.Object data)
Handle set antenna configuration with the specified measurement and data parameters and return the Object result.

Parameters:
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle set antenna configuration (Object) value.

handleSetTagAggregationWriteMaskSetting

protected void handleSetTagAggregationWriteMaskSetting(Measurement measurement,
                                                       java.lang.Object data)
Handle set tag aggregation write mask setting with the specified measurement and data parameters.

Parameters:
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.

handleSetTagWriteAggregatingExpression

protected void handleSetTagWriteAggregatingExpression(Measurement measurement,
                                                      java.lang.Object data)
Handle set tag aggregating expression with the specified measurement and data parameters.

Parameters:
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.

handleSetTagWriteMaskSetting

protected void handleSetTagWriteMaskSetting(Measurement measurement,
                                            java.lang.Object data)
Handle set tag write mask setting with the specified measurement and data parameters.

Parameters:
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.

handleSetWriteOperationExpression

protected void handleSetWriteOperationExpression(Measurement measurement,
                                                 java.lang.Object data)
Handle set write operation expression with the specified measurement and data parameters.

Parameters:
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.

handleSetWriteOperations

protected java.lang.Object handleSetWriteOperations(Measurement measurement,
                                                    java.lang.Object data)
Handle set write operations with the specified measurement and data parameters and return the Object result.

Parameters:
measurement - The measurement (Measurement) parameter.
data - The data (Object) parameter.
Returns:
Results of the handle set write operations (Object) value.

handleSetWriteOperationsExecuteStatus

protected void handleSetWriteOperationsExecuteStatus(java.lang.Boolean status)
Handle set write operations execute status with the specified status parameter.

Parameters:
status - The status (Boolean) parameter.

handleTagWriteAggregating

protected void handleTagWriteAggregating(MeasurementService source,
                                         java.lang.Object timestamp,
                                         java.lang.Object newValue,
                                         java.lang.Object oldValue)
Parameters:
source - The source (MeasurementService) parameter.
timestamp - The timestamp (Object) parameter.
newValue - The new value (Object) parameter.
oldValue - The old value (Object) parameter.
See Also:
getTagWriteAggregating(), handleMethodTagWriteAggregating(int,Measurement,Object)

handleWriteOperationsError

protected void handleWriteOperationsError(java.lang.String errorMsg)
Handle write operations error with the specified error msg parameter.

Parameters:
errorMsg - The error msg (String) parameter.

handleWriteOperationsStopRequest

protected void handleWriteOperationsStopRequest()
Handle write operations stop request.

See Also:
getWriteOperationsStopRequest(), handleMethodWriteOperationsStopRequest(int,Command,Object)

improveReportMap

protected void improveReportMap(java.util.Map reads,
                                java.lang.Object timestamp)
Improve reads map with the specified reads and timestamp parameters.

Parameters:
reads - The reads (Map) parameter.
timestamp - The timestamp (Object) parameter.

isOperationsRunning

protected boolean isOperationsRunning()
Gets the operations running (boolean) value.

Returns:
The operations running (boolean) value.

isTagWriteAntennaReporting

public boolean isTagWriteAntennaReporting()
Gets the tag write antenna reporting (boolean) value.

Returns:
The tag write antenna reporting (boolean) value.
See Also:
getTagWriteAntennaReporting(), handleMethodTagWriteAntennaReporting(int,Measurement,Object)

mergeAntennaInfo

public void mergeAntennaInfo(java.util.Map cacheReadData,
                             java.util.Map reads)
Merge antenna info with the specified cache read data and reads parameters.

Parameters:
cacheReadData - The cache read data (Map) parameter.
reads - The reads (Map) parameter.

mergeMapOverMap

protected java.util.Map mergeMapOverMap(java.util.Map additionalValues,
                                        java.util.Map existingValues)
Parameters:
additionalValues - The additional values (Map) parameter.
existingValues - The existing values (Map) parameter.
Returns:
Results of the merge map over map (Map) value.

notifyTagAggregation

public void notifyTagAggregation()
Notify tag aggregation.


notifyTagReport

public void notifyTagReport(java.lang.String key,
                            java.lang.String operationId,
                            java.util.Map reads)
Notify tag report with the specified key, operation id and reads parameters.

Parameters:
key - The key (String) parameter.
operationId - The operation id (String) parameter.
reads - The reads (Map) parameter.
See Also:
notifyTagReport(String,String,Map,Object)

notifyTagReport

public void notifyTagReport(java.lang.String key,
                            java.lang.String operationId,
                            java.util.Map reads,
                            java.lang.Object timestamp)
Notify tag report with the specified key, operation id, reads and timestamp parameters.

Parameters:
key - The key (String) parameter.
operationId - The operation id (String) parameter.
reads - The reads (Map) parameter.
timestamp - The timestamp (Object) parameter.
See Also:
notifyTagReport(String,String,Map)

operationsInterrupted

protected void operationsInterrupted(java.lang.String errorMsg)
Operations interrupted with the specified error msg parameter.

Parameters:
errorMsg - The error msg (String) parameter.

setOperationsStatusFinished

protected void setOperationsStatusFinished()
Operations finished.


setOperationsStatusStarted

protected void setOperationsStatusStarted()
Operations started.


setTagWriteAggregatingLdapFilter

protected void setTagWriteAggregatingLdapFilter(Filter tagAggregatingLdapFilter)
Sets the tag aggregating ldap filter value.

Parameters:
tagAggregatingLdapFilter - The tag aggregating ldap filter (Filter) parameter.

setWriteOperationLdapFilter

protected void setWriteOperationLdapFilter(Filter writeOperationLdapFilter)
Sets the write operation ldap filter value.

Parameters:
writeOperationLdapFilter - The write operation ldap filter (Filter) parameter.
See Also:
evaluateWriteOperationLdapFilter()

startOperations

protected abstract boolean startOperations()
Start operations.

Returns:
Results of the start operations (boolean) value.
See Also:
endOperations(), executeWriteOperations(), getWriteOperations(), handleMethodWriteOperations(int,Measurement,Object), handleSetWriteOperations(Measurement,Object)

updateTagInCache

protected void updateTagInCache(java.lang.String key,
                                java.lang.String operationId,
                                java.util.Map reads,
                                java.util.Map cache,
                                java.lang.Object timestamp)

2008-09-15 1.1.0

Copyright (c) 2008 IBM. See license in Legal section.