Adapter Development Kit 9.12 | webMethods Adapter Development Kit Documentation | webMethods Adapter Development Kit Installation and User’s Documentation | Polling Notifications | Polling Notification Classes | Polling Notification Implementation Classes
 
Polling Notification Implementation Classes
Create a polling notification service by extending com.wm.adk.notification.WmPollingNotification base class . You must override the following base class methods in your WmPollingNotification implementation class:
Method
Description
fillWmTemplateDescriptor
Modifies how metadata parameters are handled during data entry similar to the WmAdapterService.fillWmTemplateDescriptor method. Failing to override this method results in a runtime error. For more information, see WmTemplateDescriptor Interface.
runNotification
Receives no input and returns results by calling the WmAsynchronousNotification.doNotify method, and passing it a WmRecord instance that must conform to the output signature of the polling notification node. For more information, see Specifying Notification Signatures (Document Type). The WmRecord is constructed in exactly the same way it is constructed for adapter services. For more information, see Adapter Service Execution.
doNotify
The WmAsynchronousNotification class provides two forms of doNotify method:
1. Process the notification Exactly Once
public void doNotify(WmRecord rec, String msgID)
Receives two input parameters: WmRecord object, and String object for message ID. Provides a resource specific msgID value with each notification record:
*The adapter implementation must guarantee that the value of msgID is unique and constant for each notification event.
*A notification event is defined as any activity on the adapter resource that causes the WmPollingNotification.runNotification implementation to call WmAsynchronousNotification.doNotify.
*The msgID is never duplicated for different notification events, but the msgID is the same if the same notification event is retrieved multiple times from the adapter resource, even in a failure-recovery scenario.
Integration Server guarantees that msgID values generated by different notification nodes are unique. This is accomplished by combining the msgID value provided by the adapter with a GUID created by Integration Server, and associated with the notification node when it is created.
Note:
A fixed number of characters are available in Integration Server to hold a notification ID. Of these, the WmART package reserves a certain number to hold a unique ID that is inserted prior to dispatching a notification. The remaining characters are available to you when calling WmAsynchronousNotification.doNotify(WmRecord rec, String msgId). The length (number of characters) of the value in msgId must not exceed a particular limit. Call the WmAsynchronousNotification.adapterMaxMessageIdLen method to determine this limit. For more information, see the Javadoc.
2. Process the notification
public void doNotify(WmRecord rec)
Receives one input parameters: WmRecord object.