Programming with the BEA WebLogic RFID Edge Mobile SDK APIs

     Previous  Next    Open TOC in new window  Open Index in new window  View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

BEA WebLogic RFID Edge Mobile SDK APIs

The following sections describe the BEA WebLogic RFID Edge Mobile SDK API programming components that you use to read tags and send EPCIS event messages to configured destinations.

 


Tag Reading API

The Tag Reading API consists of two packages:

com.bea.mobile.rfid.reader Package

This package contains the classes and interfaces representing the physical and logical reader for the mobile device. The PhysicalReader interface represents the physical device, whereas the LogicalReader represents an antenna on the device. Currently, RFID handhelds are comprised of one antenna, but this API is designed to support multiple antennas for future scalability. The LogicalReader can subscribe and unsubscribe to various event types (represented by the EventType class) and process events accordingly. The EventType class resides in the com.bea.mobile.rfid.eventhandler package.

Implementations for the PhysicalReader and LogicalReader for the Symbol MC9000 RFID handheld are provided in the SDK.

As the trigger is pressed on the mobile device, the LogicalReader stores tag read data in its ReadBuffer. The ReadBuffer contains a TagReport for each EPC read.

The ReaderManager class allows the developer to create, initialize, register, and unregister a PhysicalReader.

Figure 3-1 illustrates the relationships among the classes and interfaces.

Figure 3-1 Tag Reading API UML Diagram

Tag Reading API UML Diagram

com.bea.mobile.rfid.reader.PhysicalReader Interface

Tag Reading API UML Diagram

The PhysicalReader interface represents the physcial device and contains the following methods:

PhysicalReader
getName() : String // Returns the name of the physical reader
setName(name:String) : void // Sets the specified name of the physical
// reader
getAttributes() : Map // Returns the name of the physical reader
setAttributes(attributes:Map) : void // Sets the specified map of
// attribute names to attribute values
getLogicalReaders() : List // Returns the list of logical readers ( // (antennas) for the mobile device)
setLogicalReaders(readers:List) : void // Sets the specified list of
// logical readers (antennas) for the
// mobile device
getVendorObject() : Object // Returns the vendor reader object
initialize(readerConfig:ReaderConfig) : void // Performs initialization
// with the specified reader configuration
// data for the mobile device
initAttributes() : void // Initializes the physical reader attributes
open() : void // Enables the reader to start processing tags
close() : void // Disables the reader from processing tags
Dispose() : void // Frees up resources used by the reader (for
// when the reader is no longer needed by the
// application)
isOpen() : boolean // Indicates whether or not the reader is
// enabled for processing tags
setAudioParameters(duration:int, frequency:int, volume:int) : void
// Sets the specified audio parameters
playBeep() : void // Plays beep for default duration, frequency,
// and volume
playBeep(duration:int, frequency:int, volume:int) : void
// Plays beep for specified duration,
// frequency, and volume
playAudio(volume:int, wavFilename:String) : void
// Plays specified WAV file at specified
// volume

com.bea.mobile.rfid.reader.LogicalReader Interface

Tag Reading API UML Diagram

The LogicalReader interface represents the logical reader and contains the following methods:

LogicalReader
getName() : String // Returns the name of the logical reader
setName(name:String) : void // Sets the specified name of the logical
// reader
getAttributes() : Map // Returns the name of the physical reader
setAttributes(attributes:Map) : void // Sets the specified map of
// attribute names to attribute values
setLogicalReaders(readers:List) : void // Sets the specified list of
// logical readers (antennas) for the
// mobile device
initialize(readerConfig:ReaderConfig) : void // Performs initialization
// with the specified reader configuration
// data for the mobile device
initAttributes() : void // Initializes the logical reader attributes
supportsReading() : boolean // Indicates whether or not the logical
// reader supports tag reading
supportsWriting() : boolean // Indicates whether or not the logical
// reader supports tag writing
getReadBuffer() : ReadBuffer // Returns the read buffer of the logical
// reader
resetReadBuffer() : void // Resets the read buffer of the logical
// reader
powerUp() : void // Powers up the reader
powerDown() : void // Powers down the reader
startRead() : void // Starts processing tag reads via read event
// handler
stopRead() : void // Stops processing tag reads
flush() : void // Flushes the logical reader (this call
// attempts to cancel pending reads or waits
// for read completion)
Dispose() : void // Frees up resources used by the logical
// reader
isBusy() : boolean // Indicates whether or not an RFID operation
// has been started
subscribe(type:EventType, handler:EventHandler) : void
// Sets subscriptions for the specified event
// type to the specified event handler
unsubscribe(type:EventType, handler:EventHandler) : void
// Unsets subscriptions for the specified
// event type from the specified event handler

com.bea.mobile.rfid.reader.ReadBuffer Class

Tag Reading API UML Diagram

The ReadBuffer class contains the tag read data for the logical reader and consists of the following methods:

ReadBuffer
getTagReports() : List // Returns the list of TagReport objects
setTagReports(tagReports:List) : void // Sets the specified list of
// TagReport objects
getReadStatus() : int // Returns the read status code
setReadStatus(statusCode:int) : void // Sets the specified read status
// code
getLogicalReaders() : List // Returns the list of logical readers
// (antennas) for the mobile device)
reset() : void // Resets the accumulated tag read data

