public class FileBasedSessionStorage extends AbstractSessionStorage
Modifier and Type | Field and Description |
---|---|
static String |
LAST_INBOUND_SEQ_NUM_KEY |
static String |
LAST_OUTBOUND_SEQ_NUM_KEY |
static String |
TERMINATION_STATUS |
Modifier and Type | Method and Description |
---|---|
void |
clear()
Clears session storage state.
|
void |
close(boolean terminated)
Closes session storage.
|
String |
getId()
Returns session storage unique id.
|
long |
getInSeqNum()
Returns last inbound message sequence number or 0 if no inbound message is stored.
|
List<FixMessage> |
getOutboundMessages(long beginSequenceNumber,
long endSequenceNumber)
Returns outbound messages with the specified sequence number interval.
|
long |
getOutSeqNum()
Returns last outbound sequence number or 0 if no outbound message is stored.
|
long |
getRotateStorageSize()
Returns the size at which the storage file is rotated.
|
SessionId |
getSessionId() |
String |
getStorageFolder()
Returns the storage folder.
|
TimestampProvider |
getTimestampProvider()
Returns the current timestamp provider.
|
boolean |
isArchiveStorage()
Returns whether to archive terminated storage.
|
boolean |
isTerminated()
Returns the flag whether this storage state should be kept or cleaned.
|
void |
setArchiveStorage(boolean archiveStorage)
Sets whether to archive terminated storage.
|
void |
setInSeqNum(long msgSeqNum)
Sets last inbound message sequence number
|
void |
setMaxStorageSize(int maxStorageSize)
Sets the maximum size of the message storage.
|
void |
setOutSeqNum(long msgSeqNum)
Sets last outbound message sequence number.
|
void |
setRotateStorageSize(long rotateStorageSize)
Sets the size at which the storage file is rotated.
|
void |
setStorageFolder(String storageFolder)
Sets the storage folder.
|
void |
setTerminated(boolean terminated)
Sets the flag whether this storage state should be kept or cleaned
|
void |
setTimestampProvider(TimestampProvider timestampProvider)
Sets the timestamp provider which is used to get timestamp when writing the logs.
|
void |
storeInboundMessage(ByteBuffer rawMessage,
long msgSeqNum,
boolean isOriginal)
Stores inbound message.
|
void |
storeOutboundMessage(ByteBuffer rawMessage,
long msgSeqNum,
boolean isOriginal,
boolean warmUp)
Stores outbound message.
|
String |
toString() |
getMaxStorageSize
public static final String LAST_INBOUND_SEQ_NUM_KEY
public static final String LAST_OUTBOUND_SEQ_NUM_KEY
public static final String TERMINATION_STATUS
public SessionId getSessionId()
public boolean isArchiveStorage()
public void setArchiveStorage(boolean archiveStorage)
archiveStorage
- archive terminated storagepublic long getRotateStorageSize()
public void setRotateStorageSize(long rotateStorageSize)
rotateStorageSize
- storage rotation size, in bytespublic String getStorageFolder()
public void setStorageFolder(String storageFolder)
storageFolder
- storage folderpublic TimestampProvider getTimestampProvider()
public void setTimestampProvider(TimestampProvider timestampProvider)
timestampProvider
- timestamp providerpublic void clear()
SessionStorage
public void close(boolean terminated)
SessionStorage
terminated
set to true means that after closing this session storage can not be restored.
Its state is vanished. The session with the same parameters will be started from scratch.
terminated
set to false means that after closing this session can be restored at some point in the
future. The session state need to be kept - sequence numbers, etc.terminated
- controls whether this session storage state should be kept or cleanedpublic List<FixMessage> getOutboundMessages(long beginSequenceNumber, long endSequenceNumber)
SessionStorage
beginSequenceNumber
- sequence number to begin with, 0 means the minimum availableendSequenceNumber
- sequence number to end with, 0 means the maximum availablepublic void storeInboundMessage(ByteBuffer rawMessage, long msgSeqNum, boolean isOriginal)
SessionStorage
rawMessage
- message to storemsgSeqNum
- message sequence numberisOriginal
- whether message is original or notpublic void storeOutboundMessage(ByteBuffer rawMessage, long msgSeqNum, boolean isOriginal, boolean warmUp)
SessionStorage
rawMessage
- message to storemsgSeqNum
- message sequence numberisOriginal
- whether message is original or notwarmUp
- indicates whether it is a warmUp messagepublic String getId()
SessionStorage
public long getInSeqNum()
SessionStorage
public void setInSeqNum(long msgSeqNum)
SessionStorage
msgSeqNum
- inbound message sequence numberpublic long getOutSeqNum()
SessionStorage
public void setOutSeqNum(long msgSeqNum)
SessionStorage
msgSeqNum
- last outbound message sequence numberpublic boolean isTerminated()
SessionStorage
public void setTerminated(boolean terminated)
SessionStorage
terminated
- flag whether this storage state should be kept or cleanedpublic void setMaxStorageSize(int maxStorageSize)
SessionStorage
setMaxStorageSize
in interface SessionStorage
setMaxStorageSize
in class AbstractSessionStorage
maxStorageSize
- maximum size of the message storageCopyright © 2005–2024 Onix Solutions. All rights reserved.