com.neeve.toa.spi
Interface ChannelInitialKeyResolutionTableProvider


public interface ChannelInitialKeyResolutionTableProvider

Called by a Topic Oriented Application at the time it is configured which allows all or a portion of a channel's dynamic key parts to be determined statically at configuration time by returning a initial Key Resolution Table (KRT).


Method Summary
 Properties getInitialChannelKeyResolutionTable(ToaService service, ToaServiceChannel channel)
          Called by a Topic Oriented Application at the time it is configured which allows all or a portion of a channel's dynamic key parts to be determined statically at configuration time by returning a initial Key Resolution Table (KRT).
 

Method Detail

getInitialChannelKeyResolutionTable

Properties getInitialChannelKeyResolutionTable(ToaService service,
                                               ToaServiceChannel channel)
Called by a Topic Oriented Application at the time it is configured which allows all or a portion of a channel's dynamic key parts to be determined statically at configuration time by returning a initial Key Resolution Table (KRT).

Example:

Given:
  • A channel, channel1 with a configured key of: ORDERS/${Region}/${Product}
  • An initial KRT returned by this method of: {"Region": "US", "HostName": MyPC}
With the above KRT, the channel would be intialized with a key of ORDERS/US/${Product}. The dynamic 'Region' portion of the key has become static while the 'Product' portion remains dynamic and eligible for substitution with a runtime KRT or from values reflected from a message reflector.

NOTE:
The returned key resolution table is not used for individual send calls, if the channel key still contains dynamic portions then dynamic key resolution can be done on a per send basis using either the message's message reflector or a key resolution table provide as a argument to the send call.

If more than one service share the same channel on the same bus, they will share the same channel key; at this time it is not possible to perform individual channel key resolution on a per service basis. In this sense the initial channel key resolution is global to a channel name. The serviceName is provided here as a hint to assist the application in locating a key resolution table for a channel.

Parameters:
service - The service name.
channel - The channel for which to perform key resolution
Returns:
A key resolution table to substitute some or all of the configured channel key.


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