com.alien.enterpriseRFID.tags
Class Tag

java.lang.Object
  extended bycom.alien.enterpriseRFID.tags.Tag
All Implemented Interfaces:
java.lang.Comparable

public class Tag
extends java.lang.Object
implements java.lang.Comparable

Tag object represents information about a single Tag. Each Tag must have a TagID stored in it as a String.

Version:
1.5 Nov 2010
Author:
David Krull

Field Summary
static int DIR_AWAY
           
static int DIR_STATIC
           
static int DIR_TOWARD
           
static int FOREVER
           
static int PROTO_C0
           
static int PROTO_C1G1
           
static int PROTO_C1G2
           
static int PROTO_UNKNOWN
           
static java.lang.String[] PROTOCOL_STRINGS
           
 
Constructor Summary
Tag(java.lang.String tagID)
          Constructs a Tag with the supplied TagID.
 
Method Summary
 java.lang.Object clone()
          Clones this Tag object.
 int compareTo(java.lang.Object o)
           
 int getAntenna()
          Returns the antenna that this Tag was last seen with.
 long getCRC()
          Returns this Tag's CRC as a long integer.
 int getDirection()
          Returns the apparent direction of the tag, toward or away from the antenna.
 long getDiscoverTime()
          Returns the discovery time of this Tag, as reported by the reader.
 java.lang.String[] getG2Data()
          Returns all of the additional Gen2 tag data, as an array of Strings.
 java.lang.String getG2Data(int index)
          Returns a chunk of additional Gen2 tag data, as a String.
 java.lang.String[] getG2Ops()
          Returns all of the result codes for the G2Ops actions, as an array of Strings.
 java.lang.String getG2Ops(int index)
          Returns a result from a specific G2Ops action, as a String.
 long getHostDiscoverTime()
          Returns the discovery time of this Tag, as reported by the host.
 long getHostRenewTime()
          Returns the time this Tag was last seen, as reported by the host.
 java.lang.String getPCWord()
          Returns information about a tag's Protocol Control (PC) information.
 long getPersistTime()
          Returns the PersistTime associated with this Tag.
 int getProtocol()
          Returns the protocol code for this tag.
 java.lang.String getProtocolString()
          Returns the protocol string for this tag.
static java.lang.String getProtocolString(int protocol)
          Returns the protocol string associated with the given protocol code.
 int getReceiveAntenna()
          Returns the receive antenna that this Tag was last seen with.
 int getRenewCount()
          Returns the number of times this Tag has been read.
 long getRenewTime()
          Returns the time this Tag was last seen be the reader.
 double getRSSI()
          Gets the last RSSI measurement for this tag.
 double getSmoothPosition()
          Returns the tag's position, relative to its first read.
 double getSmoothSpeed()
          Returns the averaged/smoothed speed of this tag.
 double getSpeed()
          Gets the last speed measurement for this tag.
static double getSpeedSmoothingCoefficient()
          Returns the current speed smoothing coeefficient.
 java.lang.String getTagAuth()
          Returns information about tag authentication.
 java.lang.String getTagID()
          Returns this Tag's TagID attribute.
 long getTimeToLive()
          Calculates and returns this Tag's TimeToLive value.
 int getTransmitAntenna()
          Returns the transmit antenna that this Tag was last seen with.
 java.lang.String getXPC()
          Returns information about a tag's Extended Protocol Control (XPC) information.
static double getZeroSpeedThresholdHigh()
          Returns the current high end of the zero-speed threshold.
static double getZeroSpeedThresholdLow()
          Returns the current low end of the zero-speed threshold.
 void setAntenna(int antenna)
          Sets the antenna that this Tag was last seen with.
 void setCRC(long crc)
          Sets the CRC of this Tag's TagID.
 void setDirection(int direction)
          Sets the apparent direction of the tag, toward or away from the antenna.
 void setDiscoverTime(long discoverTime)
          Sets the discovery time of this Tag, as reported by the reader.
 void setG2Data(int index, java.lang.String data)
          Stores a chunk of additional Gen2 tag data, as a String.
 void setG2Ops(int index, java.lang.String data)
          Stores a result from a specific G2Ops action.
 void setHostDiscoverTime(long hostDiscoverTime)
          Sets the discovery time of this Tag, as reported by the host.
 void setHostRenewTime(long hostRenewTime)
          Sets the time this Tag was last seen, as reported by the host.
 void setPCWord(java.lang.String pcWord)
          Stores information about a tag's Protocol Control (PC) information.
 void setPersistTime(long persistTime)
          Sets the PersistTime associated with this Tag.
 void setProtocol(int protocol)
          Sets the protocol code.
 void setProtocol(java.lang.String protoStr)
          Sets the protocol string for this tag.
 void setReceiveAntenna(int antenna)
          Sets the receive antenna that this Tag was last seen with.
 void setRenewCount(int renewCount)
          Sets the number of times this Tag has been read.
 void setRenewTime(long renewTime)
          Sets the time this Tag was last seen by the reader.
 void setRSSI(double rssi)
          Sets this tag's Return Signal Strength Indication.
 void setSpeed(double speed)
          Updates this Tag's speed measurement.
