com.neeve.aep
Class AepEngineDescriptor

java.lang.Object
  extended by com.neeve.root.RootObject
      extended by com.neeve.aep.AepEngineDescriptor

public final class AepEngineDescriptor
extends RootObject

An AEP engine descriptor.

This class configures an AEP engine instance and supplies methods to persist descriptors in platform configuration respositories.

Threading:
This class is not safe for concurrent access by multiple threads.

Nested Class Summary
static class AepEngineDescriptor.ChannelConfig
          Class describing configuration information for an AEP engine's channel.
 
Field Summary
static int CLUSTER_HEARTBEAT_INTERVAL_DEFAULT
          Cluster heartbeat interval default
static String GLOBAL_CHANNEL_BUS_NAME
          Name of bus used to hold global channels
 
Method Summary
 AepEngineDescriptor addBus(String busName)
          Add a bus to an engine's list of buses.
 AepEngineDescriptor addChannel(String channelDescriptor)
          Add a channel to an engine's list of channels.
 AepEngineDescriptor addChannel(String channelName, AepEngineDescriptor.ChannelConfig channelConfig)
          Add a global channel to an engine's list of channels.
 AepEngineDescriptor addChannel(String busName, String channelName, AepEngineDescriptor.ChannelConfig channelConfig)
          Add a bus specific channel to an engine's list of channels.
 AepEngineDescriptor clearBusManagerProperties(String busName)
          Clear a bus manager's configuration properties
 AepEngineDescriptor clearBusManagerProperty(String busName, String propName)
          Clear a bus manager's configuration property
 AepEngineDescriptor clearEventMultiplexerProperty(String name)
          Clear an engine's event multiplexer property.
 AepEngineDescriptor clearInboundMessageLoggingProperty(String name)
          Clear an engine's inbound message logging property.
 AepEngineDescriptor clearOutboundMessageLoggingProperty(String name)
          Clear an engine's outbound message logging property.
static AepEngineDescriptor create(String name)
          Create a default AEP engine descriptor.
 void delete()
          Delete an AEP engine descriptor from the default configuration repository.
 void delete(IConfigRepository repo)
          Delete an AEP engine descriptor from a configuration repository.
static boolean exists(IConfigRepository repo, String name)
          Checks if an AEP engine is configured in a configuration repository.
static boolean exists(String name)
          Checks if an AEP engine is configured in the default configuration repository
 int getAdaptiveCommitBatchCeiling()
          Get an engine's adaptive commit batch ceiling.
 boolean getAdministrative()
          Get whether an engine is an administrative enginel
 AepEngine.AppExceptionHandlingPolicy getAppExceptionHandlingPolicy()
          Get an engine's application exception handling policy.
 Set<String> getBuses()
          Get an engine's bus list.
 Properties getBusManagerProperties(String busName)
          Get a bus manager's configuration properties
 Set<String> getBusManagersWithConfiguration()
          Get the set of bus names that have been configured
 AepEngineDescriptor.ChannelConfig getChannelConfig(String busName, String channelName)
          Get an engine's channel configuration
 Map<String,AepEngineDescriptor.ChannelConfig> getChannels(String busName)
          Get an engine's channel list.
 int getClusterHeartbeatInterval()
          Get the cluster heartbeat interval
 boolean getDispatchTransactionStageEvents()
          Get whether an engine will dispatch transaction stage events.
 boolean getDisposeOnSend()
          Get whether AepEngine.sendMessage(com.neeve.sma.MessageChannel, com.neeve.rog.IRogMessage, java.util.Properties) disposes sent messages.
 boolean getEnableTransactionCommitSuspension()
          Get whether transaction commit suspension is enabled in an engine.
 Properties getEventMultiplexerProperties()
          Get the set of event multiplexer properties.
 String getEventMultiplexerProperty(String name)
          Get an engine's event multiplexer property.
 AepEngine.EventMultiplexerType getEventMultiplexerType()
          Get an engine's event multiplexer type.
 AepEngine.HAPolicy getHAPolicy()
          Get an engine's HA policy.
 AepEngine.InboundMessageLoggingPolicy getInboundMessageLoggingPolicy()
          Get an engine's message inbound message logging policy.
 Properties getInboundMessageLoggingProperties()
          Get the set of inbound message logging properties.
 String getInboundMessageLoggingProperty(String name)
          Get an engine's inbound message logging property.
 AepEngine.MessageBusBindingFailPolicy getMessageBusBindingFailPolicy()
          Get an engine's message bus binding fail policy.
 AepEngine.MessageHandlingPolicy getMessageHandlingPolicy()
          Get an engine's message handling policy.
 AepEngine.MessageSendExceptionHandlingPolicy getMessageSendExceptionHandlingPolicy()
          Get an engine's message send exception handling policy.
 AepEngine.MessageSendPolicy getMessageSendPolicy()
          Get an engine's message send policy.
 AepEngine.MessagingStartFailPolicy getMessagingStartFailPolicy()
          Get an engine's messaging start fail policy.
 String getName()
          Get the name of the AEP engine that this descriptor describes.
 AepEngine.OutboundMessageLoggingPolicy getOutboundMessageLoggingPolicy()
          Get an engine's message outbound message logging policy.
 Properties getOutboundMessageLoggingProperties()
          Get the set of outbound message logging properties.
 String getOutboundMessageLoggingProperty(String name)
          Get an engine's outbound message logging property.
 String getQuarantineChannel()
          Get an engine's quarantine channel
 String getQuarantineMessageKey()
          Get an engine's quarantine message key.
 boolean getReplicateSolicitedSends()
          Get whether to replicate solicited sends.
 boolean getReplicateUnsolicitedSends()
          Get whether to replicate unsolicited sends.
 AepEngine.ReplicationPolicy getReplicationPolicy()
          Get an engine's replication policy.
 boolean getSequenceUnsolicitedSends()
          Get whether unsolicited sends are sequenced.
 boolean getSequenceUnsolicitedWithSolicitedSends()
          Get whether unsolicited sends are sequenced with solicited sends.
 String getStore()
          Get the name of an engine's ODS store.
 int getStuckAlertEventThreshold()
          Get's the engine stuck alert event threshold.
