quickfix
Interface MessageStore

All Known Implementing Classes:
CachedFileStore, FileStore, MemoryStore, SleepycatStore

public interface MessageStore

Used by a Session to store and retrieve messages for resend purposes.

See Also:
Session

Method Summary
 void get(int startSequence, int endSequence, java.util.Collection<java.lang.String> messages)
          Get messages within sequence number range (inclusive).
 java.util.Date getCreationTime()
          Get the session creation time.
 int getNextSenderMsgSeqNum()
           
 int getNextTargetMsgSeqNum()
           
 void incrNextSenderMsgSeqNum()
           
 void incrNextTargetMsgSeqNum()
           
 void refresh()
          Refresh session state from a shared state storage (e.g. database, file, ...).
 void reset()
          Reset the message store.
 boolean set(int sequence, java.lang.String message)
          Adds a raw fix messages to the store with the given sequence number.
 void setNextSenderMsgSeqNum(int next)
           
 void setNextTargetMsgSeqNum(int next)
           
 

Method Detail

set

boolean set(int sequence,
            java.lang.String message)
            throws java.io.IOException
Adds a raw fix messages to the store with the given sequence number. (Most implementations just append the message data to the store so be careful about assuming random access behavior.)

Parameters:
sequence - the sequence number
message - the raw FIX message string
Returns:
true is successful, false otherwise
Throws:
java.io.IOException - IO error

get

void get(int startSequence,
         int endSequence,
         java.util.Collection<java.lang.String> messages)
         throws java.io.IOException
Get messages within sequence number range (inclusive). Used for message resend requests.

Parameters:
startSequence - the starting message sequence number.
endSequence - the ending message sequence number.
messages - the retrieved messages (out parameter)
Throws:
java.io.IOException - IO error

getNextSenderMsgSeqNum

int getNextSenderMsgSeqNum()
                           throws java.io.IOException
Throws:
java.io.IOException

getNextTargetMsgSeqNum

int getNextTargetMsgSeqNum()
                           throws java.io.IOException
Throws:
java.io.IOException

setNextSenderMsgSeqNum

void setNextSenderMsgSeqNum(int next)
                            throws java.io.IOException
Throws:
java.io.IOException

setNextTargetMsgSeqNum

void setNextTargetMsgSeqNum(int next)
                            throws java.io.IOException
Throws:
java.io.IOException

incrNextSenderMsgSeqNum

void incrNextSenderMsgSeqNum()
                             throws java.io.IOException
Throws:
java.io.IOException

incrNextTargetMsgSeqNum

void incrNextTargetMsgSeqNum()
                             throws java.io.IOException
Throws:
java.io.IOException

getCreationTime

java.util.Date getCreationTime()
                               throws java.io.IOException
Get the session creation time.

Returns:
the session creation time.
Throws:
java.io.IOException - IO error

reset

void reset()
           throws java.io.IOException
Reset the message store. Sequence numbers are set back to 1 and stored messages are erased. The session creation time is also set to the time of the reset.

Throws:
java.io.IOException - IO error

refresh

void refresh()
             throws java.io.IOException
Refresh session state from a shared state storage (e.g. database, file, ...). Refresh will not work for message stores without shared state (e.g., MemoryStore). These stores should log an session error, at a minimum, or throw an exception.

Throws:
java.io.IOException