static void setSpeedSmoothingCoefficient(double speedSmoothingCoeff)
          Sets the current speed smoothing coeefficient.
 void setTagAuth(java.lang.String tagAuth)
          Stores information about tag authentication.
 void setTagID(java.lang.String tagID)
          Sets the value of this Tag's TagID attribute.
 void setTransmitAntenna(int antenna)
          Sets the transmit antenna that this Tag was last seen with.
 void setXPC(java.lang.String xpc)
          Stores information about a tag's Extended Protocol Control (XPC) information.
static void setZeroSpeedThresholdHigh(double zeroSpeedThresholdHigh)
          Sets the high end of the zero-speed threshold range.
static void setZeroSpeedThresholdLow(double zeroSpeedThresholdLow)
          Sets the low end of the zero-speed threshold range.
 java.lang.String toLongString()
          Returns a longer string representation of this Tag, including TagID, DiscoveryTime, RenewalTime, Antenna, and Count.
 java.lang.String toString()
          Returns a short string representation of this Tag.
 void updateTag(Tag newTag)
          Updates this Tag with the data from newTag.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

FOREVER

public static final int FOREVER
See Also:
Constant Field Values

PROTO_UNKNOWN

public static final int PROTO_UNKNOWN
See Also:
Constant Field Values

PROTO_C0

public static final int PROTO_C0
See Also:
Constant Field Values

PROTO_C1G1

public static final int PROTO_C1G1
See Also:
Constant Field Values

PROTO_C1G2

public static final int PROTO_C1G2
See Also:
Constant Field Values

PROTOCOL_STRINGS

public static final java.lang.String[] PROTOCOL_STRINGS

DIR_TOWARD

public static final int DIR_TOWARD
See Also:
Constant Field Values

DIR_AWAY

public static final int DIR_AWAY
See Also:
Constant Field Values

DIR_STATIC

public static final int DIR_STATIC
See Also:
Constant Field Values
Constructor Detail

Tag

public Tag(java.lang.String tagID)
Constructs a Tag with the supplied TagID. All other attributes are their default values.

Parameters:
tagID - the ID value for this Tag
Method Detail

getTagID

public java.lang.String getTagID()
Returns this Tag's TagID attribute.

Returns:
the tagID
See Also:
setTagID(String)

setTagID

public void setTagID(java.lang.String tagID)
Sets the value of this Tag's TagID attribute.

Parameters:
tagID - the Tag ID
See Also:
getTagID()

getCRC

public long getCRC()
Returns this Tag's CRC as a long integer. Note: the CRC is no longer transmitted from the reader inside tag lists, and therefore may be found to be zero.

Returns:
the CRC of this tag's ID
See Also:
setCRC(long)

setCRC

public void setCRC(long crc)
Sets the CRC of this Tag's TagID. Note: the CRC is no longer transmitted from the reader inside tag lists.

Parameters:
crc - the CRC of this tag's TagID
See Also:
getCRC()

getAntenna

public int getAntenna()
Returns the antenna that this Tag was last seen with. For multi-static readers, this is the transmit antenna.

Returns:
the antenna where this tag was last seen
See Also:
setAntenna(int)

setAntenna

public void setAntenna(int antenna)
Sets the antenna that this Tag was last seen with.

Parameters:
antenna - the antenna where this tag was last seen
See Also:
getAntenna()

getTransmitAntenna

public int getTransmitAntenna()
Returns the transmit antenna that this Tag was last seen with.

Returns:
the transmit antenna where this tag was last seen
See Also:
setTransmitAntenna(int), setReceiveAntenna(int), getReceiveAntenna()

setTransmitAntenna

public void setTransmitAntenna(int antenna)
Sets the transmit antenna that this Tag was last seen with.

Parameters:
antenna - the transmit antenna where this tag was last seen
See Also:
getTransmitAntenna(), setReceiveAntenna(int), getReceiveAntenna()