static AepEngineDescriptor load(IConfigRepository repo, String name)
          Create an AEP engine descriptor from a configuration repository.
static AepEngineDescriptor load(String name)
          Create an AEP engine from the default configuration repository.
static Set<AepEngineDescriptor> loadAll()
          Create descriptors for all AEP engines in the default configuration repository.
static Set<AepEngineDescriptor> loadAll(IConfigRepository repo)
          Create descriptors for all AEP engines in a configuration repository.
 AepEngineDescriptor removeBus(String busName)
          Remove a bus from an engine's list of buses.
 AepEngineDescriptor removeChannel(String channelDescriptor)
          Remove a channel from an engine's list of channels.
 AepEngineDescriptor removeChannel(String busName, String channelName)
          Remove a bus specific channel from an engine's list of channels.
 void save()
          Save an AEP engine descriptor to the default configuration repository.
 void save(IConfigRepository repo)
          Save a AEP engine descriptor to a configuration repository.
 AepEngineDescriptor setAdaptiveCommitBatchCeiling(int val)
          Set the adaptive commit batch ceiling.
 AepEngineDescriptor setAdministrative(boolean val)
          Set whether an engine is an administrative engine.
 AepEngineDescriptor setAppExceptionHandlingPolicy(AepEngine.AppExceptionHandlingPolicy val)
          Set an engine's application exception handling policy.
 AepEngineDescriptor setBusManagerProperties(String busName, Properties properties)
          Set a bus manager's configuration properties
 String setBusManagerProperty(String busName, String propName)
          Get a bus manager's configuration property
 AepEngineDescriptor setBusManagerProperty(String busName, String propName, String propVal)
          Set a bus manager's configuration property
 AepEngineDescriptor setClusterHeartbeatInterval(int val)
          Set the cluster heartbeat interval.
 AepEngineDescriptor setDispatchTransactionStageEvents(boolean val)
          Set whether transaction stage events should dispatched.
 AepEngineDescriptor setDisposeOnSend(boolean val)
          Set whether to automatically dispose sent messages.
 AepEngineDescriptor setEnableTransactionCommitSuspension(boolean val)
          Set whether transaction commit suspension is enabled or disabled.
 AepEngineDescriptor setEventMultiplexerProperties(Properties val)
          Set the set of event multiplexer properties.
 AepEngineDescriptor setEventMultiplexerProperty(String name, String val)
          Set an engine's event multiplexer property.
 AepEngineDescriptor setEventMultiplexerType(AepEngine.EventMultiplexerType val)
          Set an engine's event multiplexer type.
 AepEngineDescriptor setHAPolicy(AepEngine.HAPolicy val)
          Set an engine's HA policy.
 AepEngineDescriptor setInboundMessageLoggingPolicy(AepEngine.InboundMessageLoggingPolicy val)
          Set an engine's inbound message logging policy.
 AepEngineDescriptor setInboundMessageLoggingProperties(Properties val)
          Set the set of inbound message logging properties.
 AepEngineDescriptor setInboundMessageLoggingProperty(String name, String val)
          Set an engine's inbound message logging property.
 AepEngineDescriptor setMessageBusBindingFailPolicy(AepEngine.MessageBusBindingFailPolicy val)
          Set an engine's message bus binding fail policy.
 AepEngineDescriptor setMessageHandlingPolicy(AepEngine.MessageHandlingPolicy val)
          Set an engine's message handling policy.
 AepEngineDescriptor setMessageSendExceptionHandlingPolicy(AepEngine.MessageSendExceptionHandlingPolicy val)
          Set an engine's message send exception handling policy.
 AepEngineDescriptor setMessageSendPolicy(AepEngine.MessageSendPolicy val)
          Set an engine's message send policy.
 AepEngineDescriptor setMessagingStartFailPolicy(AepEngine.MessagingStartFailPolicy val)
          Set an engine's messaging start fail policy.
 AepEngineDescriptor setOutboundMessageLoggingPolicy(AepEngine.OutboundMessageLoggingPolicy val)
          Set an engine's outbound message logging policy.
 AepEngineDescriptor setOutboundMessageLoggingProperties(Properties val)
          Set the set of outbound message logging properties.
 AepEngineDescriptor setOutboundMessageLoggingProperty(String name, String val)
          Set an engine's outbound message logging property.
 AepEngineDescriptor setQuarantineChannel(String val)
          Set an engine's quarantine channel.
 AepEngineDescriptor setQuarantineMessageKey(String val)
          Set an engine's quarantine message key.
 AepEngineDescriptor setReplicateSolicitedSends(boolean val)
          Set whether to replicate solicited sends.
 AepEngineDescriptor setReplicateUnsolicitedSends(boolean val)
          Set whether to replicate unsolicited sends.
 AepEngineDescriptor setReplicationPolicy(AepEngine.ReplicationPolicy val)
          Set an engine's replication policy.
 AepEngineDescriptor setSequenceUnsolicitedSends(boolean val)
          Set whether to sequence unsolicited sends.
 AepEngineDescriptor setSequenceUnsolicitedWithSolicitedSends(boolean val)
          Set whether to sequence unsolicited sends with solicited sends.
 AepEngineDescriptor setStore(String storeName)
          Set the name of an engine's ODS store.
 AepEngineDescriptor setStuckAlertEventThreshold(int thresholdSeconds)
          Defines the threshold, in seconds, after which an AepStuckAlertEvent is dispatched to the application's IAepAsynchronousEventHandler.
 String toString()
          Return the string representation of an engine descriptor
 