com.bea.mobile.rfid.reader.TagReport Class

Tag Reading API UML Diagram

The TagReport class contains the individual tag read in the read buffer and consists of the following methods:

TagReport
getEPC() : EPC // Returns the EPC object
setEPC(epc:EPC) : void // Sets the specified EPC object
getReadCount() : int // Returns the tag read count
setReadCount(count:int) : void // Sets the specified tag read count
getTimestamp() : long // Returns the tag read timestamp
setTimestamp(timestamp:long) : void // Sets the specified tag read
// timestamp
incrementReadCount() : void // Increments the tag read count

com.bea.mobile.rfid.reader.Attribute Class

Tag Reading API UML Diagram

The Attribute abstract class represents attributes of the mobile device and contains the following static variables:

Attribute
ATTRIBUTE_KEY_API_VERSION : String // The reader API version
ATTRIBUTE_KEY_ASSEMBLY_VERSION : String // The assembly version
ATTRIBUTE_KEY_FIRMWARE_MFG_DATE : String // Manufacturer date
ATTRIBUTE_KEY_FIRMWARE_VERSION : String // Firmware version
ATTRIBUTE_KEY_SERIAL_NUMBER : String // Serial number

com.bea.mobile.rfid.reader.ReaderManager Class

Tag Reading API UML Diagram

The ReaderManager singleton class supports the lifecycle management of a PhysicalReader and contains the following methods:

ReaderManager
getInstance() : ReaderManager // Returns the ReaderManager instance
createPhysicalReaderInstance(name:String, className:String) : PhysicalReader // Creates the PhysicalReader instance for
// the specified name and class name
createAndInitPhysicalReader(name:String, className:String, config:ReaderConfig) : PhysicalReader // Creates and initializes the
// PhysicalReader instance for the specified
// name, class name, and reader config
register(name:String, physicalReader:PhysicalReader) : void
// Registers the specified physical reader
// with the specified name
unregister(name:String) : void // Unregisters the physical reader with
// the specified name
getRegisteredPhysicalReader(name:String) : PhysicalReader // Returns the
// PhysicalReader instance registered with
// the specified name

com.bea.mobile.rfid.readertypes Package

This package contains the implementation classes for the physical and logical readers. The SymbolMC9000PhysicalReader class provides the concrete implementation of the PhysicalReader interface for the Symbol MC9000 RFID handheld. The SymbolMC9000LogicalReader class provides the concrete implementation of the LogicalReader interface.

Figure 3-2 illustrates the relationships among the classes and interfaces

Figure 3-2 Symbol Tag Reading API UML Diagram

Symbol Tag Reading API UML Diagram

com.bea.mobile.rfid.readertypes.SymbolMC9000PhysicalReader Class

Symbol Tag Reading API UML Diagram

The SymbolMC9000PhysicalReader class implements the PhysicalReader interface and provides concrete method implementations for all methods documented in "PhysicalReader" on page 3-3.

com.bea.mobile.rfid.readertypes.SymbolMC9000LogicalReader Class

Symbol Tag Reading API UML Diagram

The SymbolMC9000LogicalReader class implements the LogicalReader interface and provides concrete method implementations for all methods documented in "LogicalReader" on page 3-5.

In addition to the interface methods, the class contains the following methods:

SymbolMC9000LogicalReader - Additional Methods
onReadEvent(sender:Object, eventArgs:EventArgs) : void // Processes the
// specified read event
onTriggerEvent(sender:Object, eventArgs:EventArgs) : void // Processes
// the specified trigger event

com.bea.mobile.rfid.eventhandler Package

This package contains classes supporting event handling for mobile applications.

com.bea.mobile.rfid.eventhandler.EventType Class

Symbol Tag Reading API UML Diagram

The EventType class is a type-safe enumeration class and represents supported event types. The class consists of the following attributes and methods:

EventType
READ_EVENT : EventType // Read event
TRIGGER_PRESSED_EVENT : EventType // Trigger pressed event
TRIGGER_RELEASED_EVENT : EventType // Trigger released event
WORKFLOW_EVENT : EventType // Workflow event
TIMER_EVENT : EventType // Timer event
CLEAR_DISPLAYED_EVENT : EventType // Clear displayed event
CLEAR_PERSISTENCE_EVENT : EventType // Clear persistence event
READ_PERSISTENCE_EVENT : EventType // Read persistence event
CHANGE_CONFIGURATION_EVENT : EventType // Change configuration event
toString() : String // Returns the string representation of the
// the event

 


Workflow API

The Workflow API consists of the com.bea.mobile.rfid.workflow package.

com.bea.mobile.rfid.workflow Package

This package contains the classes and interfaces representing the workflow framework for the mobile device. The WorkflowFactory interface provides the ability to create a Workflow instance.

The AbstractWorkflow class provides an abstract implementation of the Workflow interface.

The WorkflowEventArgs class contains the event type and event info for workflow processing.

The EventType class resides in the com.bea.mobile.rfid.eventhandler package and represents the supported event types. See "com.bea.mobile.rfid.eventhandler Package" on page 3-13 for details on the EventType class.

Figure 3-3 illustrates the relationships among the classes and interfaces