getReceiveAntenna

public int getReceiveAntenna()
Returns the receive antenna that this Tag was last seen with.

Returns:
the receive antenna where this tag was last seen
See Also:
setReceiveAntenna(int), setTransmitAntenna(int), getTransmitAntenna()

setReceiveAntenna

public void setReceiveAntenna(int antenna)
Sets the receive antenna that this Tag was last seen with.

Parameters:
antenna - the receive antenna where this tag was last seen
See Also:
getReceiveAntenna(), setTransmitAntenna(int), getTransmitAntenna()

getPersistTime

public long getPersistTime()
Returns the PersistTime associated with this Tag. This is independent of the reader's PersistTime attribute, and is used for local handling of tag persistence. A PersistTime of FOREVER means the tag will never expire.

Returns:
this Tag's persistence time
See Also:
setPersistTime(long)

setPersistTime

public void setPersistTime(long persistTime)
Sets the PersistTime associated with this Tag. This is independent of the reader's PersistTime attribute, and is used for local handling of tag persistence. A PersistTime of FOREVER means the tag will never expire.

Parameters:
persistTime - this tag's persistence time
See Also:
getPersistTime()

getDiscoverTime

public long getDiscoverTime()
Returns the discovery time of this Tag, as reported by the reader. Discovery time is the time the reader first sees a particular tag.

Returns:
the time this tag was first seen by the reader
See Also:
setDiscoverTime(long)

setDiscoverTime

public void setDiscoverTime(long discoverTime)
Sets the discovery time of this Tag, as reported by the reader. Discovery time is the time the reader first sees a particular tag.

Parameters:
discoverTime - the time this tag was first seen by the reader
See Also:
getDiscoverTime()

getHostDiscoverTime

public long getHostDiscoverTime()
Returns the discovery time of this Tag, as reported by the host. The host discovery time is the time this tag was first seen by the host. This value can be useful if the reader's internal clock is not set properly.

Returns:
the time the host first saw this tag
See Also:
setHostDiscoverTime(long)

setHostDiscoverTime

public void setHostDiscoverTime(long hostDiscoverTime)
Sets the discovery time of this Tag, as reported by the host. The host discovery time is the time this tag was first seen by the host. This value can be useful if the reader's internal clock is not set properly.

Parameters:
hostDiscoverTime - the time the host first saw this tag
See Also:
getHostDiscoverTime()

getRenewTime

public long getRenewTime()
Returns the time this Tag was last seen be the reader. RenewTime is sometimes referred to as LastSeenTime.

Returns:
the time this tag was last seen by the reader
See Also:
setRenewTime(long)

setRenewTime

public void setRenewTime(long renewTime)
Sets the time this Tag was last seen by the reader. RenewTime is sometimes referred to as LastSeenTime.

Parameters:
renewTime - the time this tag was last seen by the reader
See Also:
getRenewTime()

getHostRenewTime

public long getHostRenewTime()
Returns the time this Tag was last seen, as reported by the host. This value can be useful if the reader's clock is not set properly.

Returns:
the time the host last saw this tag
See Also:
setHostRenewTime(long)

setHostRenewTime

public void setHostRenewTime(long hostRenewTime)
Sets the time this Tag was last seen, as reported by the host. This value can be useful if the reader's clock is not set properly.

Parameters:
hostRenewTime - the time the host last saw this tag
See Also:
getHostRenewTime()

getRenewCount

public int getRenewCount()
Returns the number of times this Tag has been read. The renew count is the number of times this tag has been renewed since its discovery time. It is sometimes referred to as ReadCount.

Returns:
the tag's read count
See Also:
setRenewCount(int)

setRenewCount

public void setRenewCount(int renewCount)
Sets the number of times this Tag has been read. The renew count is the number of times this tag has been renewed since its discovery time. It is sometimes referred to as ReadCount.

Parameters:
renewCount - the tag's read count
See Also:
getRenewCount()

getProtocol

public int getProtocol()
Returns the protocol code for this tag.

Returns:
the protocol code for this tag

setProtocol

public void setProtocol(int protocol)
Sets the protocol code.

Parameters:
protocol - The protocol code to set

setProtocol

public void setProtocol(java.lang.String protoStr)
Sets the protocol string for this tag. The string must look like one of the following (case- and whitespace-insensitive):

Parameters:
protoStr - the string representation of the protocol

getProtocolString

public java.lang.String getProtocolString()
Returns the protocol string for this tag.