Methods inherited from class com.neeve.root.RootObject
getChecked, getThreaded, getTracer, setChecked, setTracer
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

CLUSTER_HEARTBEAT_INTERVAL_DEFAULT

public static final int CLUSTER_HEARTBEAT_INTERVAL_DEFAULT
Cluster heartbeat interval default

See Also:
Constant Field Values

GLOBAL_CHANNEL_BUS_NAME

public static final String GLOBAL_CHANNEL_BUS_NAME
Name of bus used to hold global channels

See Also:
Constant Field Values
Method Detail

getName

public final String getName()
Get the name of the AEP engine that this descriptor describes.

Threading:
This method is safe for concurrent access by multiple threads.

addBus

public final AepEngineDescriptor addBus(String busName)
Add a bus to an engine's list of buses.

Parameters:
busName - The bus to add.
Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

setBusManagerProperty

public final AepEngineDescriptor setBusManagerProperty(String busName,
                                                       String propName,
                                                       String propVal)
Set a bus manager's configuration property

Parameters:
busName - The bus manager to configure.
propName - The property to set.
propVal - The property value.
Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

setBusManagerProperty

public final String setBusManagerProperty(String busName,
                                          String propName)
Get a bus manager's configuration property

Parameters:
busName - The bus manager to configure.
propName - The property to set.
Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

clearBusManagerProperty

public final AepEngineDescriptor clearBusManagerProperty(String busName,
                                                         String propName)
Clear a bus manager's configuration property

Parameters:
busName - The bus manager to configure.
propName - The property to set.
Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

setBusManagerProperties

public final AepEngineDescriptor setBusManagerProperties(String busName,
                                                         Properties properties)
Set a bus manager's configuration properties

Parameters:
busName - The bus manager to configure.
Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

getBusManagerProperties

public final Properties getBusManagerProperties(String busName)
Get a bus manager's configuration properties

Parameters:
busName - The bus manager whose configuration to return.
Threading:
This method is not safe for concurrent access by multiple threads.

clearBusManagerProperties

public final AepEngineDescriptor clearBusManagerProperties(String busName)
Clear a bus manager's configuration properties

Parameters:
busName - The bus manager whose configuration to clear.
Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

getBusManagersWithConfiguration

public final Set<String> getBusManagersWithConfiguration()
Get the set of bus names that have been configured

Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

removeBus

public final AepEngineDescriptor removeBus(String busName)
Remove a bus from an engine's list of buses.

Parameters:
busName - The bus to add.
Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

addChannel

public final AepEngineDescriptor addChannel(String channelName,
                                            AepEngineDescriptor.ChannelConfig channelConfig)
