com.apama.position.tracker.generic
Event GenericTrackerExtensionInterface


The Generic Tracker Extension Interface is provided to allow applications to override/extend the key functionality provided by the Generic Position Tracker implementation. Such as the creation, configuration, and deletion of Position Tracker instances.

This interface should not be created directly by applications. Instead, this interface is created by the Generic Tracker Extension Factory object (com.apama.position.tracker.generic.GenericTrackerExtensionFactory) when a new Position Tracker has been registered with the Position Service.
See Also:
com.apama.position.tracker.generic.GenericTrackerExtensionFactory - The factory object used to create an instance of the GenericTracker Extension Interface

Member Summary
 action<integer, integer, com.apama.position.PositionConfigParams, action<integer, integer, com.apama.position.PositionConfigParams, boolean, string > >createInstance

This action will be called when the Position Service Manager needs to create a new instance of a Position Tracker that has been registered with it.
 action<integer, integer, action<integer, integer, boolean, string > >deleteInstance

This action will be called when the Position Service Manager needs to delete an instance of the Position Tracker.
 action<action<boolean, string > >deleteAllInstances

This action will be called when the Position Service Manager needs to delete all instances of the Position Tracker.
 action<integer, integer, com.apama.position.Position, boolean, com.apama.position.PositionConfigParams, action<integer, integer, boolean, boolean, string > >positionExternallyUpdated

This action will be called when a Subscription Manager Interface requests that a subscriptions position should be adjusted, either by an absolute or relative amount.
 action<integer, integer, action<integer, integer, boolean, string > >positionExternallyReset

This action will be called when a Subscription Manager Interface requests that a subscriptions position should be reset.
 action<dictionary<string, string >, action< > >onConfigureService

This callback action is called when the Position Tracker requires configuration during Service Framework initialisation.
 action<com.apama.position.PositionConfigSchema > returns com.apama.position.PositionConfigSchemagetConfigSchema

This action is called when the Position Tracker is being registered. The configuration schema of the Generic Tracker implementation is provided which can then be extended/modified by a User-implementation if required.
 
Member Detail

createInstance

action<integer, integer, com.apama.position.PositionConfigParams, action<integer, integer, com.apama.position.PositionConfigParams, boolean, string > > createInstance
This action will be called when the Position Service Manager needs to create a new instance of a Position Tracker that has been registered with it.

A unique subscription ID is provided for this instance, however, if the Position Tracker implementation decides that an existing instance already exists that matches this creation request, the subscriptionId of the existing instance should be returned in the created callback.


param requestId A unique requestId that must be used when the completion callback is called
param subscriptionId The new instance ID for this Position Tracker instance.
param config A PositionConfigParams object containing any configuration information for this Position Tracker
param cbCreated This callback should be called by the Position Tracker implementation after it has completed the creation of the Position Tracker instance. This allows the creation of the Position Tracker instance to be asynchronous

deleteAllInstances

action<action<boolean, string > > deleteAllInstances
This action will be called when the Position Service Manager needs to delete all instances of the Position Tracker.


param cbAllDeleted This callback should be called by the Position Tracker implementation after it has completed the deletion of all the Position Tracker instances. This allows the deletion of the Position Tracker instances to be asynchronous

deleteInstance

action<integer, integer, action<integer, integer, boolean, string > > deleteInstance
This action will be called when the Position Service Manager needs to delete an instance of the Position Tracker.


param requestId A unique requestId that must be used when the completion callback is called
param subscriptionId The instance ID for the Position Tracker instance to delete
param cbDeleted This callback should be called by the Position Tracker implementation after it has completed the deletion of the Position Tracker instance. This allows the deletion of the Position Tracker instance to be asynchronous

getConfigSchema

action<com.apama.position.PositionConfigSchema > returns com.apama.position.PositionConfigSchema getConfigSchema
This action is called when the Position Tracker is being registered. The configuration schema of the Generic Tracker implementation is provided which can then be extended/modified by a User-implementation if required.


param configSchema The com.apama.position.PositionConfigSchema object containing information about the configuration parameters that this Position Tracker implementation supports
return The com.apama.position.PositionConfigSchema object containing information about the configuration parameters that this Position Tracker implementation supports

onConfigureService

action<dictionary<string, string >, action< > > onConfigureService
This callback action is called when the Position Tracker requires configuration during Service Framework initialisation.

This action callback can be used, for example, to create any Configuration Store tables required, or recover any persisted information.


param configuration A dictionary of configuration items from the Service Framework initialisation
param cbCompleted A callback to be called once configuration has completed

positionExternallyReset

action<integer, integer, action<integer, integer, boolean, string > > positionExternallyReset
This action will be called when a Subscription Manager Interface requests that a subscriptions position should be reset.


param requestId The unique identifier for the request to adjust a subscriptions position
param subscriptionId The identifier of the subscription whose position should be updated
param cbResetComplete This callback must be called by the Position Tracker implementation after it has reset the position

positionExternallyUpdated

action<integer, integer, com.apama.position.Position, boolean, com.apama.position.PositionConfigParams, action<integer, integer, boolean, boolean, string > > positionExternallyUpdated
This action will be called when a Subscription Manager Interface requests that a subscriptions position should be adjusted, either by an absolute or relative amount.


param requestId The unique identifier for the request to adjust a subscriptions position
param subscriptionId The identifier of the subscription whose position should be updated
param adjustment The position adjustment to be made
param relative Indicates whether or not this is a relative or absolute adjustment
param config Any extra configuration that may be required by a specific Position Tracker for the adjustment
param cbAdjustedPosition This callback must be called by the Position Tracker implementation after it has completed making the position adjustment