Returns:
the protocol string for this tag
See Also:
getProtocolString(int)

getProtocolString

public static java.lang.String getProtocolString(int protocol)
Returns the protocol string associated with the given protocol code.

Parameters:
protocol - the protocol code to convert
Returns:
the string representation of the protocol code

getTimeToLive

public long getTimeToLive()
Calculates and returns this Tag's TimeToLive value. If the tag's PersistTime elapses without the tag having been read, it is considered "inactive". The TimeToLive value represents how much of the PersistTime is left, and is calculated as follows:
    TTL = PersistTime - (ElapsedTimeSinceLastSeen)
        = PersistTime - (CurrentTime - HostRenewTime)
 
TimeToLive will always be reported as being between 0 and PersistTime.

Returns:
the time remaining before this tag is considered inactive

setSpeed

public void setSpeed(double speed)
Updates this Tag's speed measurement. If you repeatedly call this method with speed updates, the API will calculate an average of those speeds to give you data that doesn't fluctuate too much. It takes into account the time since the last measurement, so you must update the renewTime before updating the speed (milliseconds are better). The updateTag() method takes care of all of this for you.

This method also integrates successive speed measurements over time to produce a distance traveled value, smoothDistance.

Parameters:
speed - the latest speed measurement for this tag
See Also:
getSpeed(), getSmoothSpeed(), getSmoothPosition()

getSpeed

public double getSpeed()
Gets the last speed measurement for this tag. This method doesn't take into account any speed smoothing, it just returns the last actual speed measurement reported by the reader.

Returns:
the last speed measurement of this tag, in m/s
See Also:
setSpeed(double), getSmoothSpeed()

getSmoothSpeed

public double getSmoothSpeed()
Returns the averaged/smoothed speed of this tag. Repeated tag reads can produce a series of speed measurements. By continually updating this tag's current speed measurement, along with the time-stamp of each measurement (milliseconds are better), the API can perform a weighted average of the speeds, which does a good job of removing "jitter" in the measurements.

Returns:
the smoothed speed, in m/s
See Also:
setSpeed(double), getSpeed()

getSmoothPosition

public double getSmoothPosition()
Returns the tag's position, relative to its first read. Repeated tag reads can produce a series of speed measurements. By continually updating this tag's current speed measurement, along with the time-stamp of each measurement (milliseconds are better), the API can integrate the speed over time to give you an indication of how far the tag has traveled. Only motion toward or away from the antenna is detected, and the accuracy of the calculated position depends on the number and frequency of speed measurements.

Returns:
the calculated position of the tag, relative to where it was first read
See Also:
setSpeed(double), getSmoothSpeed()

setDirection

public void setDirection(int direction)
Sets the apparent direction of the tag, toward or away from the antenna. When measuring a tag's speed, you often only need to know if it is approaching or receding from the antenna, so the direction value is sufficient. The direction is specified with either +1 or -1 integer values, as defined by the DIR_TOWARD and DIR_AWAY constants.

Parameters:
direction -
See Also:
getDirection()

getDirection

public int getDirection()
Returns the apparent direction of the tag, toward or away from the antenna. When measuring a tag's speed, you often only need to know if it is approaching or receding from the antenna, so the direction value is sufficient. The direction is specified with either +1 or -1 integer values, as defined by the DIR_TOWARD and DIR_AWAY constants.

Returns:
the tag direction, toward or away from the antenna
See Also:
setDirection(int)

setG2Data

public void setG2Data(int index,
                      java.lang.String data)
Stores a chunk of additional Gen2 tag data, as a String. The reader can optionally acquire up to four separate areas of tag memory, besides the EPC code, and report them in the taglist. When storing this data, you indicate which chuck you are storing with an index (0-3).

Parameters:
index - the index (0-3) of the chunk to store
data - the String of hex-formatted data
See Also:
getG2Data(int), getG2Data()

getG2Data

public java.lang.String getG2Data(int index)
Returns a chunk of additional Gen2 tag data, as a String. The Tag class can store up to four pieces of additional data, besides the EPC code. This method allows you to retrieve one of the four, as indicated by the index value. The data returned is a hex-formatted String.

Parameters:
index - which chunk of additional Gen2 data to retrieve
Returns:
the String of hex-formatted data
See Also:
setG2Data(int, String), getG2Data()

getG2Data

public java.lang.String[] getG2Data()
Returns all of the additional Gen2 tag data, as an array of Strings. The Tag class can store up to four pieces of additional data, besides the EPC code. This method allows you to retrieve all four as an array of Strings. Each chunk of data is a hex-formatted String.