Add a global channel to an engine's list of channels.

Parameters:
channelName - The channel to add.
channelConfig - The channel configuration object.
Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

This method will add a global channel to the engine's list of channels. A global channel is one that is processed for each of the buses configured for the application except the engine's internal buses.


addChannel

public final AepEngineDescriptor addChannel(String busName,
                                            String channelName,
                                            AepEngineDescriptor.ChannelConfig channelConfig)
Add a bus specific channel to an engine's list of channels.

Parameters:
busName - The bus to which the channel belongs.
channelName - The channel to add.
channelConfig - The channel configuration object.
Returns:
Returns this descriptor for invocation chaining.
Threading:
This method is not safe for concurrent access by multiple threads.

This method will add a bus specific channel to the engine's list of channels. A bus specific channel is one that is processed only for the specified bus when the engine starts messaging.


removeChannel

public final AepEngineDescriptor removeChannel(String busName,
                                               String channelName)
Remove a bus specific channel from an engine's list of channels.

Parameters:
busName - The bus to which the channel belongs.
channelName - The channel to remove.
Threading:
This method is not safe for concurrent access by multiple threads.

Note: If all channels are removed from a bus, the bus is also effectively removed from the descriptor i.e. the bus will not be joined by the engine. If the intent is to keep the bus around and just remove the channels, then the bus needs to be explictly added again after the remove.


addChannel

public final AepEngineDescriptor addChannel(String channelDescriptor)
Add a channel to an engine's list of channels.

Parameters:
channelDescriptor - Specifies the channel to be added. This must be of the form @&prop1=val1&...&propN=valN. A descriptor without the bus name is interpreted to be for a global channel.
Threading:
This method is not safe for concurrent access by multiple threads.

removeChannel

public final AepEngineDescriptor removeChannel(String channelDescriptor)
Remove a channel from an engine's list of channels.

Parameters:
channelDescriptor - Specifies the channel to be removed. This must be of the form @. A descriptor without the bus name is interpreted to be for a global channel.
Threading:
This method is not safe for concurrent access by multiple threads.

getBuses

public final Set<String> getBuses()
Get an engine's bus list.

Threading:
This method is not safe for concurrent access with other methods that manipulate the engine's channel list.

This method returns the list of buses for which the engine has channels configured to join.


getChannels

public final Map<String,AepEngineDescriptor.ChannelConfig> getChannels(String busName)
Get an engine's channel list.

Parameters:
busName - The bus for which the channels are to be retrieved.
Threading:
This method is not safe for concurrent access with other methods that manipulate the engine's channel list.

This method returns the list of channels within a specified bus that an engine is configured to join. A return value of null indicates that the engine is not configured to join any of the channels in the specified bus.


getChannelConfig

public final AepEngineDescriptor.ChannelConfig getChannelConfig(String busName,
                                                                String channelName)
Get an engine's channel configuration


setStore

public final AepEngineDescriptor setStore(String storeName)
Set the name of an engine's ODS store.

Parameters:
storeName - The name of the store. A store of this name should exist in the default repository at runtime from where the AEP engine using this descriptor will load the store descriptor.

getStore

public final String getStore()
Get the name of an engine's ODS store.


setHAPolicy

public final AepEngineDescriptor setHAPolicy(AepEngine.HAPolicy val)
Set an engine's HA policy.

Parameters:
val - The HA policy to set.
Returns:
Returns this for invocation chaining.

getHAPolicy

public final AepEngine.HAPolicy getHAPolicy()
Get an engine's HA policy.

Returns:
Returns the policy.

setReplicationPolicy

public final AepEngineDescriptor setReplicationPolicy(AepEngine.ReplicationPolicy val)
Set an engine's replication policy.

Parameters:
val - The replication policy to set.
Returns:
Returns this for invocation chaining.

getReplicationPolicy

public final AepEngine.ReplicationPolicy getReplicationPolicy()
Get an engine's replication policy.

Returns:
Returns the policy.

setMessagingStartFailPolicy

public final AepEngineDescriptor setMessagingStartFailPolicy(AepEngine.MessagingStartFailPolicy val)
Set an engine's messaging start fail policy.

Parameters:
val - The policy to set.
Returns:
Returns this for invocation chaining.

getMessagingStartFailPolicy

public final AepEngine.MessagingStartFailPolicy getMessagingStartFailPolicy()
Get an engine's messaging start fail policy.

Returns:
Returns the policy.

setMessageBusBindingFailPolicy

public final AepEngineDescriptor setMessageBusBindingFailPolicy(AepEngine.MessageBusBindingFailPolicy val)
Set an engine's message bus binding fail policy.

Parameters:
val - The policy to set.
Returns:
Returns this for invocation chaining.

getMessageBusBindingFailPolicy

