Adapter for Salesforce 8.2 | webMethods Adapter for Salesforce Documentation | webMethods Adapter for Salesforce Installation and User’s Documentation | Adapter Package Management | Using the Adapter in a Clustered Environment | Polling Notification Support in Integration Server Clusters | Configuring Polling Notifications in Standby or Distributed Mode | Settings
 
Settings
All settings that pertain to clustered polling notifications are ignored or disabled until you include the server in a cluster. All settings have default values. There are three levels of settings:
*Server-Wide Settings. The server-wide settings are common to all webMethods 6.x and later adapters running on Integration Server. The server uses the settings in an algorithm that determines whether a polling notification instance should be considered "dead." For more information, see the webMethods Integration Server Clustering Guide for your release.
Server-wide Setting Name
Values and Description
watt.art.clusteredPollingNotification. keepAliveInterval
An integer value specifying the frequency (in milliseconds) at which a notification instance tells the cluster it is still alive.
watt.art.clusteredPollingNotification. keepAliveExpireTimeout
An integer value specifying the number of milliseconds that a keepAliveInterval setting can be late before it is assumed that an instance has failed. Default: The value of keepAliveInterval.
Note:
You should allow for "clock drift." For details, see Clock Synchronization.
*Adapter-Specific Settings. The adapter-specific settings apply to all the polling notifications in your Adapter for Salesforce.
Adapter for Salesforce generates a configuration file for your polling notification templates. This file, WmSalesforceAdapter\config\clusterProperties.cnf, is an XML file that contains a pair of settings (callbackScheme and runtimeModeLimit) for each polling notification template defined in your adapter. For example, if you created notifications using the notification templates UpsertNotification and DeleteNotification, you will see these settings for each template. For an example file, see the example Adapter for Salesforce clusterProperties.cnf file following the table.
The available values for these settings are as follows:
Adapter-specific Setting Name
Values and Description
callbackScheme
Specifies the run-time operations the adapter should handle for the notifications, such as enabling and disabling the notifications.
*0: No callback coordination.
*1: Default. Coordinates the enable and disable operations.
*2: Coordinates the startup and shutdown operations.
*3: Coordinates the enable, disable, startup, and shutdown operations.
Important:
This value must always be 1 for Adapter for Salesforce.
runtimeModeLimit
Specifies the scheduling mode for the notifications. The value you assign to this setting determines which modes the adapter users may select in the Coordination Mode field on the Polling Notification Schedule page (see Notification-Specific Settings in Settings).
*disable: Prevents the adapter user from selecting Standby or Distribute modes on the adapter's Polling Notification Schedule page.
*standby: Default. Enables the adapter user to select either the Disable mode or the Standby mode.
*distribute: Enables the adapter user to select either the Disable, Standby or Distribute mode.
For more information, see Standby Mode and Distributed Mode.
Example Adapter for Salesforce clusterProperties.cnf File
The following example clusterProperties.cnf file for Adapter for Salesforce shows the entries for all the possible templates associated with Adapter for Salesforce polling notifications. This example file enables all notifications to be configured with the Coordination Mode field set to distribute.
<?xml version="1.0"?>
<clusterProps>
<pollingNotifications>
<callbackScheme>1</callbackScheme>
<runtimeModeLimit>distribute</runtimeMo deLimit> <template
className="com.w m.adapter.wmsalesforce.notification.DeleteNotificatio n">
<callb ackScheme>1</callbackScheme>
<runtimeModeLimit>distribute</runtimeModeLimit>
< /template>
<template className="com.w
m.adapter.wmsalesforce.notification.UpsertNotificatio n">
<callb ackScheme>1</callbackSche me>
<runtimeModeLimi t>distribute</runtimeModeLimit>
</t emplate>
</pollingNotific ations>
<lis tenerNotifications>
<callbackScheme>1</callbackS cheme>
</list enerNotifications>
<listeners>
<runtimeModeLimit>distribute</runtimeModeLimit>
</listeners>
</clusterProps>
*Notification-Specific Settings. The notification-specific settings enable you to configure certain scheduling aspects of polling notifications on an individual basis.
Two new fields appear on the Polling Notification Schedule page: Coordination Mode and Max Process Time. These fields become editable when you add your Integration Server to a cluster.
*The Coordination Mode field controls the coordination of the notification schedules across the cluster. Depending on the value you assigned to the runtimeModeLimit setting (see Adapter-Specific Settings in Settings), the adapter user can select some combination of the following values in the Coordination Mode field as follows:
This runtimeModeLimit value...
Displays these values in the Coordination Mode field...
disable
disable
standby
disable and standby
distribute
disable, standby, and distribute
*The Max Process Time field enables other notifications to determine whether a currently executing notification should be considered to be "dead." If a notification executes a scheduled run and it fails to complete before the Max Process Time, then another notification instance will consider it dead; this other notification will assume control and execute a scheduled run. The default value is equal to the value in the watt.art.clusteredPollingNotification.keepAliveExpireTimeout setting in the server.cnf file.
If the Max Process Time setting is not high enough, you may encounter a situation in which a notification is executing normally but another notification assumes it is "dead." When the original notification completes, it will recognize that it was prematurely considered "dead." In this case, the system logs an Illegal Overlap exception with message id [ART.116.3715]. If this exception occurs, increase your Max Process Time setting.
When setting the value ofMax Process Time, you should allow for "clock drift." For details, see Clock Synchronization.
If you want to update the schedule and settings of a notification in a cluster, all notification instances in the cluster must be suspended or disabled for the changes to be saved. If any notification instance in the cluster is enabled, the adapter will not save the updates.
If all instances of a notification in the cluster do not have the same settings, the notification that became active first will have precedence.