/usr/include/quickfix/NullStore.h is in libquickfix-dev 1.14.4+dfsg-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 | /* -*- C++ -*- */
/****************************************************************************
** Copyright (c) 2001-2014
**
** This file is part of the QuickFIX FIX Engine
**
** This file may be distributed under the terms of the quickfixengine.org
** license as defined by quickfixengine.org and appearing in the file
** LICENSE included in the packaging of this file.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.quickfixengine.org/LICENSE for licensing information.
**
** Contact ask@quickfixengine.org if any conditions of this licensing are
** not clear to you.
**
****************************************************************************/
#ifndef FIX_NULLSTORE_H
#define FIX_NULLSTORE_H
#ifdef _MSC_VER
#pragma warning( disable : 4503 4355 4786 4290 )
#endif
#include "MessageStore.h"
#include "SessionSettings.h"
#include <string>
namespace FIX
{
class Session;
/**
* Null implementation of MessageStore.
*
* Will not actually store messages. Useful for admin-only or market
* data-only applications.
*/
class NullStoreFactory : public MessageStoreFactory
{
public:
MessageStore* create( const SessionID& );
void destroy( MessageStore* );
};
/*! @} */
/**
* Null implementation of MessageStore.
*
* Will not actually store messages. Useful for admin-only or market
* data-only applications.
*/
class NullStore : public MessageStore
{
public:
NullStore() : m_nextSenderMsgSeqNum( 1 ), m_nextTargetMsgSeqNum( 1 ) {}
bool set( int, const std::string& ) throw ( IOException );
void get( int, int, std::vector < std::string > & ) const throw ( IOException );
int getNextSenderMsgSeqNum() const throw ( IOException )
{ return m_nextSenderMsgSeqNum; }
int getNextTargetMsgSeqNum() const throw ( IOException )
{ return m_nextTargetMsgSeqNum; }
void setNextSenderMsgSeqNum( int value ) throw ( IOException )
{ m_nextSenderMsgSeqNum = value; }
void setNextTargetMsgSeqNum( int value ) throw ( IOException )
{ m_nextTargetMsgSeqNum = value; }
void incrNextSenderMsgSeqNum() throw ( IOException )
{ ++m_nextSenderMsgSeqNum; }
void incrNextTargetMsgSeqNum() throw ( IOException )
{ ++m_nextTargetMsgSeqNum; }
void setCreationTime( const UtcTimeStamp& creationTime ) throw ( IOException )
{ m_creationTime = creationTime; }
UtcTimeStamp getCreationTime() const throw ( IOException )
{ return m_creationTime; }
void reset() throw ( IOException )
{
m_nextSenderMsgSeqNum = 1; m_nextTargetMsgSeqNum = 1;
m_creationTime.setCurrent();
}
void refresh() throw ( IOException ) {}
private:
int m_nextSenderMsgSeqNum;
int m_nextTargetMsgSeqNum;
UtcTimeStamp m_creationTime;
};
}
#endif // FIX_NULLSTORE_H
|