Returns:
the String array of hex-formatted data
See Also:
setG2Data(int, String), getG2Data(int)

setG2Ops

public void setG2Ops(int index,
                     java.lang.String data)
Stores a result from a specific G2Ops action. When storing this data, you indicate which G2Ops number you are storing data for, with an index (1-8). Each individual G2Ops result is acquired using the ${G2OpsN} custom taglist token, when N is the G2Ops number. The zero index indicates "all of the ops results" and is acquired using the ${G2Ops} custom taglist token.

Parameters:
index - the index (0-8) of the chunk to store
data - the String of hex-formatted data
See Also:
getG2Ops(int), getG2Ops()

getG2Ops

public java.lang.String getG2Ops(int index)
Returns a result from a specific G2Ops action, as a String. This method allows you to retrieve one of the eight possible G2Ops results, as indicated by the index value. The zero index indicates "all of the results". The data returned is a hex-formatted String.

Parameters:
index - which chunk of G2Ops results to retrieve
Returns:
the String of hex-formatted data
See Also:
setG2Ops(int, String), getG2Ops()

getG2Ops

public java.lang.String[] getG2Ops()
Returns all of the result codes for the G2Ops actions, as an array of Strings. The Tag class can store up to eight results from G2Ops actions, acquired using the ${G2OpsN} custom taglist token, when N is the number of the G2Ops. This method allows you to retrieve all eight as an array of Strings. The zero index indicates "all of the results", and is acquired with the ${G2Ops} custom token. Each chunk of data is a hex-formatted String.

Returns:
the String array of hex-formatted data
See Also:
setG2Ops(int, String), getG2Ops(int)

setRSSI

public void setRSSI(double rssi)
Sets this tag's Return Signal Strength Indication. The reader can be configured to measure the tag's RSSI on each read, and include that value in the taglist data. The RSSI can provide some idea of the tag's distance from the antenna, although many other factors can affect RSSI. RSSI is a dimensionless number between 0 and 65535.

Parameters:
rssi -
See Also:
getRSSI()

getRSSI

public double getRSSI()
Gets the last RSSI measurement for this tag. The reader can be configured to take a Return Signal Strength Indication reading on each tag read, and return this data with each tag.

Returns:
the tag's RSSI measurement
See Also:
setRSSI(double)

getSpeedSmoothingCoefficient

public static double getSpeedSmoothingCoefficient()
Returns the current speed smoothing coeefficient.

Returns:
the current speed smoothing coefficient
See Also:
setSpeedSmoothingCoefficient(double)

setSpeedSmoothingCoefficient

public static void setSpeedSmoothingCoefficient(double speedSmoothingCoeff)
Sets the current speed smoothing coeefficient. When smoothing out a tag's speed over time, the setSpeed() method uses a weighted average of the current speed and the last smoothed speed, using an exponential time factor of e^(-smoothingCoefficient*dt).

The default value is 0.05. Higher values of the smoothing coefficient give more weight to the current speed, and less weight to the historical speed.

Parameters:
speedSmoothingCoeff - the current speed smoothing coefficient
See Also:
getSpeedSmoothingCoefficient()

getZeroSpeedThresholdLow

public static double getZeroSpeedThresholdLow()
Returns the current low end of the zero-speed threshold.

See Also:
setZeroSpeedThresholdLow(double), getZeroSpeedThresholdHigh(), setZeroSpeedThresholdHigh(double)

setZeroSpeedThresholdLow

public static void setZeroSpeedThresholdLow(double zeroSpeedThresholdLow)
Sets the low end of the zero-speed threshold range. Tag speeds between the low and high zero-speed thresholds will be considered to be equal to zero. This eliminates speed "jitter" sometimes observed when a tag is stationary.

To eliminate the zero-speed threshold mechanism, set the low and high thresholds both to zero.

Parameters:
zeroSpeedThresholdLow - the low end of the zero-speed threshold range
See Also:
getZeroSpeedThresholdLow(), getZeroSpeedThresholdHigh(), setZeroSpeedThresholdHigh(double)

getZeroSpeedThresholdHigh

public static double getZeroSpeedThresholdHigh()
Returns the current high end of the zero-speed threshold.

See Also:
getZeroSpeedThresholdLow(), setZeroSpeedThresholdLow(double), setZeroSpeedThresholdHigh(double)

setZeroSpeedThresholdHigh