public final AepEngine.MessageBusBindingFailPolicy getMessageBusBindingFailPolicy()
Get an engine's message bus binding fail policy.

Returns:
Returns the policy.

setInboundMessageLoggingPolicy

public final AepEngineDescriptor setInboundMessageLoggingPolicy(AepEngine.InboundMessageLoggingPolicy val)
Set an engine's inbound message logging policy.

Parameters:
val - The policy to set.
Returns:
Returns this for invocation chaining.

getInboundMessageLoggingPolicy

public final AepEngine.InboundMessageLoggingPolicy getInboundMessageLoggingPolicy()
Get an engine's message inbound message logging policy.

Returns:
Returns the policy.

setInboundMessageLoggingProperty

public final AepEngineDescriptor setInboundMessageLoggingProperty(String name,
                                                                  String val)
Set an engine's inbound message logging property.

Parameters:
name - The name of the property to set.
val - The property value.
Returns:
Returns this for invocation chaining.

getInboundMessageLoggingProperty

public final String getInboundMessageLoggingProperty(String name)
Get an engine's inbound message logging property.

Parameters:
name - The property name
Returns:
Returns the property value.

clearInboundMessageLoggingProperty

public final AepEngineDescriptor clearInboundMessageLoggingProperty(String name)
Clear an engine's inbound message logging property.

Parameters:
name - The name of the property to clear.
Returns:
Returns this for invocation chaining.

setInboundMessageLoggingProperties

public final AepEngineDescriptor setInboundMessageLoggingProperties(Properties val)
Set the set of inbound message logging properties.

Parameters:
val - The property table

getInboundMessageLoggingProperties

public final Properties getInboundMessageLoggingProperties()
Get the set of inbound message logging properties.

Returns:
Returns the property table.

setOutboundMessageLoggingPolicy

public final AepEngineDescriptor setOutboundMessageLoggingPolicy(AepEngine.OutboundMessageLoggingPolicy val)
Set an engine's outbound message logging policy.

Parameters:
val - The policy to set.
Returns:
Returns this for invocation chaining.

getOutboundMessageLoggingPolicy

public final AepEngine.OutboundMessageLoggingPolicy getOutboundMessageLoggingPolicy()
Get an engine's message outbound message logging policy.

Returns:
Returns the policy.

setOutboundMessageLoggingProperty

public final AepEngineDescriptor setOutboundMessageLoggingProperty(String name,
                                                                   String val)
Set an engine's outbound message logging property.

Parameters:
name - The name of the property to set.
val - The property value.
Returns:
Returns this for invocation chaining.

getOutboundMessageLoggingProperty

public final String getOutboundMessageLoggingProperty(String name)
Get an engine's outbound message logging property.

Parameters:
name - The property name
Returns:
Returns the property value.

clearOutboundMessageLoggingProperty

public final AepEngineDescriptor clearOutboundMessageLoggingProperty(String name)
Clear an engine's outbound message logging property.

Parameters:
name - The name of the property to clear.
Returns:
Returns this for invocation chaining.

setOutboundMessageLoggingProperties

public final AepEngineDescriptor setOutboundMessageLoggingProperties(Properties val)
Set the set of outbound message logging properties.

Parameters:
val - The property table

getOutboundMessageLoggingProperties

public final Properties getOutboundMessageLoggingProperties()
Get the set of outbound message logging properties.

Returns:
Returns the property table.

setMessageHandlingPolicy

public final AepEngineDescriptor setMessageHandlingPolicy(AepEngine.MessageHandlingPolicy val)
Set an engine's message handling policy.

Parameters:
val - The policy to set.
Returns:
Returns this for invocation chaining.

Note: The message handling policy is for internal testing purposes only. An application should never have any need to change it


getMessageHandlingPolicy

public final AepEngine.MessageHandlingPolicy getMessageHandlingPolicy()
Get an engine's message handling policy.

Returns:
Returns the policy.

setMessageSendPolicy

public final AepEngineDescriptor setMessageSendPolicy(AepEngine.MessageSendPolicy val)
Set an engine's message send policy.

Parameters:
val - The policy to set.
Returns:
Returns this for invocation chaining.

getMessageSendPolicy

public final AepEngine.MessageSendPolicy getMessageSendPolicy()
Get an engine's message send policy.

Returns:
Returns the policy.

setAppExceptionHandlingPolicy

public final AepEngineDescriptor setAppExceptionHandlingPolicy(AepEngine.AppExceptionHandlingPolicy val)
Set an engine's application exception handling policy.

Parameters:
val - The policy to set.
Returns:
Returns this for invocation chaining.

getAppExceptionHandlingPolicy

public final AepEngine.AppExceptionHandlingPolicy getAppExceptionHandlingPolicy()
Get an engine's application exception handling policy.

Returns:
Returns the policy.

setMessageSendExceptionHandlingPolicy

