com.ibm.retail.AEF.client
Class DiscountListenerProxy
java.lang.Object
|
+--java.rmi.server.RemoteObject
|
+--java.rmi.server.RemoteServer
|
+--java.rmi.server.UnicastRemoteObject
|
+--com.ibm.retail.AEF.util.AEFRemoteObject
|
+--com.ibm.retail.AEF.client.AEFEventListenerProxy
|
+--com.ibm.retail.AEF.client.DiscountListenerProxy
- All Implemented Interfaces:
- AEFListenerProxyInterface, DiscountListener, POSAppEventListener, java.rmi.Remote, java.io.Serializable
- public class DiscountListenerProxy
- extends AEFEventListenerProxy
- implements AEFListenerProxyInterface, DiscountListener
The DiscountListenerProxy provides a proxy object for remote listeners
to monitor the Discount events of its associated terminal session.
Remote proxy objects extend the appropriate RMI server classes which handle the
RMI duties for the client (so the client does not need to deal with rmi server issues).
The proxy objects also perform the role of event dispatching.
By default, the listener proxy object will perform event queuing on an AEF event thread.
This relieves the client of any "thread swapping" responsibilities and insures that the
AEF event dispatching performance is not affected by client processing. To override this
default behavior, use the setDispatchQueue() method. The proxy utilizes the
EventDispatcher for queueing event listener notification.
To use a proxy object, the client must implement the listener interface
and get the POSDataProvider object from the AEFSession to monitor. The proxy
object is then constructed passing a reference to the client and the data provider.
The proxy object performs the listener registration and forwards
all events from the data provider to the client.
- See Also:
- Sample Usage,
EventDispatcher
,
Serialized Form
Field Summary |
protected com.ibm.retail.AEF.data.POSDataProvider |
dataProvider
|
protected com.ibm.retail.AEF.event.DiscountListener |
listener
|
protected static java.lang.reflect.Method |
listenerMethod
|
Fields inherited from class com.ibm.retail.AEF.util.AEFRemoteObject |
DEFAULT_CONNECT_TIMEOUT, DEFAULT_READ_TIMEOUT |
Fields inherited from class java.rmi.server.RemoteObject |
ref |
Constructor Summary |
DiscountListenerProxy(com.ibm.retail.AEF.data.POSDataProvider dataProvider,
com.ibm.retail.AEF.event.DiscountListener listener)
Construct a DiscountListenerProxy.
|
Method Summary |
(package private) static java.lang.String |
copyright()
|
void |
discountApplied(com.ibm.retail.AEF.event.DiscountEvent evt)
A discount was applied to an item or transaction.
|
void |
removeListener()
Remove the proxy listener from the POSDataProvider. |
Methods inherited from class com.ibm.retail.AEF.util.AEFRemoteObject |
getClientSocketConnectTimeout, getClientSocketReadTimeout |
Methods inherited from class java.rmi.server.UnicastRemoteObject |
clone, exportObject, exportObject, exportObject, unexportObject |
Methods inherited from class java.rmi.server.RemoteServer |
getClientHost, getLog, setLog |
Methods inherited from class java.rmi.server.RemoteObject |
equals, getRef, hashCode, toString, toStub |
Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, wait, wait, wait |
listenerMethod
protected static java.lang.reflect.Method listenerMethod
dataProvider
protected com.ibm.retail.AEF.data.POSDataProvider dataProvider
listener
protected com.ibm.retail.AEF.event.DiscountListener listener
DiscountListenerProxy
public DiscountListenerProxy(com.ibm.retail.AEF.data.POSDataProvider dataProvider,
com.ibm.retail.AEF.event.DiscountListener listener)
throws java.rmi.RemoteException,
AEFException
- Construct a DiscountListenerProxy.
This method registers the proxy as a listener with the POSDataProvider and begins event
notification to the proxy client listener.
- Parameters:
dataProvider
- instance of POSDataProvider which is the source of eventslistener
- client listener which receives the event notification via this proxy
- Throws:
java.rmi.RemoteException
AEFException
- Among the possible AEFException error codes are:
AEFConst.NO_LISTENER_SUPPORT
copyright
static java.lang.String copyright()
removeListener
public void removeListener()
throws java.rmi.RemoteException,
AEFException
- Remove the proxy listener from the POSDataProvider. Ends notification of events.
- Specified by:
removeListener
in interface AEFListenerProxyInterface
- Throws:
java.rmi.RemoteException
AEFException
- Among the possible AEFException error codes are:
AEFConst.NO_LISTENER_SUPPORT
discountApplied
public void discountApplied(com.ibm.retail.AEF.event.DiscountEvent evt)
throws java.rmi.RemoteException
- A discount was applied to an item or transaction.
Dispatches event notification to the proxy client listener.
- Specified by:
discountApplied
in interface DiscountListener
- Parameters:
evt
- contains details of the discount
- Throws:
java.rmi.RemoteException
- if a listener can not be notified
Copyright © 2004 IBM. All Rights Reserved.
Generated: July 19 2004