Interface BlotterChannel
-
public interface BlotterChannel
BlotterChannel is the entry point for sending out
BlotterItem
s. It enters your application through theBlotterApplicationListener.blotterChannelOpened(com.caplin.datasource.blotter.BlotterChannel)
method and includes methods such assendBlotterItem(com.caplin.datasource.blotter.BlotterItem)
for populating theBlotterChannel
with items.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
clear()
Clears allBlotterItem
s from the internal cache and sends a container clear so that these items are no longer requested when the channel is subscribed to.void
closeChannel()
Closes the channel.java.lang.String
getParameters()
Returns the parameters for the channeljava.lang.String
getSubject()
Returns the subject for the channel.java.lang.String
getUsername()
Returns the username for the channelvoid
removeBlotterItem(java.lang.String uniqueId)
Removes theBlotterItem
from the internal cache and sends a container remove so that this item is no longer requested when the channel is subscribed to.void
removeBlotterItems(java.util.List<java.lang.String> uniqueIds)
RemovesBlotterItem
s from the internal cache and sends a container remove so that these items are no longer requested when the channel is subscribed to.void
sendBlotterItem(BlotterItem item)
Adds theBlotterItem
to the internal cache and sends a container add so that this item is requested when the channel is subscribed to.void
sendBlotterItemNotFound(java.lang.String uniqueId)
Sends a not found for aBlotterItem
.void
sendBlotterItems(java.util.List<BlotterItem> items)
AddsBlotterItem
s to the internal cache and sends a container add so that these items are requested when the channel is subscribed to.void
sendBlotterItemStatusOk(java.lang.String uniqueId)
Send status ok for aBlotterItem
.void
sendBlotterItemStatusStale(java.lang.String uniqueId)
Send status stale for aBlotterItem
.void
sendBlotterMapping(java.lang.String newSubject)
Sends aMappingMessage
to the Liberator, requesting that the Liberator map thisBlotterChannel
instance's subject to the specified subjectnewSubject
.void
sendBlotterStatusOk()
Sends a status ok on the channel.void
sendBlotterStatusStale()
Sends a status stale on the channel.void
sendEmptyBlotter()
Sends an empty container on the channel.void
setBlotterChannelListener(BlotterChannelListener listener)
Sets aBlotterChannelListener
on the channel.
-
-
-
Method Detail
-
closeChannel
void closeChannel()
Closes the channel.
Sends a Subject Not Found on the channel's subject to let subscribers know that it is no longer serviced.
-
getSubject
java.lang.String getSubject()
Returns the subject for the channel.
- Returns:
- subject for the channel
-
getUsername
java.lang.String getUsername()
Returns the username for the channel
- Returns:
- username for the channel
-
getParameters
java.lang.String getParameters()
Returns the parameters for the channel
- Returns:
- parameters for the channel
-
removeBlotterItem
void removeBlotterItem(java.lang.String uniqueId)
Removes the
BlotterItem
from the internal cache and sends a container remove so that this item is no longer requested when the channel is subscribed to.- Parameters:
uniqueId
- of the item to remove
-
removeBlotterItems
void removeBlotterItems(java.util.List<java.lang.String> uniqueIds)
Removes
BlotterItem
s from the internal cache and sends a container remove so that these items are no longer requested when the channel is subscribed to.- Parameters:
uniqueIds
- of the items to remove
-
clear
void clear()
Clears all
BlotterItem
s from the internal cache and sends a container clear so that these items are no longer requested when the channel is subscribed to.
-
sendBlotterItem
void sendBlotterItem(BlotterItem item)
Adds the
BlotterItem
to the internal cache and sends a container add so that this item is requested when the channel is subscribed to.If an item with the same unique id already exists in the internal cache then that item's fields will be updated with this one. This will then trigger an update for any users currently subscribed to this item.
- Parameters:
item
- to send
-
sendBlotterItemNotFound
void sendBlotterItemNotFound(java.lang.String uniqueId)
Sends a not found for a
BlotterItem
.Specifically for the case where there is more than one Integration Adapter providing for the same channel subject.
Sent in response to a
BlotterChannelListener.onBlotterItemRequest(com.caplin.datasource.blotter.BlotterChannel, java.lang.String)
when the item requested is not serviceable by your application.- Parameters:
uniqueId
- of item that cannot be serviced by your application.
-
sendBlotterItems
void sendBlotterItems(java.util.List<BlotterItem> items)
Adds
BlotterItem
s to the internal cache and sends a container add so that these items are requested when the channel is subscribed to.If any items with the same unique id already exists in the internal cache then these items fields will be updated with these one. This will then trigger an update for any users currently subscribed to these items.
- Parameters:
items
- to send
-
sendBlotterMapping
void sendBlotterMapping(java.lang.String newSubject)
Sends a
MappingMessage
to the Liberator, requesting that the Liberator map thisBlotterChannel
instance's subject to the specified subjectnewSubject
.Note: Liberator applies mapping rules configured by mapping messages after it applies mapping rules configured by
object-map
config items.This method can be used to provide a user with access to a shared group blotter via a general subject, such as /PRIVATE/FX/GROUPBLOTTER. In the
BlotterApplicationListener.blotterChannelOpened(com.caplin.datasource.blotter.BlotterChannel)
method for the general subject, determine which group the user is a member of and callsendBlotterMapping(java.lang.String)
, passing it the subject of the group's blotter.- Parameters:
newSubject
- the subject to map this blotter's subject to
-
sendBlotterItemStatusOk
void sendBlotterItemStatusOk(java.lang.String uniqueId)
Send status ok for a
BlotterItem
.Under normal circumstances this method is not used.
- Parameters:
uniqueId
- of the message whose status is OK
-
sendBlotterItemStatusStale
void sendBlotterItemStatusStale(java.lang.String uniqueId)
Send status stale for a
BlotterItem
.Under normal circumstances this method is not used.
- Parameters:
uniqueId
- of the message whose status is STALE
-
sendBlotterStatusOk
void sendBlotterStatusOk()
Sends a status ok on the channel.
Under normal circumstances this method is not used.
-
sendBlotterStatusStale
void sendBlotterStatusStale()
Sends a status stale on the channel.
Under normal circumstances this method is not used.
-
sendEmptyBlotter
void sendEmptyBlotter()
Sends an empty container on the channel.
Invoke when a
BlotterApplicationListener.blotterChannelOpened(com.caplin.datasource.blotter.BlotterChannel)
callback is received and there are currently noBlotterItem
s to be added for the channel. I.e. ABlotterApplicationListener.blotterChannelOpened(com.caplin.datasource.blotter.BlotterChannel)
for a historic trade data BlotterChannel for a user who has not yet traded would be serviced with this method.Note: This method is not required if the blotter Configuration option
BlotterConfiguration.setAutoSendEmptyContainer()
is turned on, in which case the API will send out an empty container for a blotter channel that was opened - unless it is materialized paths
-
setBlotterChannelListener
void setBlotterChannelListener(BlotterChannelListener listener)
Sets a
BlotterChannelListener
on the channel.Specifically for the case where there is more than one Integration Adapter providing for the same channel subject.
See
BlotterConfiguration
for how to configure for this eventuality.- Parameters:
listener
- to receive requests for items not already cached by the BlotterAPI
-
-