public final AepEngineDescriptor setMessageSendExceptionHandlingPolicy(AepEngine.MessageSendExceptionHandlingPolicy val)
Set an engine's message send exception handling policy.

Parameters:
val - The policy to set.
Returns:
Returns this for invocation chaining.

getMessageSendExceptionHandlingPolicy

public final AepEngine.MessageSendExceptionHandlingPolicy getMessageSendExceptionHandlingPolicy()
Get an engine's message send exception handling policy.

Returns:
Returns the policy.

setEventMultiplexerType

public final AepEngineDescriptor setEventMultiplexerType(AepEngine.EventMultiplexerType val)
Set an engine's event multiplexer type.

Parameters:
val - The type to set.
Returns:
Returns this for invocation chaining.

getEventMultiplexerType

public final AepEngine.EventMultiplexerType getEventMultiplexerType()
Get an engine's event multiplexer type.

Returns:
Returns the type.

setEventMultiplexerProperty

public final AepEngineDescriptor setEventMultiplexerProperty(String name,
                                                             String val)
Set an engine's event multiplexer property.

Parameters:
name - The name of the property to set.
val - The property value.
Returns:
Returns this for invocation chaining.

getEventMultiplexerProperty

public final String getEventMultiplexerProperty(String name)
Get an engine's event multiplexer property.

Parameters:
name - The property name
Returns:
Returns the property value.

clearEventMultiplexerProperty

public final AepEngineDescriptor clearEventMultiplexerProperty(String name)
Clear an engine's event multiplexer property.

Parameters:
name - The name of the property to clear.
Returns:
Returns this for invocation chaining.

setEventMultiplexerProperties

public final AepEngineDescriptor setEventMultiplexerProperties(Properties val)
Set the set of event multiplexer properties.

Parameters:
val - The property table

getEventMultiplexerProperties

public final Properties getEventMultiplexerProperties()
Get the set of event multiplexer properties.

Returns:
Returns the property table.

setAdaptiveCommitBatchCeiling

public final AepEngineDescriptor setAdaptiveCommitBatchCeiling(int val)
Set the adaptive commit batch ceiling.

Parameters:
val - The ceiling to set. A value <=0 disables adaptive commit batch sizing.
Returns:
Returns this for invocation chaining.

getAdaptiveCommitBatchCeiling

public final int getAdaptiveCommitBatchCeiling()
Get an engine's adaptive commit batch ceiling.

Returns:
Returns the policy.

setDispatchTransactionStageEvents

public final AepEngineDescriptor setDispatchTransactionStageEvents(boolean val)
Set whether transaction stage events should dispatched.

Parameters:
val - The value to set.
Returns:
Returns this for invocation chaining.

getDispatchTransactionStageEvents

public final boolean getDispatchTransactionStageEvents()
Get whether an engine will dispatch transaction stage events.

Returns:
Returns whether the engine dispatches transaction stage events.

setEnableTransactionCommitSuspension

public final AepEngineDescriptor setEnableTransactionCommitSuspension(boolean val)
Set whether transaction commit suspension is enabled or disabled.

Parameters:
val - The value to set.
Returns:
Returns this for invocation chaining.

getEnableTransactionCommitSuspension

public final boolean getEnableTransactionCommitSuspension()
Get whether transaction commit suspension is enabled in an engine.

Returns:
Returns whether transaction commits can be suspended.

setReplicateSolicitedSends

public final AepEngineDescriptor setReplicateSolicitedSends(boolean val)
Set whether to replicate solicited sends.

Parameters:
val - The value to set.
Returns:
Returns this for invocation chaining.

This parameter governs whether solicited sends (sends triggered by the processing of inbound messages) performed on clustered State Replication engines will be replicated or not. This setting has not effect on Event Sourced engines or engines that are not clustered.

Note: This parameter should be changed with extreme caution. The act of disabling replication of outbound messages will likely result in a loss of outbound messages in the event of a fail over.

This parameter is only applicable to State Replicated engines. The default value for this parameter is true.


getReplicateSolicitedSends

public final boolean getReplicateSolicitedSends()
Get whether to replicate solicited sends.

Returns:
Returns whether solicited sends are replicated.

setReplicateUnsolicitedSends

public final AepEngineDescriptor setReplicateUnsolicitedSends(boolean val)
Set whether to replicate unsolicited sends.

Parameters:
val - The value to set.
Returns:
Returns this for invocation chaining.

This parameter governs whether unsolicited sends performed on clustered State Replication engines will be replicated or not. This setting has not effect on Event Sourced engines or engines that are not clustered.

This parameter is only applicable to State Replicated engines. The default value for this parameter is false.


getReplicateUnsolicitedSends

public final boolean getReplicateUnsolicitedSends()
Get whether to replicate unsolicited sends.