public static void setZeroSpeedThresholdHigh(double zeroSpeedThresholdHigh)
Sets the high end of the zero-speed threshold range. Tag speeds between the low and high zero-speed thresholds will be considered to be equal to zero. This eliminates speed "jitter" sometimes observed when a tag is stationary.

To eliminate the zero-speed threshold mechanism, set the low and high thresholds both to zero.

Parameters:
zeroSpeedThresholdHigh - the high end of the zero-speed threshold range
See Also:
getZeroSpeedThresholdLow(), setZeroSpeedThresholdLow(double), getZeroSpeedThresholdHigh()

setTagAuth

public void setTagAuth(java.lang.String tagAuth)
Stores information about tag authentication. The value includes tag manufacturer's ID code as well as a symbol showing the result of the Alien dynamic tag authentication as follows:
    + authentication succeeded
    - authentication failed

No symbol after the manufacturer's ID indicates that either the tag does not support Alien dynamic authentication or the authentication process failed to complete. If the reader was unable to retrieve manufacturer's ID code from the tag (for example, due to noise or an aborted transaction) then the TagAuth field contains the '?' symbol.

The TagAuth data is only available when using a custom taglist format and the ${AUTH} token.

Parameters:
tagAuth - the new tag authentication information
See Also:
getTagAuth()

getTagAuth

public java.lang.String getTagAuth()
Returns information about tag authentication. The reported value includes tag manufacturer's ID code as well as a symbol showing the result of the Alien dynamic tag authentication as follows:
    + authentication succeeded
    - authentication failed

No symbol after the manufacturer's ID indicates that either the tag does not support Alien dynamic authentication or the authentication process failed to complete. If the reader was unable to retrieve manufacturer's ID code from the tag (for example, due to noise or an aborted transaction) then the TagAuth field contains the '?' symbol.

The TagAuth data is only available when using a custom taglist format and the ${AUTH} token.

Returns:
the TagAuth String
See Also:
setTagAuth(String)

setPCWord

public void setPCWord(java.lang.String pcWord)
Stores information about a tag's Protocol Control (PC) information. The value includes information on the length of the EPC, and additional information such as whether the User bank has information written to it, the ISO numbering system identifier, or the EPC information bits, including a bit for tagging hazardous materials.

Additional tag information may also be found in the Extended PC (XPC) data.

The PC data is available when using a custom taglist format with the ${PCWORD} token.

Parameters:
pcWord - the new PCWord information
See Also:
getPCWord()

getPCWord

public java.lang.String getPCWord()
Returns information about a tag's Protocol Control (PC) information. The value includes information on the length of the EPC, and additional information such as whether the User bank has information written to it, the ISO numbering system identifier, or the EPC information bits, including a bit for tagging hazardous materials.

Additional tag information may also be found in the Extended PC (XPC) data.

The PC data is available when using a custom taglist format with the ${PCWORD} token.

Returns:
the PCWord String
See Also:
setPCWord(String)

setXPC

public void setXPC(java.lang.String xpc)
Stores information about a tag's Extended Protocol Control (XPC) information. Some Gen2 tags may have an additional word or two of information which are collectively referred to as the eXtended Protocol Control bits (XPC). These are defined for purposes such as identifying battery tags, indication of exceptional conditions at tags such as that they need attention (temperature too high for temperature tags, for example).

The XPC data is available when using a custom taglist format with the ${XPC} token.

Parameters:
xpc - the new XPC information
See Also:
getXPC()

getXPC

public java.lang.String getXPC()
Returns information about a tag's Extended Protocol Control (XPC) information. Some Gen2 tags may have an additional word or two of information which are collectively referred to as the eXtended Protocol Control bits (XPC). These are defined for purposes such as identifying battery tags, indication of exceptional conditions at tags such as that they need attention (temperature too high for temperature tags, for example).

The XPC data is available when using a custom taglist format with the ${XPC} token.

Returns:
the XPC String
See Also:
setXPC(String)

updateTag

public void updateTag(Tag newTag)
Updates this Tag with the data from newTag.

Parameters:
newTag - the new tag data

clone

public java.lang.Object clone()
Clones this Tag object.

Returns:
a cloned Tag

toString

public java.lang.String toString()
Returns a short string representation of this Tag. This is simply the tagID.

Returns:
the tagID of this Tag

toLongString

public java.lang.String toLongString()
Returns a longer string representation of this Tag, including TagID, DiscoveryTime, RenewalTime, Antenna, and Count.

Returns:
a full string representation of this tag

compareTo

public int compareTo(java.lang.Object o)
Specified by:
compareTo in interface java.lang.Comparable