Figure 3-3 Workflow API UML Diagram

Workflow API UML Diagram

com.bea.mobile.rfid.workflow.WorkflowFactory Class

Workflow API UML Diagram

The WorkflowFactory interface represents a factory for creating workflow objects. This interface contains the following method:

WorkflowFactory
createWorkflow(name:String, workflowClassName:String) : Workflow
// Returns an instance of the specified
// workflow name and workflow class name

com.bea.mobile.rfid.workflow.WorkflowFactory Class

com.bea.rfid.workflow.WorkflowFactoryImpl Class

\

Workflow API UML Diagram

The WorkflowFactoryImpl class implements the WorkflowFactory interface and provides concrete method implementations for all methods documented in WorkflowFactory.

In addition to the interface methods, the class contains the following methods:

WorkflowFactoryImpl - Additional Methods
getInstance() : WorkflowFactory // Returns the WorkflowFactory singleton
// instance

com.bea.mobile.rfid.workflow.Workflow Interface

Workflow API UML Diagram

The Workflow interface represents a workflow within a mobile device application. This interface contains the following methods:

Workflow
getName() : String // Returns the workflow name
getWorkflowName() : String // Returns the workflow class name
initialize(configMgr:ConfigManager) : void // Performs initialization of
// the workflow based on the specified
// configuration manager
start() : void // Starts the workflow
stop() : void // Stops the workflow
shutdown() : void // Shuts down the workflow
reset() : void // Resets the workflow
handleEvent(sender:Object, eventArgs:EventArgs) : void // Processes the
// specified event

com.bea.mobile.rfid.workflow.AbstractWorkflow Class

Workflow API UML Diagram

The AbstractWorkflow class is an abstract class that implements the Workflow interface. The interfacde represents a factory for creating workflow objects. This class contains the following implementation methods:

AbstractWorkflow - Implementation Methods
getName() : String // Returns the workflow name
getWorkflowName() : String // Returns the workflow class name
initialize(configMgr:ConfigManager) : void // Performs initialization of
// the workflow based on the specified
// configuration manager

The class contains the following abstract methods:

AbstractWorkflow - Abstract Methods
start() : void // Starts the workflow
stop() : void // Stops the workflow
shutdown() : void // Shuts down the workflow
reset() : void // Resets the workflow
handleEvent(sender:Object, eventArgs:EventArgs) : void // Processes the
// specified event

com.bea.mobile.rfid.workflow.WorkflowEventArgs Class

Workflow API UML Diagram

The WorkflowEventArgs class provides workflow-specific event data during event handling. This class contains the following methods:

WorkflowEventArgs
getEventType() : EventType // Returns the event type object
getEventDataMap() : Map // Returns the event data map of event names
// to event values

com.bea.mobile.rfid.workflow.WorkflowException Class

Workflow API UML Diagram

The WorkflowException class represents an error during workflow processing. This class contains the following methods:

WorkflowException
WorkflowException() : void // Default constructor
WorkflowException(errorMessage:String) : void // Constructor with error
// message parameter
WorkflowException(errorMessage:String, cause:Exception) : void
// Constructor with error message and cause
// exception parameters
WorkflowException(cause:Exception) : void // Constructor with cause
// exception parameter

 


Filter API

The Filter API consists of two packages:

com.bea.mobile.rfid.filter Package

This package contains the classes and interfaces representing the filters for a workflow to apply on tag reads. The Filter interface provides the ability to refine the reported tag reads based on specific criteria.

Figure 3-4 illustrates the relationships among the classes and interfaces

Figure 3-4 Filter API UML Diagram

Filter API UML Diagram

com.bea.mobile.rfid.filter.Filter Interface

Filter API UML Diagram

The Filter interface represents a workflow filter and contains the following methods:

Filter
initialize(configMgr:ConfigManager, persistenceMgr:PersistenceManager, epcisCapture:EPCISCapture) : void // Initializes the filter with the
// specified objects
execute(epcisEvents:List) : List // Applies the filter to the specified
// list of EPCISEvent objects and returns the
// filtered list of EPCISEvent objects

com.bea.mobile.rfid.filter.FilterException Class

Filter API UML Diagram

The FilterException class represents an error during filter processing. This class contains the following methods:

FilterException
FilterException() : void // Default constructor
FilterException(errorMessage:String) : void // Constructor with error
// message parameter
FilterException(errorMessage:String, cause:Exception) : void
// Constructor with error message and cause
// exception parameters
FilterException(cause:Exception) : void // Constructor with cause
// exception parameter

com.bea.mobile.rfid.filtertypes Package

This package contains implementation classes for the Filter interface..

Figure 3-5 illustrates the relationships among the classes and interfaces

Figure 3-5 EPC Filter APIs UML Diagram

EPC Filter APIs UML Diagram

com.bea.mobile.rfid.filtertypes.UniqueEPCFilter Class

EPC Filter APIs UML Diagram

The UniqueEPCFilter class provides the ability to filter out duplicate EPC reads. This class contains the following methods:

UniqueEPCFilter
initialize(configMgr:ConfigManager, persistenceMgr:PersistenceManager, epcisCapture:EPCISCapture) : void // Initializes the filter with the
// specified objects
execute(epcisEvents:List) : List // Applies a unique EPC filter to the
// specified list of EPCISEvent objects and
// returns the filtered list of EPCISEvent
// objects
isDuplicateEPC(epcURI:URI, associatedEPCISEvent:EPCISEvent) : void
// Indicates whether or not specified EPC
// is a duplicate read

com.bea.mobile.rfid.filtertypes.UniqueEPCReadPointFilter Class

EPC Filter APIs UML Diagram

The UniqueEPCReadPointFilter class extends the UniqueEPCFilter class and overrrides the isDuplicateEPC() method to filter on EPC and read point. This class contains the following methods:

UniqueEPCReadPointFilter
isDuplicateEPC(epcURI:URI, associatedEPCISEvent:EPCISEvent) : void
// Indicates whether or not specified EPC
// is a duplicate read

com.bea.mobile.rfid.filtertypes.UniqueEPCBusinessLocationFilter Class

EPC Filter APIs UML Diagram

The UniqueEPCBusinessLocationFilter class extends the UniqueEPCFilter class and overrrides the isDuplicateEPC() method to filter on EPC and business location. This class contains the following methods:

UniqueEPCBusinessLocationFilter
isDuplicateEPC(epcURI:URI, associatedEPCISEvent:EPCISEvent) : void
// Indicates whether or not specified EPC
// is a duplicate read

com.bea.mobile.rfid.filtertypes.UniqueEPCReadPtBizLocFilter Class

EPC Filter APIs UML Diagram

The UniqueEPCReadPtBizLocFilter class extends the UniqueEPCFilter class and overrrides the isDuplicateEPC() method to filter on EPC, read point, and business location. This class contains the following methods:

UniqueEPCReadPtBizLocFilter
isDuplicateEPC(epcURI:URI, associatedEPCISEvent:EPCISEvent) : void
// Indicates whether or not specified EPC
// is a duplicate read

 


Configuration API

The Configuration API consists of the com.bea.mobile.rfid.config package.

com.bea.mobile.rfid.config Package

This package contains the classes and interfaces for supporting configuration management on the mobile device. The Configuration API provides central management of reader, workflow, EPCIS event, and persistence configuration data.

Figure 3-6 illustrates the relationships among the classes and interfaces

Figure 3-6 Configuration API UML Diagram

Configuration API UML Diagram

com.bea.mobile.rfid.config.ConfigManager Interface

The ConfigManager interface provides centralized configuration management for the mobile device application. This interface contains the following methods:

ConfigManager
loadConfig(appName:String) : void // Loads a configuration file based on
// the specified application name
// (e.g., App1.config.xml)
loadConfig((appName:String, isResetAppConfig:boolean) : void
// The isResetAppConfig Boolean flag
// indicates wheter or not to reset the
// AppConfig object before loading the
// specified configuration
getAppConfig : Map // Returns a map of configuration property
// names to values
getValue(key:String) : String // Returns a value for the specified
// configuration property name

com.bea.rfid.config.ConfigManagerImpl Class

The ConfigManagerImpl class implements the ConfigManager interface and provides concrete method implementations for all methods documented in Table ConfigManager.

In addition to the interface methods, the class contains the following methods:

ConfigManagerImpl - Additional Methods
getInstance() : ConfigManagerImpl // Returns the ConfigManagerImpl
// singleton instance
getWorkflowConfig() : WorkflowConfig // Returns the WorkflowConfig
// instance
getEPCISCaptureConfig() : EPCISCaptureConfig // Returns the
// EPCISCaptureConfig instance
getPersistenceConfig() : PersistenceConfig // Returns the
// PersistenceConfig instance
getReaderConfig() : ReaderConfig // Returns the ReaderConfig
// instance
updateConfig(key:String, value:String) : void // Updates the
// configuration with the specified
// key/value pair

com.bea.mobile.rfid.config.ReaderConfig Class

Configuration API UML Diagram

The ReaderConfig class manages the configuration data for the readers. This class contains the following methods:

ReaderConfig
getPhysicalReaderNames() : List // Returns the list of configured
// physical reader names
getReaderConfigData(physicalReaderName:String) : ReaderConfig.ReaderConfigData // Returns the ReaderConfigData struct for
// the specified physical reader name
createPhysicalReaderClassInstance(physicalReaderClassName:String) : PhysicalReader // Returns an instance of the specified
// physical reader class name

com.bea.mobile.rfid.config.ReaderConfig.ReaderConfigData Struct

Configuration API UML Diagram

The ReaderConfigData struct contains the configuration data for a reader. This struct contains the following attributes:

ReaderConfigData
m_physicalReaderName : String // The physical reader name
m_physicalReaderClassName : String // The physical reader class name
m_logicalReaderNames : List // The list of configured logical reader
// names
m_tagBufferSize : int // The tag buffer size for the reader
m_attenuation : int // The attenuation level
m_audioDuration : int // The audio duration
m_audioFrequency : int // The audio frequency
m_audioVolume : int // The audio volume

com.bea.mobile.rfid.config.WorkflowConfig Class

Configuration API UML Diagram

The WorkflowConfig class manages the configuration data for the workflow. This class contains the following methods:

WorkflowConfig
getWorkflowNames() : List // Returns the list of configured workflow
// names
getWorkflowConfigData(workflowName:String) : WorkflowConfig.WorkflowConfigData // Returns the WorkflowConfigData
// struct for the specified workflow name
createFilterClassInstance(filterClassName:String) : Filter
// Returns an instance of the specified
// filter class name

com.bea.mobile.rfid.config.WorkflowConfig.WorkflowConfigData Struct

Configuration API UML Diagram

The WorkflowConfigData struct contains the configuration data for a workflow. This struct contains the following attributes:

WorkflowConfigData
m_workflowName : String // The workflow name
m_workflowClassName : String // The workflow class name
m_isImmediateSend : boolean // Indicates whether or not the workflow is
// to immediately send the tag read as an
// EPCIS event to the configured destination
m_filterClassNames : List // The list of configured filter class names

com.bea.mobile.rfid.config.PersistenceConfig Class

Configuration API UML Diagram

The PersistenceConfig class manages the configuration data for the persistence store. This class contains the following methods:

PersistenceConfig
getPersistenceStoreDir() : String // Returns the persistence storage
// directory
getPersistenceStoreFilename() : String // Returns the persistence
// storage filename
getMaxNumPersistence() : int // Returns the maximum number of data
// objects to store
getAbsoluteFilename() : String // Returns the absolute filename
// for the persistence storage file

com.bea.mobile.rfid.config.EPCISCaptureConfig Class

Configuration API UML Diagram

The EPCISCaptureConfig class represents the configuration data associated with EPCIS event messages sent from the mobile device. This class supports reading the configuration data as well as updating/adding configuration data. This class contains the following methods:

EPCISCaptureConfig
getReadPointURIs() : List // Returns the list of available read point
// URI objects from which the user chooses
setReadPointURIs(uris:List) : void // Sets the specified list of
// available read point URI objects from
// which the user chooses
getBusinessLocationURIs() : List // Returns the list of available
// business location URI objects from which
// the user chooses
setBusinessLocationURIs(uris:List) : void // Sets the specified list of
// available business location URI objects
// from which the user chooses
getBusinessStepURIs() : List // Returns the list of available
// business step URI objects from which
// the user chooses
setBusinessStepURIs(uris:List) : void // Sets the specified list of
// available business step URI objects
// from which the user chooses
getDispositionURIs() : List // Returns the list of available
// disposition URI objects from which
// the user chooses
setDispositionURIs(uris:List) : void // Sets the specified list of
// available disposition URI objects
// from which the user chooses
getBusinessTransactions() : List // Returns the list of available
// business transaction objects from which
// the user chooses
setBusinessTransactions(uris:List) : void // Sets the specified list of
// available business transaction objects
// from which the user chooses
getDestinationURIs() : List // Returns the list of available
// destination URI objects from which
// the user chooses
setDestinationURIs(uris:List) : void // Sets the specified list of
// available destination URI objects
// from which the user chooses
getAction() : EPCISAction // Returns the EPCISAction object indicating
// the EPCIS event action (ADD,
// OBSERVE, DELETE)
setAction(action:EPCISAction) : void // Sets the specified EPCISAction
// object indicating the EPCIS event action
getTransport() : EPCISTransport // Returns the EPCISTransport object
// indicating the transport (HTTP_POST,
// SOAP) to deliver the EPCIS message
setTransport(transport:EPCISTransport) : void // Sets the specified
// EPCISTransport object indicating the
// transport to deliver the EPCIS message
getSocketTimeout() : long // Returns the socket timeout value for
// the HTTP POST transport
setSocketTimeout(timeout:long) : void // Sets the specified socket
// timeout value for the HTTP POST transport
getCurrentReadPointURI() : URI // Returns the current read point
// URI chosen by the user
setCurrentReadPointURI(uri:URI) : void // Sets the specified read point
// URI as the current read point URI chosen
// by the user
addReadPointURI(uri:URI) : void // Adds the specified read point
// URI to the list of available read point
// URI objects
deleteReadPointURI(uri:URI) : void // Deletes the specified read point
// URI from the list of available read point
// URI objects
getCurrentBusinessLocationURI() : URI // Returns the current business
// location URI chosen by the user
setCurrentBusinessLocationURI(uri:URI) : void // Sets the specified
// business location URI as the current
// business location URI chosen by the user
addBusinessLocationURI(uri:URI) : void // Adds the specified business
// location URI to the list of available
// business location URI objects
deleteBusinessLocationURI(uri:URI) : void // Deletes the specified
// business location URI from the list of
// available business location URI objects
getCurrentBusinessStepURI() : URI // Returns the current business
// step URI chosen by the user
setCurrentBusinessStepURI(uri:URI) : void // Sets the specified
// business step URI as the current business
// step URI chosen by the user
addBusinessStepURI(uri:URI) : void // Adds the specified business
// step URI to the list of available
// business step URI objects
deleteBusinessStepURI(uri:URI) : void // Deletes the specified
// business step URI from the list of
// available business step URI objects
getCurrentDispositionURI() : URI // Returns the current disposition
// URI chosen by the user
setCurrentDispositionURI(uri:URI) : void // Sets the specified
// disposition URI as the current
// disposition URI chosen by the user
addDispositionURI(uri:URI) : void // Adds the specified disposition
// URI to the list of available
// disposition URI objects
deleteDispositionURI(uri:URI) : void // Deletes the specified
// disposition URI from the list of
// available disposition URI objects
getCurrentBusinessTransaction() : BusinessTransaction // Returns the
// current business transaction chosen by the
// user
setCurrentBusinessTransaction(bt:BusinessTransaction) : void // Sets the
// specified business transaction as the
// current business transaction chosen by the
// user
addBusinessTransaction(bt:BusinessTransaction) : void // Adds the
// specified business transaction to the list
// of available business transaction objects
deleteBusinessTransaction(bt:BusinessTransaction) : void // Deletes the
// specified business transaction from the
// list of available business transaction
// objects
getCurrentDestinationURI() : URI // Returns the current destination
// URI chosen by the user
setCurrentDestinationURI(uri:URI) : void // Sets the specified
// destination URI as the current
// destination URI chosen by the user
addDestinationURI(uri:URI) : void // Adds the specified destination
// URI to the list of available
// destination URI objects
deleteDestinationURI(uri:URI) : void // Deletes the specified
// destination URI from the list of
// available destination URI objects

com.bea.mobile.rfid.config.ConfigException Class

Configuration API UML Diagram

The ConfigException class represents an error during configuration processing. This class contains the following methods:

ConfigException
ConfigException() : void // Default constructor
ConfigException(errorMessage:String) : void // Constructor with
// error message parameter
ConfigException(errorMessage:String, cause:Exception) : void
// Constructor with error message and cause
// exception parameters
ConfigException(cause:Exception) : void // Constructor with cause
// exception parameter

 


Persistence API

The Persistence API consists of the com.bea.mobile.rfid.persistence package.

com.bea.mobile.rfid.persistence Package

This package contains the classes and interfaces for supporting the persistence of tag reads onto the filesystem of the mobile device. Note that location data and EPCIS event data will be persisted for each tag read.

Figure 3-7 illustrates the relationships among the classes and interfaces

Figure 3-7 Persistence API UML Diagram

Persistence API UML Diagram

com.bea.mobile.rfid.persistence.PersistenceManager Interface

Persistence API UML Diagram

The PersistenceManager interface provides centralized persistence management and contains the following methods:

PersistenceManager
initialize(persistenceConfig:PersistenceConfig) : void // Performs
// initialization based on specified
// persistence configuration
persist(dataObjects:List) : void // Saves the specified list of data
// objects to the persistence store and memory
persist(dataObject:Object) : void // Saves the specified data object to
// the persistence store and memory
remove(dataObjects:List) : void // Removes the specified list of data
// objects from memory
remove(dataObject:Object) : void // Removes the specified data object
// from memory
getData() : List // Returns the cloded list of of persisted
// data objects in memory
wipeData() : void // Wipes the currently persisted list of data
// objects from the persistence store and memory

com.bea.mobile.rfid.persistence.PersistenceManagerImpl Class

The PersistenceManagerImpl class provides the concrete implementation of the PersistenceManager interface.

com.bea.mobile.rfid.persistence.PersistenceException Class

Persistence API UML Diagram

The PersistenceException class represents an error during persistence processing. This class contains the following methods:

PersistenceException
PersistenceException() : void // Default constructor
PersistenceException(errorMessage:String) : void // Constructor with
// error message parameter
PersistenceException(errorMessage:String, cause:Exception) : void
// Constructor with error message and cause
// exception parameters
PersistenceException(cause:Exception) : void // Constructor with cause
// exception parameter

 


EPCIS Capture API

The EPCIS Capture API consists of the com.bea.mobile.rfid.epcis package.

com.bea.mobile.rfid.epcis Package

This package contains the classes and interfaces for creating, serializing/deserializing, and sending EPCIS events.

Figure 3-8 illustrates the relationships among the classes and interfaces

Figure 3-8 EPCIS Capture API UML Diagram

EPCIS Capture API UML Diagram

com.bea.mobile.rfid.epcis.EPCISCapture Interface

EPCIS Capture API UML Diagram

The EPCISCapture interface is utilized to create an EPCIS event object and to send it to configured destinations. This interface contains the following methods:

EPCISCapture
initialize(epcisEventConfig:EPCISEventConfig) : void // Performs
// initialization based on specified
// EPCIS event configuration
createObjectEvent(objectEventData:EPCISEventData.ObjectEventData) : void
// Returns an ObjectEvent object based the
// specified object event data
capture(epcisEvent:EPCISEvent) : void // Sends the specified EPCIS event
// to configured destinations

com.bea.mobile.rfid.epcis.EPCISCaptureImpl Class

EPCIS Capture API UML Diagram

The EPCISCaptureImpl class provides the concrete implementation of the EPCISCapture interface.

com.bea.mobile.rfid.epcis.EPCISEvent Interface

EPCIS Capture API UML Diagram

The EPCISEvent interface represents the base interface for EPCIS events and contains the following methods:

EPCISEvent
getEventTime() : long // Returns the time when the EPCIS event
// occurred
getRecordTime() : long // Returns the time when the EPCIS event
// was recorded
setRecordTime(recordTime:long) : void // Sets the specified time when
// the EPCIS event was recorded

com.bea.mobile.rfid.epcis.EPCISEventImpl Class

EPCIS Capture API UML Diagram

The EPCISEventImpl class provides the concrete implementation of the EPCISEvent interface.

com.bea.mobile.rfid.epcis.ObjectEvent Interface

EPCIS Capture API UML Diagram

The ObjectEvent interface implements the EPCISEvent inteface and represents an EPCIS Object event. This interface contains the following methods:

ObjectEvent
getEPCURIs() : List // Returns the list of EPC URI objects
getAction() : EPCISAction // Returns the EPCIS action (ADD,
// OBSERVE, DELETE)
getBusinessStepURI() : URI // Returns the business step URI
getDispositionURI() : URI // Returns the disposition URI
getBusinessLocationURI() : URI // Returns the business location URI
getBusinessTransactions() : URI // Returns the list of
// BusinessTransaction objects
setEPCURIs(epcURIs:List) : void // Sets the specified list of EPC URI
// objects
setAction(action:EPCISAction) : void // Sets the specified EPCIS action
// (ADD, OBSERVE, DELETE)
setBusinessStepURI(uri:URI) : void // Sets the specified business step
// URI
setDispositionURI(uri:URI) : void // Sets the specified disposition URI
setReadPointURI(uri:URI) : void // Sets the specified read point URI
setBusinessLocationURI(uri:URI) : void // Sets the specified business
// location URI
setBusinessTransactions(bizTransactions:List) : void // Sets the
// specified list of BusinessTransaction
// objects

com.bea.mobile.rfid.epcis.ObjectEventImpl Class

EPCIS Capture API UML Diagram

The ObjectEventImpl class provides the concrete implementation of the ObjectEvent interface.

com.bea.mobile.rfid.epcis.BusinessTransaction Interface

EPCIS Capture API UML Diagram

The BusinessTransaction interface represents the business transaction (order ID) of an EPCIS event. This interface contains the following methods:

BusinessTransaction
getBusinessTransactionURI() : URI // Returns the business transaction URI
getTypeID() : URI // Returns the type ID
toString() : String // Returns the string representation of the
// business transaction

com.bea.mobile.rfid.epcis.BusinessTransactionImpl Class

EPCIS Capture API UML Diagram

The BusinessTransactionImpl class provides the concrete implementation of the BusinessTransaction interface.

com.bea.mobile.rfid.epcis.EPCISAction Class

EPCIS Capture API UML Diagram

The EPCISAction class is a type-safe enumeration class and represents the action of an EPCIS event (ADD, OBSERVE, DELETE). This class contains the following attributes and methods:

EPCISAction
ADD : EPCISAction // Attribute representing ADD action
OBSERVE : EPCISAction // Attribute representing OBSERVE action
DELETE : EPCISAction // Attribute representing DELETE action
toString() : String // Returns string representation of EPCIS
// action
toEPCISAction(actionStr:String) : EPCISAction // Returns EPCISAction
// object for specified string

com.bea.mobile.rfid.epcis.EPCISTransport Class

EPCIS Capture API UML Diagram

The EPCISTransport class is a type-safe enumeration class and represents the transport for sending an EPCIS event (HTTP_POST, SOAP). This class contains the following attributes and methods:

EPCISTransport
HTTP_POST : EPCISTransport // Attribute representing HTTP POST transport
SOAP : EPCISTransport // Attribute representing SOAP transport
toString() : String // Returns string representation of EPCIS
// action
toEPCISTransport(transportStr:String) : EPCISTransport // Returns
// EPCISTransport object for specified string

com.bea.mobile.rfid.epcis.EPCISCaptureException Class

EPCIS Capture API UML Diagram

The EPCISCaptureException class represents an error during EPCIS capture processing. This class contains the following methods:

EPCISCaptureException
EPCISCaptureException() : void // Default constructor
EPCISCaptureException(errorMessage:String) : void // Constructor with
// error message parameter
EPCISCaptureException(errorMessage:String, cause:Exception) : void
// Constructor with error message and cause
// exception parameters
EPCISCaptureException(cause:Exception) : void // Constructor with cause
// exception parameter

 


ALE EPC API

The ALE EPC API consists of the following packages:

com.connecterra.ale.epc Package

This package contains the classes and interfaces for creating and processing EPC objects.

Figure 3-9 illustrates the relationships among the classes and interfaces

Figure 3-9 ALE EPC API UML Diagram

ALE EPC API UML Diagram

com.connecterra.ale.epc.EPCFactory Class

ALE EPC API UML Diagram

The EPCFactory class is a singleton class for creating various types of EPC objects. This class contains the following methods:

EPCFactory
getInstance() : EPCFactory // Returns the singleton instance of the
// EPCFactory
create(high:long, low:long) : EPC // Returns an EPC object for the
// specified high and low long values
create(longArray: long[]) : EPC // Returns an EPC object for the
// specified array of long values
create(uri:URI) : EPC // Returns an EPC object for the specified
// URI
createSGTIN64(filter:int, companyPrefix:String, itemReference:long, serialNumber:long) : SGTIN64
// Returns an SGTIN64 object for the specified
// EPC parameters
createSGTIN96(filter:int, companyPrefix:String, itemReference:long, serialNumber:long) : SGTIN96
// Returns an SGTIN96 object for the specified
// EPC parameters
createSSSCC64(filter:int, companyPrefix:String, serialNumber:long) : SSCC64
// Returns an SSCC64 object for the specified
// EPC parameters
createSSSCC96(filter:int, companyPrefix:String, serialNumber:long) : SSCC96
// Returns an SSCC96 object for the specified
// EPC parameters
createSGLN64(filter:int, companyPrefix:String, locationReference:long, serialNumber:long) : SGLN64
// Returns an SGLN64 object for the specified
// EPC parameters
createSGLN96(filter:int, companyPrefix:String, locationReference:long, serialNumber:long) : SGLN96
// Returns an SGLN96 object for the specified
// EPC parameters
createGRAI64(filter:int, companyPrefix:String, assetType:long, serialNumber:long) : GRAI64
// Returns an GRAI64 object for the specified
// EPC parameters
createGRAI96(filter:int, companyPrefix:String, assetType:long, serialNumber:long) : GRAI96
// Returns an GRAI96 object for the specified
// EPC parameters
createGIAI64(filter:int, companyPrefix:String, itemAssetReference:long) : GIAI64
// Returns an GIAI64 object for the specified
// EPC parameters
createGIAI96(filter:int, companyPrefix:String, itemAssetReference:long) : GIAI96
// Returns an GIAI96 object for the specified
// EPC parameters
createGID64I(generalManagerNumber:long, objectClass:long, serialNumber:long) : GID64I
// Returns an GID64I object for the specified
// EPC parameters
createGID96(generalManagerNumber:long, objectClass:long, serialNumber:long) : GID96
// Returns an GID96 object for the specified
// EPC parameters
createDOD64(filter:int, cageCode:String, serialNumber:long) : DOD64
// Returns an DOD64 object for the specified
// EPC parameters
createDOD96(filter:int, cageCode:String, serialNumber:long) : DOD96
// Returns an DOD96 object for the specified
// EPC parameters
createBarcode(digits:int, barcode:long) : Barcode
// Returns a Barcode object for the specified
// barcode parameters
createStackLight(stackLightData:long) : StackLight
// Returns a StackLight object for the
// specified stacklight parameters
create(tagType:String, fieldValueList:List) : EPC
// Returns an EPC object for the specified
// tag type and list of field values

com.connecterra.ale.epc.EPC Class

ALE EPC API UML Diagram

The EPC class is a base abstract class for all EPC derivations. This class contains the following methods:

EPC
createInstance(uri:URI) : EPC // Returns an EPC object for the specified
// URI
createInstance(high:long, low:long) : EPC // Returns an EPC object for
// the specified high and low long values
getScheme() : Scheme // Returns the Scheme object for this EPC
getTypeString() : String // Returns the type string of this EPC
getBitSize() : int // Returns the bit size of this EPC
getHeader() : int // Returns the bit size of this EPC
getURI() : URI // Returns the URI of this EPC
getHex() : String // Returns the hex string of this EPC
getTagURI() : URI // Returns the tag URI of this EPC
getCanonicalURI() : URI // Returns the canonical URI of this EPC
getPureIdentityURI() : URI // Returns the pure identity URI of this EPC
getRawHexURI() : URI // Returns the raw hex URI of this EPC
getRawDecimalURI() : URI // Returns the raw decimal URI of this EPC
getLongArray() : long[] // Returns the long array for this EPC
getHighValue() : long // Returns the high long value of this EPC
getLowValue() : long // Returns the low long value of this EPC
setTDSVersion(version:String) : void // Sets the specified TDS (Tag Data
// Standard) version
getTDSVersion() : TDSVersion // Returns the TDS version
dump() : String // Returns a dump of this EPC object
toString() : String // Returns a string representation of this EPC
hashCode() : int // Returns the hashcode for this EPC
equals(object:Object) : boolean // Indicates whether or not the specified
// object equals this EPC

EPC Derivation Classes

For details on the EPC derivation classes, see the API references listed in Related Documentation.

com.connecterra.ale.epchelpers Package

This package contains the helper classes used with EPC processing.

Figure 3-10 illustrates the relationships among the classes and interfaces

Figure 3-10 EPC Helper API UML Diagram

EPC Helper API UML Diagram

com.connecterra.ale.epchelpers.EPCIndexTableLoader Class

EPC Helper API UML Diagram

The EPCIndexTableLoader class provides the ability to load EPC index entries into the company prefix table. This class contains the following methods:

EPCIndexTableLoader
loadFromURLs(urls:List) // Loads EPC index entries from the specified
// list of URLs

com.connecterra.ale.epchelpers.CompanyPrefixTable Class

EPC Helper API UML Diagram

The CompanyPrefixTable class provides the ability to get and add company prefix table entries from the company prefix table. This class contains the following methods:

CompanyPrefixTable
getCompanyPrefix(index:int) : TableEntry // Returns the company prefix
// table entry for the specified index
getCompanyPrefix(value:String) : TableEntry // Returns the company
// prefix table entry for the specified value
addEntry(index:int, val:String) : void // Adds the specified value at the
// specified index


  Back to Top       Previous  Next