Returns:
Returns whether unsolicited sends are replicated.

setSequenceUnsolicitedSends

public final AepEngineDescriptor setSequenceUnsolicitedSends(boolean val)
Set whether to sequence unsolicited sends.

Parameters:
val - The value to set.
Returns:
Returns this for invocation chaining.

By default, unsolicited sends are sent with a sequence number of 0. Specifying true in this parameter will cause sequence numbers to be attached to unsolicited sends too.

Note: Be careful about attaching sequence numbers to unsolicited sends especially if the application is going to be doing both unsolicited and solicited sends concurrently since that can cause messages to be sent on the wire in a sequence different from the sequence in which sequence numbers were assigned to the message thus causing legitimate messages to be dropped due to incorrect duplicate determination. For such applications, use sequenceSolicitedWithUnsolicitedSends instead to ensure that not only are unsolicited sends sequenced but that they are also correctly sequenced vis-a-vis solicited sends.

The default value for this parameter is false.


getSequenceUnsolicitedSends

public final boolean getSequenceUnsolicitedSends()
Get whether unsolicited sends are sequenced.

Returns:
Returns whether unsolicited sends are sequenced.

setClusterHeartbeatInterval

public final AepEngineDescriptor setClusterHeartbeatInterval(int val)
Set the cluster heartbeat interval.

Parameters:
val - The interval
Returns:
Returns this for invocation chaining.

The default value for this parameter is CLUSTER_HEARTBEAT_INTERVAL_DEFAULT.


getClusterHeartbeatInterval

public final int getClusterHeartbeatInterval()
Get the cluster heartbeat interval


setSequenceUnsolicitedWithSolicitedSends

public final AepEngineDescriptor setSequenceUnsolicitedWithSolicitedSends(boolean val)
Set whether to sequence unsolicited sends with solicited sends.

Parameters:
val - The value to set.
Returns:
Returns this for invocation chaining.

This parameter is applicable for applications performing concurrent solicited and unsolicited sends and want the unsolicited sends to be sequenced. Setting this parameter ensures that unsolicited and solicited sends are sequenced on the wire in the same order in which the sequence numbers were attached to the messages.

The default value for this parameter is false.


getSequenceUnsolicitedWithSolicitedSends

public final boolean getSequenceUnsolicitedWithSolicitedSends()
Get whether unsolicited sends are sequenced with solicited sends.

Returns:
Returns whether unsolicited sends are sequenced with solicited sends.

setDisposeOnSend

public final AepEngineDescriptor setDisposeOnSend(boolean val)
Set whether to automatically dispose sent messages.

Parameters:
val - The value to set.
Returns:
Returns this for invocation chaining.

If set, then the AepEngine.sendMessage(com.neeve.sma.MessageChannel, com.neeve.rog.IRogMessage, java.util.Properties) method will dispose a message after it has been sent. This means that the caller must not hold onto or reference a message beyond the call to the send message method.

The default value for this parameter is false.


getDisposeOnSend

public final boolean getDisposeOnSend()
Get whether AepEngine.sendMessage(com.neeve.sma.MessageChannel, com.neeve.rog.IRogMessage, java.util.Properties) disposes sent messages.


setQuarantineChannel

public final AepEngineDescriptor setQuarantineChannel(String val)
Set an engine's quarantine channel.

Parameters:
val - The channel name to set as the quarantine channel.
Returns:
Returns this for invocation chaining.

This method sets the channel on which quarantined messages are transmitted. This applies when the application throws an exception and the application exception policy is configured to be 'quarantine and stop' i.e. (AepEngine.AppExceptionHandlingPolicy.QuarantineAndStop)


getQuarantineChannel

public final String getQuarantineChannel()
Get an engine's quarantine channel

Returns:
Returns the quarantine channel and null if not set.

setQuarantineMessageKey

public final AepEngineDescriptor setQuarantineMessageKey(String val)
Set an engine's quarantine message key.

Parameters:
val - The channel name to set as the quarantine channel.
Returns:
Returns this for invocation chaining.

This method is used to explicitly set the message key to be associated with outbound quarantine messages. If the key is set using this method, the sending of the quarantine message will bypass the dynamic key resolution machinery.


getQuarantineMessageKey

public final String getQuarantineMessageKey()
Get an engine's quarantine message key.

Returns:
Returns the quarantine message key and null if not set.

setAdministrative

public final AepEngineDescriptor setAdministrative(boolean val)
Set whether an engine is an administrative engine.

Returns:
Returns this for invocation chaining.

Engines designated as administratibve engines are not subject to auto performance tuning.


getAdministrative

public final boolean getAdministrative()
Get whether an engine is an administrative enginel


setStuckAlertEventThreshold

