com.atid.lib.reader

## Class ATEAReader

- java.lang.Object
- - com.atid.lib.reader.ATEAReader

- All Implemented Interfaces:
    com.atid.lib.device.IReader, ATransport.IConnectStateEventListener
  Direct Known Subclasses:
    ATx88Reader

      public abstract class ATEAReader
      extends java.lang.Object
      implements com.atid.lib.device.IReader, ATransport.IConnectStateEventListener

  The ATEAReader class is a class that controls EAD in connection with ATID's EAD equipment, receives data from EAD, and delivers it to the application program. The ATEAReader class is an abstract class that must be implemented by inheriting from ATEAReader.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static int` | `DEFALT_BATTERY_CHECK_INTERVAL`
    `protected static int` | `INFO`
    `protected ActionState` | `mAction`
    `protected ATBarcode` | `mBarcode`
    `protected int` | `mCheckBatteryInterval`
    `protected com.atid.lib.reader.device.ATDevice` | `mDevice`
    `protected com.atid.lib.util.Version` | `mDeviceVersion`
    `protected int` | `mFailCount`
    `protected boolean` | `mIsDisconnecting`
    `protected boolean` | `mIsForceBatteryGauging`
    `protected ResultCode` | `mLastError`
    `protected long` | `mLastTime`
    `protected com.atid.lib.module.rfid.hf.ATRfidHf` | `mRfidHf`
    `protected ATRfidUhf` | `mRfidUhf`
    `protected ATransport` | `mTransport`
    `protected static int` | `RETRY_COUNT`
    `protected java.lang.String` | `TAG`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ATEAReader(ATransport transport)` Creates an instance of ATEAReader.
    `ATEAReader(int sessionId, ATransport transport)` Creates an instance of ATEAReader.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addListener(IATEAReaderEventListener listener)` Adds a Listener to receive events on an instance of the ATEAReader class.
    `void` | `checkError()` Use only within the SDK.
    `void` | `clearListener()` Removes all listeners registered on an instance of the ATEAReader class.
    `boolean` | `connect()` An instance of the ATEAReader class tries to connect to the configured address
    `abstract ResultCode` | `defaultParameter()` Reset all attributes of the device to default values.
    `void` | `destroy()` Destroys an instance of the ATEAReader class and cleans up resources.
    `void` | `disconnect()` Causes an instance of the ATEAReader class to disconnect from the connected device.
    `ActionState` | `getAction()` Returns the current behavior of the device associated with an instance of the ATEAReader class.
    `java.lang.String` | `getAddress()` Returns the address of the device associated with an instance of the ATEAReader class.
    `abstract NotifyMethod` | `getAlertNotify()` Returns the alert Notify method of the instrument.
    `boolean` | `getAutoConnect()` Returns whether automatically connect to the device with the instance of the ATEAReader class.
    `abstract int` | `getAutoOffTime()` Returns the time at which the instrument automatically turns off.
    `protected ConnectState` | `getBackupState()`
    `ATBarcode` | `getBarcode()` If the ATEAReader instance supports the Barcode module, it returns an interface object that can control the Barcode module.
    `abstract int` | `getBatteryState()` Returns the state of the equipment.
    `abstract NotifyMethod` | `getButtonNotify()` Returns the button Notify method of the equipment.
    `abstract NotifyTimeType` | `getButtonNotifyTime()` Returns the button's Notify hold time.
    `abstract BuzzerState` | `getBuzzer()` Returns the buzzer operation status of the equipment.
    `int` | `getCheckInterval()` Returns the time period for checking the battery status of the device associated with an instance of the ATEAReader class.
    `ConnectType` | `getConnectType()` Returns the instance of ATEAReader associated with device.
    `boolean` | `getDeviceAttached()` Returns whether attached to the device with the instance of the ATEAReader class..
    `java.lang.String` | `getDeviceName()` Returns the name of the Device associated with an instance of the ATEAReader class.
    `DeviceType` | `getDeviceType()` ATEAReader Returns the type of Device to which the instance is connected.
    `int` | `getFullVersionHexa()` Returns the hw & firmware version of the device associated with the instance of the ATEAReader class.
    `ResultCode` | `getLastError()` Returns the result code for the last action.
    `abstract OperationMode` | `getOperationMode()` Returns the current operating mode of the instrument.
    `com.atid.lib.protocol.IProtocol` | `getProtocol()` Use only within the SDK.
    `com.atid.lib.module.rfid.hf.ATRfidHf` | `getRfidHf()` If the ATEAReader instance supports the RFID HF module, it returns an interface object that can control the RFID HF module.
    `ATRfidUhf` | `getRfidUhf()` If the ATEAReader instance supports the RFID UHF module, it returns an interface object that can control the RFID UHF module.
    `java.lang.String` | `getSerialNo()` Returns the serial number of the device.
    `int` | `getSessionId()` Returns the Session ID of the ATEAReader instance.
    `ConnectState` | `getState()` Returns the connection status of the device with the instance of the ATEAReader class.
    `abstract int` | `getStoredTagCount()` Returns the number of data stored in the device's internal memory.
    `abstract java.util.Date` | `getTime()` Returns the system time of the device.
    `ATransport` | `getTransport()` Returns an instance of the ATransport class that connects an instance of the ATEAReader class to the Device.
    `abstract boolean` | `getUseActionKey()` Returns whether to use the action of the Trigger button on the instrument.
    `java.lang.String` | `getVersion()` Returns the firmware version of the device associated with the instance of the ATEAReader class.
    `int` | `getVersionHexa()` Returns the firmware version of the device associated with the instance of the ATEAReader class.
    `abstract boolean` | `initReader()` Initializes an ATEAReader instance after the ATEAReader instance is associated with the device.
    `protected boolean` | `isEmptyRef()` Checks if an instance of the ATEAReader class is currently being referenced.
    `void` | `listen()` Allows the ATEAReader class to wait for connection until the connection is made from the device.
    `abstract ResultCode` | `loadStoredData()` Read the data stored in the device.
    `protected void` | `onReaderActionChanged(ResultCode code, ActionState action, java.lang.Object params)`
    `protected void` | `onReaderBatteryState(int batteryState, java.lang.Object params)`
    `protected void` | `onReaderKeyChanged(KeyType type, KeyState state, java.lang.Object params)`
    `protected void` | `onReaderNotificationState(NotificationState state, java.lang.Object params)`
    `protected void` | `onReaderOperationModeChanged(OperationMode mode, java.lang.Object params)`
    `protected void` | `onReaderStateChanged(ConnectState state, java.lang.Object params)`
    `protected void` | `onReaderUsbChargerChanged(UsbChargerType type, UsbChargerState state, java.lang.Object params)`
    `abstract void` | `onStateChanged(ConnectState state, java.lang.Object params)` Called when the connection state of the ATransport instance and the device changes.
    `abstract ResultCode` | `removeAllStoreadData()` Deletes all data stored in the device.
    `void` | `removeListener(IATEAReaderEventListener listener)` Removes the Listener that is listening for events on an instance of the ATEAReader class.
    `abstract ResultCode` | `reset()` Reset the device.
    `void` | `resetError()` Use only within the SDK.
    `abstract ResultCode` | `saveStoredData(StoredDataList datas)` Store tag data or barcode data on the instrument.
    `void` | `setAction(ActionState state)` ATEAReader Sets the operational state of the device associated with the instance.
    `void` | `setAddress(java.lang.String address)` Sets the address of the device to which the instance of ATEAReader is connected.
    `abstract void` | `setAlertNotify(NotifyMethod method)` Set the alert notify method for the device.
    `void` | `setAutoConnect(boolean enabled)` Sets whether automatically connect to the device with the instance of the ATEAReader class.
    `abstract void` | `setAutoOffTime(int time)` Sets the time at which the equipment automatically turns off.
    `abstract void` | `setButtonNotify(NotifyMethod method)` Set the button Notify method of the device.
    `abstract void` | `setButtonNotifyTime(NotifyTimeType time)` Set the button's Notify hold time.
    `abstract void` | `setBuzzer(BuzzerState state)` Sets the buzzer operation status of the equipment.
    `void` | `setCheckInterval(int interval)` Sets the time period for checking the battery status of the device associated with the ATEAReader class instance.
    `void` | `setDeviceName(java.lang.String name)` Sets the name of the device to which the instance of ATEAReader is connected.
    `void` | `setDeviceType(DeviceType type)` Sets the type of device to which instance of ATEAReader will be connected.
    `void` | `setForceBatteryGauging(boolean enabled)` Sets whether check battery status of the device during action associated with the ATEAReader class instance.
    `void` | `setLastError(ResultCode code)` Use only within the SDK.
    `abstract void` | `setOperationMode(OperationMode mode)` Sets the current operating mode of the instrument.
    `abstract void` | `setSerialNo(java.lang.String serialNo)` Set the serial number of the device.
    `abstract void` | `setTime(java.util.Date time)` Sets the system time of the instrument.
    `abstract void` | `setUseActionKey(boolean enabled)` Set whether or not to use the operation of the Trigger button of the equipment.
    `void` | `sleep()` An instance of the ATEAReader class is called before an active Host device goes to sleep.
    `void` | `sleep(IATEAReaderEventListener listener)` An instance of the ATEAReader class is called before an active Host device goes to sleep.
    `java.lang.String` | `toString()`
    `void` | `wakeUp()` An instance of the ATEAReader class is called when an active Host device is in the Sleep state and wakes up.
    `void` | `wakeUp(IATEAReaderEventListener listener)` An instance of the ATEAReader class is called when an active Host device is in the Sleep state and wakes up.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### INFO

          protected static final int INFO

      See Also:
        Constant Field Values

    - #### RETRY_COUNT

          protected static final int RETRY_COUNT

      See Also:
        Constant Field Values

    - #### DEFALT_BATTERY_CHECK_INTERVAL

          protected static final int DEFALT_BATTERY_CHECK_INTERVAL

      See Also:
        Constant Field Values

    - #### TAG

          protected java.lang.String TAG

    - #### mTransport

          protected ATransport mTransport

    - #### mDevice

          protected com.atid.lib.reader.device.ATDevice mDevice

    - #### mRfidUhf

          protected ATRfidUhf mRfidUhf

    - #### mRfidHf

          protected com.atid.lib.module.rfid.hf.ATRfidHf mRfidHf

    - #### mBarcode

          protected ATBarcode mBarcode

    - #### mAction

          protected volatile ActionState mAction

    - #### mDeviceVersion

          protected com.atid.lib.util.Version mDeviceVersion

    - #### mLastError

          protected ResultCode mLastError

    - #### mCheckBatteryInterval

          protected volatile int mCheckBatteryInterval

    - #### mIsForceBatteryGauging

          protected volatile boolean mIsForceBatteryGauging

    - #### mFailCount

          protected volatile int mFailCount

    - #### mLastTime

          protected volatile long mLastTime

    - #### mIsDisconnecting

          protected volatile boolean mIsDisconnecting

  - ### Constructor Detail

    - #### ATEAReader

          public ATEAReader(ATransport transport)

      Creates an instance of ATEAReader.
      Parameters:
        `transport` - ATEAReader An instance of an inherited class of the ATransport class that defines how an instance is associated with a Device.

    - #### ATEAReader

          public ATEAReader(int sessionId,
                            ATransport transport)

      Creates an instance of ATEAReader.
      Parameters:
        `sessionId` - A unique ID number for identifying instances to manage multiple instances.
        `transport` - ATEAReader An instance of an inherited class of the ATransport class that defines how an instance is associated with a Device.

  - ### Method Detail

    - #### getBackupState

          protected ConnectState getBackupState()

    - #### getSessionId

          public int getSessionId()

      Returns the Session ID of the ATEAReader instance.
      Returns:
        An integer representing the Session ID.

    - #### getTransport

          public ATransport getTransport()

      Returns an instance of the ATransport class that connects an instance of the ATEAReader class to the Device.
      Returns:
        An instance of the ATransport class that defines a connection with a Device.

    - #### getDeviceType

          public DeviceType getDeviceType()

      ATEAReader Returns the type of Device to which the instance is connected.
      Specified by:
        `getDeviceType` in interface `com.atid.lib.device.IReader`
      Returns:
        The DeviceType enumeration indicating the type of device.

    - #### setDeviceType

          public void setDeviceType(DeviceType type)

      Sets the type of device to which instance of ATEAReader will be connected.
      Specified by:
        `setDeviceType` in interface `com.atid.lib.device.IReader`
      Parameters:
        `type` - The DeviceType enumeration indicating the type of device.

    - #### getDeviceName

          public java.lang.String getDeviceName()

      Returns the name of the Device associated with an instance of the ATEAReader class.
      Specified by:
        `getDeviceName` in interface `com.atid.lib.device.IReader`
      Returns:
        A string representing the name of the Device.

    - #### setDeviceName

          public void setDeviceName(java.lang.String name)

      Sets the name of the device to which the instance of ATEAReader is connected.
      Specified by:
        `setDeviceName` in interface `com.atid.lib.device.IReader`
      Parameters:
        `name` - A string representing the name of the Device.

    - #### getAddress

          public java.lang.String getAddress()

      Returns the address of the device associated with an instance of the ATEAReader class.
      Specified by:
        `getAddress` in interface `com.atid.lib.device.IReader`
      Returns:
        A string representing the address of the Device.

    - #### setAddress

          public void setAddress(java.lang.String address)

      Sets the address of the device to which the instance of ATEAReader is connected.
      Specified by:
        `setAddress` in interface `com.atid.lib.device.IReader`
      Parameters:
        `address` - A string representing the address of the Device.

    - #### getConnectType

          public ConnectType getConnectType()

      Returns the instance of ATEAReader associated with device.
      Returns:
        A ConnectType enumeration that indicates how the device is connected.

    - #### getState

          public ConnectState getState()

      Returns the connection status of the device with the instance of the ATEAReader class.
      Returns:
        A ConnectState enumeration indicating the connection status of the ATEAReader.

    - #### setAutoConnect

          public void setAutoConnect(boolean enabled)

      Sets whether automatically connect to the device with the instance of the ATEAReader class. Supported the usb interface only.
      Parameters:
        `enabled` - A boolean specifying whether the device automatically connect.

    - #### getAutoConnect

          public boolean getAutoConnect()

      Returns whether automatically connect to the device with the instance of the ATEAReader class. Supported the usb interface only.
      Returns:
        Returns true if enabled the automatically connection, false if it disabled.

    - #### getDeviceAttached

          public boolean getDeviceAttached()

      Returns whether attached to the device with the instance of the ATEAReader class.. Supported the usb interface only.
      Returns:
        Returns true if attached the usb device, false if it detached.

    - #### getVersion

          public java.lang.String getVersion()

      Returns the firmware version of the device associated with the instance of the ATEAReader class.
      Specified by:
        `getVersion` in interface `com.atid.lib.device.IReader`
      Returns:
        A string representing the F / W version.

    - #### getVersionHexa

          public int getVersionHexa()

      Returns the firmware version of the device associated with the instance of the ATEAReader class.
      Specified by:
        `getVersionHexa` in interface `com.atid.lib.device.IReader`
      Returns:
        A hex-decimal representing the F / W version.

    - #### getFullVersionHexa

          public int getFullVersionHexa()

      Returns the hw & firmware version of the device associated with the instance of the ATEAReader class.
      Specified by:
        `getFullVersionHexa` in interface `com.atid.lib.device.IReader`
      Returns:
        A hex-decimal representing the HW & F/W version.

    - #### getAction

          public ActionState getAction()

      Returns the current behavior of the device associated with an instance of the ATEAReader class.
      Specified by:
        `getAction` in interface `com.atid.lib.device.IReader`
      Returns:
        An ActionState enumeration that indicates the operational state of the device.

    - #### setAction

          public void setAction(ActionState state)

      ATEAReader Sets the operational state of the device associated with the instance. The getAction Method is a method used inside the SDK and should not be used by the user.
      Specified by:
        `setAction` in interface `com.atid.lib.device.IReader`
      Parameters:
        `state` - An ActionState enumeration indicating the state of the action.

    - #### getCheckInterval

          public int getCheckInterval()

      Returns the time period for checking the battery status of the device associated with an instance of the ATEAReader class.
      Returns:
        An integer representing the device's battery check cycle time. The unit is ms

    - #### setCheckInterval

          public void setCheckInterval(int interval)

      Sets the time period for checking the battery status of the device associated with the ATEAReader class instance.
      Parameters:
        `interval` - Integer type indicating the battery check cycle time of the equipment. The unit is ms.

    - #### setForceBatteryGauging

          public void setForceBatteryGauging(boolean enabled)

      Sets whether check battery status of the device during action associated with the ATEAReader class instance. This function must not use.
      Parameters:
        `enabled` - A boolean specifying whether battery check cycle during device action ( ex) rfid inventory ).

    - #### checkError

          public void checkError()

      Description copied from interface: `com.atid.lib.device.IReader`
      Use only within the SDK.
      Specified by:
        `checkError` in interface `com.atid.lib.device.IReader`

    - #### resetError

          public void resetError()

      Description copied from interface: `com.atid.lib.device.IReader`
      Use only within the SDK.
      Specified by:
        `resetError` in interface `com.atid.lib.device.IReader`

    - #### getLastError

          public ResultCode getLastError()

      Description copied from interface: `com.atid.lib.device.IReader`
      Returns the result code for the last action.
      Specified by:
        `getLastError` in interface `com.atid.lib.device.IReader`
      Returns:
        The ResultCode enumeration indicating the result of the operation.

    - #### setLastError

          public void setLastError(ResultCode code)

      Description copied from interface: `com.atid.lib.device.IReader`
      Use only within the SDK.
      Specified by:
        `setLastError` in interface `com.atid.lib.device.IReader`

    - #### getProtocol

          public com.atid.lib.protocol.IProtocol getProtocol()

      Description copied from interface: `com.atid.lib.device.IReader`
      Use only within the SDK.
      Specified by:
        `getProtocol` in interface `com.atid.lib.device.IReader`

    - #### getRfidUhf

          public ATRfidUhf getRfidUhf()

      If the ATEAReader instance supports the RFID UHF module, it returns an interface object that can control the RFID UHF module.
      Returns:
        Returns an instance of ATRfidUhf.

    - #### getRfidHf

          public com.atid.lib.module.rfid.hf.ATRfidHf getRfidHf()

      If the ATEAReader instance supports the RFID HF module, it returns an interface object that can control the RFID HF module.
      Returns:
        Returns an instance of ATRfidHf.

    - #### getBarcode

          public ATBarcode getBarcode()

      If the ATEAReader instance supports the Barcode module, it returns an interface object that can control the Barcode module.
      Returns:
        Returns an instance of ATBarcode.

    - #### destroy

          public void destroy()

      Destroys an instance of the ATEAReader class and cleans up resources.

    - #### wakeUp

          public void wakeUp()

      An instance of the ATEAReader class is called when an active Host device is in the Sleep state and wakes up.

    - #### wakeUp

          public void wakeUp(IATEAReaderEventListener listener)

      An instance of the ATEAReader class is called when an active Host device is in the Sleep state and wakes up.
      Parameters:
        `listener` - An instance of IATEAReaderEventListener to receive events when an instance of ATEAReader is woken up.

    - #### sleep

          public void sleep()

      An instance of the ATEAReader class is called before an active Host device goes to sleep.

    - #### sleep

          public void sleep(IATEAReaderEventListener listener)

      An instance of the ATEAReader class is called before an active Host device goes to sleep.
      Parameters:
        `listener` - An instance of IATEAReaderEventListener to unblock events when an instance of ATEAReader is sleeping.

    - #### isEmptyRef

          protected boolean isEmptyRef()

      Checks if an instance of the ATEAReader class is currently being referenced.
      Returns:
        ATEAReader Integer representing the number of instances referenced.

    - #### addListener

          public void addListener(IATEAReaderEventListener listener)

      Adds a Listener to receive events on an instance of the ATEAReader class. Events are only notified to the last added Listener.
      Parameters:
        `listener` - An instance of IATEAReaderEventListener to receive events fired by instances of the ATEAReader class.

    - #### removeListener

          public void removeListener(IATEAReaderEventListener listener)

      Removes the Listener that is listening for events on an instance of the ATEAReader class. If the Listener being deleted is the last event, the Listener that was added before the last is notified of the event.
      Parameters:
        `listener` - An instance of IATEAReaderEventListener that is receiving events fired by instances of the ATEAReader class.

    - #### clearListener

          public void clearListener()

      Removes all listeners registered on an instance of the ATEAReader class.

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### connect

          public boolean connect()

      An instance of the ATEAReader class tries to connect to the configured address
      Returns:
        Returns true if the connection attempt is successful, false on failure.

    - #### listen

          public void listen()

      Allows the ATEAReader class to wait for connection until the connection is made from the device.

    - #### disconnect

          public void disconnect()

      Causes an instance of the ATEAReader class to disconnect from the connected device.

    - #### initReader

          public abstract boolean initReader()

      Initializes an ATEAReader instance after the ATEAReader instance is associated with the device.
      Returns:
        Returns true if successful, false against failure

    - #### reset

          public abstract ResultCode reset()

      Reset the device.
      Returns:
        The ResultCode enumeration indicating the result of the method's operation.

    - #### defaultParameter

          public abstract ResultCode defaultParameter()

      Reset all attributes of the device to default values. ATD100 is not supported.
      Returns:
        The ResultCode enumeration indicating the result of the method's operation.

    - #### loadStoredData

          public abstract ResultCode loadStoredData()

      Read the data stored in the device. ATS100 or ATD100 is not supported.
      Returns:
        The ResultCode enumeration indicating the result of the method's operation.

    - #### saveStoredData

          public abstract ResultCode saveStoredData(StoredDataList datas)

      Store tag data or barcode data on the instrument. ATS100 or ATD100 is not supported.
      Parameters:
        `datas` - An instance of StoredDataList that maintains a list of data to store.
      Returns:
        The ResultCode enumeration indicating the result of the method's operation.

    - #### removeAllStoreadData

          public abstract ResultCode removeAllStoreadData()

      Deletes all data stored in the device. ATS100 or ATD100 is not supported.
      Returns:
        The ResultCode enumeration indicating the result of the method's operation.

    - #### getOperationMode

          public abstract OperationMode getOperationMode()
                                                  throws ATException

      Returns the current operating mode of the instrument.
      Returns:
        An OperationMode enum indicating the operating mode of the device.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setOperationMode

          public abstract void setOperationMode(OperationMode mode)
                                         throws ATException

      Sets the current operating mode of the instrument. Only ATD100 is supported Normal Operation Mode.
      Parameters:
        `mode` - An OperationMode enum indicating the operating mode of the device.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getBuzzer

          public abstract BuzzerState getBuzzer()
                                         throws ATException

      Returns the buzzer operation status of the equipment. RF Prisma equipment only
      Returns:
        To specify the status of the equipment's buzzer BuzzerState enumeration.
      Throws:
        `ATException` - Sets or returns the data for the equipment fails, the data poked ATException exception occurs.

    - #### setBuzzer

          public abstract void setBuzzer(BuzzerState state)
                                  throws ATException

      Sets the buzzer operation status of the equipment. RF Prisma equipment only
      Parameters:
        `state` - To specify the status of the buzzer BuzzerState enumeration.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getUseActionKey

          public abstract boolean getUseActionKey()
                                           throws ATException

      Returns whether to use the action of the Trigger button on the instrument. ATD100 is not supported.
      Returns:
        Returns true if the instrument's trigger button is in use, false if not.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setUseActionKey

          public abstract void setUseActionKey(boolean enabled)
                                        throws ATException

      Set whether or not to use the operation of the Trigger button of the equipment. ATD100 is not supported.
      Parameters:
        `enabled` - A boolean specifying whether to use the trigger button.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getBatteryState

          public abstract int getBatteryState()
                                       throws ATException

      Returns the state of the equipment.
      Returns:
        This is an integer type that specifies the battery status of the device from 0 to 4 in 5 steps.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getAutoOffTime

          public abstract int getAutoOffTime()
                                      throws ATException

      Returns the time at which the instrument automatically turns off.
      Returns:
        This is an integer that indicates the time that the device is turned off automatically.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setAutoOffTime

          public abstract void setAutoOffTime(int time)
                                       throws ATException

      Sets the time at which the equipment automatically turns off.
      Parameters:
        `time` - An integer that indicates how long the device will automatically turn itself off. The time unit is specified in seconds. If you set the time to 0, the instrument will not turn off automatically.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getTime

          public abstract java.util.Date getTime()
                                          throws ATException

      Returns the system time of the device. ATS100 or ATD100 is not supported.
      Returns:
        An instance of Date representing the current date and time on the device.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setTime

          public abstract void setTime(java.util.Date time)
                                throws ATException

      Sets the system time of the instrument. ATS100 or ATD100 is not supported.
      Parameters:
        `time` - An instance of Date representing the current date and time on the device.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSerialNo

          public java.lang.String getSerialNo()
                                       throws ATException

      Returns the serial number of the device.
      Returns:
        A string representing the serial number of the device.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setSerialNo

          public abstract void setSerialNo(java.lang.String serialNo)
                                    throws ATException

      Set the serial number of the device.
      Parameters:
        `serialNo` - A string representing the serial number of the device.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getStoredTagCount

          public abstract int getStoredTagCount()
                                         throws ATException

      Returns the number of data stored in the device's internal memory. ATS100 or ATD100 is not supported.
      Returns:
        An integer representing the number of data stored in the internal memory.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getButtonNotifyTime

          public abstract NotifyTimeType getButtonNotifyTime()
                                                      throws ATException

      Returns the button's Notify hold time.
      Returns:
        NotifyTimeType enumeration that indicates the time that the device keeps Notify.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setButtonNotifyTime

          public abstract void setButtonNotifyTime(NotifyTimeType time)
                                            throws ATException

      Set the button's Notify hold time.
      Parameters:
        `time` - A NotifyTimeType enumeration that specifies the duration of the button's Notify retention.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getButtonNotify

          public abstract NotifyMethod getButtonNotify()
                                                throws ATException

      Returns the button Notify method of the equipment. ATS100 is not supported light function. ATD100 is not supported vibration function.
      Returns:
        The NotifyMethod enumeration representing the button Notify method.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setButtonNotify

          public abstract void setButtonNotify(NotifyMethod method)
                                        throws ATException

      Set the button Notify method of the device. ATS100 is not supported light function. ATD100 is not supported vibration function.
      Parameters:
        `method` - The NotifyMethod enumeration that specifies the button Notify method.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getAlertNotify

          public abstract NotifyMethod getAlertNotify()
                                               throws ATException

      Returns the alert Notify method of the instrument. ATS100 is not supported light function. ATD100 is not supported vibration function.
      Returns:
        Warning The NotifyMethod enumeration that specifies the Notify method.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setAlertNotify

          public abstract void setAlertNotify(NotifyMethod method)
                                       throws ATException

      Set the alert notify method for the device. ATS100 is not supported light function. ATD100 is not supported vibration function.
      Parameters:
        `method` - Warning The NotifyMethod enumeration that specifies the Notify method.
      Throws:
        `ATException` - An ATException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### onStateChanged

          public abstract void onStateChanged(ConnectState state,
                                              java.lang.Object params)

      Description copied from interface: `ATransport.IConnectStateEventListener`
      Called when the connection state of the ATransport instance and the device changes.
      Specified by:
        `onStateChanged` in interface `ATransport.IConnectStateEventListener`
      Parameters:
        `state` - A ConnectState enumeration that indicates the device and its connection status.
        `params` - This parameter is used to transmit additional information that is generated when the device and connection are changed.

    - #### onReaderStateChanged

          protected void onReaderStateChanged(ConnectState state,
                                              java.lang.Object params)

    - #### onReaderActionChanged

          protected void onReaderActionChanged(ResultCode code,
                                               ActionState action,
                                               java.lang.Object params)

    - #### onReaderOperationModeChanged

          protected void onReaderOperationModeChanged(OperationMode mode,
                                                      java.lang.Object params)

    - #### onReaderBatteryState

          protected void onReaderBatteryState(int batteryState,
                                              java.lang.Object params)

    - #### onReaderKeyChanged

          protected void onReaderKeyChanged(KeyType type,
                                            KeyState state,
                                            java.lang.Object params)

    - #### onReaderUsbChargerChanged

          protected void onReaderUsbChargerChanged(UsbChargerType type,
                                                   UsbChargerState state,
                                                   java.lang.Object params)

    - #### onReaderNotificationState

          protected void onReaderNotificationState(NotificationState state,
                                                   java.lang.Object params)