public final AepEngineDescriptor setStuckAlertEventThreshold(int thresholdSeconds)
Defines the threshold, in seconds, after which an AepStuckAlertEvent is dispatched to the application's IAepAsynchronousEventHandler.

An AepStuckAlertEvent event is intended to alert that the engine's transaction pipeline is "stuck" i.e. there are one or more transaction commits in the pipeline and the event multiplexer thread is not processing any events. For example, the event multiplexer thread could be flow controlled on the replication TCP connection due to an issue in the backup or could be spinning in a loop in the business logic due to a bug in a business logic handler. This event triggered by the AEP engine under the following conditions:

Parameters:
thresholdSeconds - A positive value indicates the time in seconds that the engine must be stuck before an event is issued.
See Also:
IAepAsynchronousEventHandler, AepEngine.setAsynchronousEventHandler(IAepAsynchronousEventHandler)

getStuckAlertEventThreshold

public int getStuckAlertEventThreshold()
Get's the engine stuck alert event threshold.

Returns:
The stuck event alert threshold
See Also:
setStuckAlertEventThreshold(int)

save

public final void save(IConfigRepository repo)
                throws EAepException
Save a AEP engine descriptor to a configuration repository.

Parameters:
repo - The configuration respository to save the descriptor to.
Throws:
EAepException - Thrown in case an error in encountered while saving the descriptor.
Threading:
This method is notsafe for concurrent access by multiple threads.

This method saves an AEP engine descriptor to a configuration repository. The descriptor is saved in a format suitable for loading subsequently using any of the load methods offered by this class.


save

public final void save()
                throws EAepException
Save an AEP engine descriptor to the default configuration repository.

Throws:
EAepException
Threading:
This method is notsafe for concurrent access by multiple threads.

This method saves an AEP engine descriptor to the default configuration respository. The descriptor is saved in a format suitable for loading subsequently using any of the load methods offered in this class.


delete

public final void delete(IConfigRepository repo)
                  throws EAepException
Delete an AEP engine descriptor from a configuration repository.

Parameters:
repo - The configuration respository to delete the descriptor from.
Throws:
EAepException - Thrown in case an error in encountered during the deletion of the descriptor.
Threading:
This method is notsafe for concurrent access by multiple threads.

This method permanently deletes an AEP engine descriptor from a configuration repository.


delete

public final void delete()
                  throws EAepException
Delete an AEP engine descriptor from the default configuration repository.

Throws:
EAepException - Thrown in case an error in encountered during the deletion of the descriptor.
Threading:
This method is notsafe for concurrent access by multiple threads.

This method permanently deletes an AEP engine descriptor from the default configuration repository.


create

public static AepEngineDescriptor create(String name)
Create a default AEP engine descriptor.

Parameters:
name - The engine name.
Threading:
This method is safe for concurrent access by multiple threads.

exists

public static boolean exists(IConfigRepository repo,
                             String name)
Checks if an AEP engine is configured in a configuration repository.

Parameters:
repo - The configuration respository to check in.
name - The name of the engine to check for.
Threading:
This method is safe for concurrent access by multiple threads.

exists

public static boolean exists(String name)
Checks if an AEP engine is configured in the default configuration repository

Parameters:
name - The name of the engine to check for.
Threading:
This method is safe for concurrent access by multiple threads.

load

public static AepEngineDescriptor load(IConfigRepository repo,
                                       String name)
                                throws EAepException
Create an AEP engine descriptor from a configuration repository.

Parameters:
repo - The configuration respository to create it from.
name - The name of the engine whose descriptor is to be prepared.
Throws:
EAepException
Threading:
This method is safe for concurrent access by multiple threads.

This method creates and initializes an AEP engine descriptor from a configuration repository.


load

public static AepEngineDescriptor load(String name)
                                throws EAepException
Create an AEP engine from the default configuration repository.

Parameters:
name - The name of the engine whose descriptor is to be prepared.
Throws:
EAepException
Threading:
This method is safe for concurrent access by multiple threads.

This method creates and initializes an AEP engine descriptor from the default configuration repository.


loadAll

public static Set<AepEngineDescriptor> loadAll(IConfigRepository repo)
                                        throws EAepException
Create descriptors for all AEP engines in a configuration repository.

Parameters:
repo - The configuration respository from where to create the engines.
Returns:
Returns the set of engine descriptors.
Throws:
EAepException
Threading:
This method is safe for concurrent access by multiple threads.

loadAll

public static Set<AepEngineDescriptor> loadAll()
                                        throws EAepException
Create descriptors for all AEP engines in the default configuration repository.

Returns:
Returns the set of engine descriptors.
Throws:
EAepException
Threading:
This method is safe for concurrent access by multiple threads.

toString

public final String toString()
Return the string representation of an engine descriptor

Overrides:
toString in class Object


Copyright © 2015 Neeve Research, LLC. All Rights Reserved.