fintp_transport
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
FinTP::WMqHelper Class Reference

#include <WMqHelper.h>

Inheritance diagram for FinTP::WMqHelper:

Public Member Functions

 WMqHelper ()
 
 ~WMqHelper ()
 
void connect (const string &queueManagerName="", const string &channelDefinition="", bool force=false)
 
void connect (const string &queueManagerName, const string &channelDefinition, const string &keyRepository, const string &sslCypherSpec, const string &sslPeerName, bool force=false)
 
void openQueue (const string &queueName="")
 
void openBackupQueue ()
 
void openBackoutQueue (string queueName)
 
void closeQueue ()
 
void closeBackupQueue ()
 
void closeBackoutQueue ()
 
void disconnect ()
 
long getOne (unsigned char *buffer, size_t maxSize, bool syncpoint=true)
 interface declared gets messages More...
 
long getOne (ManagedBuffer *buffer, bool syncpoint=true, bool keepJMSHeader=true)
 Pull one message from MQ Server and return it in 'ManagedBuffer* buffer'. More...
 
long getOne (unsigned char *buffer, size_t maxSize, ImqGetMessageOptions &gmo)
 overloads More...
 
long getOne (unsigned char *buffer, size_t maxSize, ImqGetMessageOptions &gmo, ImqMessage &msg)
 
long getOne (ManagedBuffer *buffer, ImqGetMessageOptions &gmo)
 
long getOne (ManagedBuffer *buffer, ImqGetMessageOptions &gmo, ImqMessage &msg, bool getForClean=false, bool keepJMSHeader=true)
 
void putOne (unsigned char *buffer, size_t bufferSize, bool syncpoint=true)
 interface declared put messages More...
 
void putOne (unsigned char *buffer, size_t bufferSize, ImqPutMessageOptions &pmo)
 overloads More...
 
void putOne (unsigned char *buffer, size_t bufferSize, ImqPutMessageOptions &pmo, ImqMessage &msg)
 
void putOne (ManagedBuffer *buffer, ImqPutMessageOptions &pmo, ImqMessage &msg)
 
void putToDeadLetterQueue (ImqMessage &msg)
 
void clearMessages ()
 
long getGroupMessage (ManagedBuffer *groupMessageBuffer, const string &groupId, bool &isCleaningUp)
 interface declared, handling group messages methods More...
 
void putGroupMessage (ManagedBuffer *buffer, const string &batchId, long messageSequence, bool isLast)
 
void putSAAmessage (const TransportReplyOptions &replyOptions, const string &replyQueue, ManagedBuffer *buffer, const string &batchId, long messageSequence, bool isLast)
 
void putOneRequest (unsigned char *buffer, size_t bufferSize, const string &rtqName, const string &rtqmName, TransportReplyOptions &replyOptions)
 interface declared request/reply More...
 
void putOneReply (unsigned char *buffer, size_t bufferSize=0, long feedback=0, TRANSPORT_MESSAGE_TYPE replyType=TMT_REPLY)
 
void putOneReply (ManagedBuffer *buffer, long feedback)
 overloads More...
 
long peek (const string &queue="", bool first=true)
 interface declared peek More...
 
string getApplicationName () const
 Set message header value when message end up in Dead.letter.queue. More...
 
void setApplicationName (const string &applicationName)
 
void setMessageFormat (const string &format)
 
string getLastMessageFormat () const
 
TRANSPORT_MESSAGE_TYPE getLastMessageType ()
 
TransportReplyOptions getLastReplyOptions () const
 TODO getLastReplyOptions to return ReplyOptions type. More...
 
string getLastReplyQueueManager () const
 
void clearSSLOptions ()
 
bool commit ()
 
bool rollback ()
 
long getQueueDepth (const string &queueName="")
 
long getOpenOutputCount (string queueName="")
 
long getOpenInputCount (string queueName="")
 
void beginXATransaction ()
 
- Public Member Functions inherited from FinTP::TransportHelper
virtual ~TransportHelper ()
 
string getLastReplyQueue () const
 
 DEPRECATED (virtual void openQueue(const string &queueName))
 Common interface. More...
 
 DEPRECATED (virtual void closeQueue())
 
virtual long getOne (ManagedBuffer *buffer)
 
string getLastMessageId () const
 
virtual void setMessageId (const string &messageId)
 
string getLastCorrelId () const
 
virtual void setCorrelationId (const string &correlId)
 
string getLastGroupId () const
 
virtual void setGroupId (const string &groupId)
 
int getLastGroupSequence () const
 
void setReplyUserData (const string &usrData)
 
string getReplyUserData () const
 
time_t getMessagePutTime ()
 
unsigned long getLastMessageLength () const
 
long long getLastFeedback () const
 
bool isLastInGroup () const
 
virtual void setAutoAbandon (const int retries)
 
virtual void setBackupQueue (const string &queueName)
 
long getQueueDepth ()
 

Static Public Member Functions

static void setSyncPointParticipation (ImqPutMessageOptions &pmo, unsigned char value)
 
static void setSyncPointParticipation (ImqGetMessageOptions &gmo, unsigned char value)
 
static ImqBinary createBinary (void *value)
 
- Static Public Member Functions inherited from FinTP::TransportHelper
static TransportHelperCreateHelper (const TransportHelper::TRANSPORT_HELPER_TYPE &helperType)
 Factory method used to instantiate propper TransportHelper. More...
 
static TRANSPORT_HELPER_TYPE parseTransportType (const string &transportType)
 
static AbstractLogPublisher * createMqLogPublisher (const NameValueCollection &propSettings, bool &isDefault)
 

Private Member Functions

void setOpenQueueOptions (const long &openOptions)
 
void setChannel ()
 
TransportHelper::TRANSPORT_MESSAGE_TYPE ToTransportMessageType (long messageType)
 
unsigned int StripJMSHeader (ImqMessage &msg, string &msgFormat) const
 
unsigned int InjectJMSHeader (ImqMessage &msg)
 
long getLastDataOffset () const
 
long ParseReplyOptions (const TransportReplyOptions &options)
 

Private Attributes

ImqQueueManager m_QueueManager
 
ImqQueue m_Queue
 
ImqQueue m_BackupQueue
 
ImqQueue m_BackoutQueue
 
ImqChannel m_Channel
 
long m_QueueManagerCCSID
 
long m_QueueManagerEncoding
 
bool m_ConversionNeeded
 
long m_QueueManagerPlatform
 
long m_OpenOption
 
string m_ConnectionString
 
long m_MessageType
 
long m_DataOffset
 
long m_ReplyOptions
 
string m_ReplyQueueManager
 
string m_MessageFormat
 
bool m_UseSyncpoint
 
int m_QueueManagerOpenRefCount
 

Additional Inherited Members

- Public Types inherited from FinTP::TransportHelper
enum  TRANSPORT_HELPER_TYPE { WMQ = 1, AMQ = 2, AQ = 3, NONE = 0 }
 
enum  TRANSPORT_MESSAGE_TYPE { TMT_DATAGRAM = 0, TMT_REPLY = 1, TMT_REQUEST = 2, TMT_REPORT = 3 }
 
- Static Public Attributes inherited from FinTP::TransportHelper
static const string TMT_STRING = "TMT_STRING"
 
static const string TMT_RF_HEADER_2 = "TMT_RF_HEADER_2"
 
static const string TMT_NONE = ""
 
- Protected Member Functions inherited from FinTP::TransportHelper
 TransportHelper (unsigned int messageIdLength)
 Private ctor. More...
 
- Protected Attributes inherited from FinTP::TransportHelper
const unsigned int m_MessageIdLength
 
string m_QueueName
 
string m_MessageId
 
string m_CorrelationId
 
string m_GroupId
 
int m_GroupSequence
 
bool m_UsePassedMessageId
 
bool m_UsePassedCorrelId
 
bool m_UsePassedGroupId
 
bool m_UsePassedAppName
 
string m_MessagePutDate
 
string m_MessagePutTime
 
string m_ReplyQueue
 
int m_QueueOpenRefCount
 
long long m_Feedback
 
bool m_LastInGroup
 
string m_ReplyUsrData
 
string m_ApplicationName
 
string m_SSLKeyRepository
 
string m_SSLCypherSpec
 
string m_SSLPeerName
 
unsigned int m_MessageLength
 
int m_AutoAbandon
 
string m_BackupQueueName
 
bool m_SaveBackup
 

Constructor & Destructor Documentation

WMqHelper::WMqHelper ( )
WMqHelper::~WMqHelper ( )

Member Function Documentation

void WMqHelper::beginXATransaction ( )
void WMqHelper::clearMessages ( )
virtual
void WMqHelper::clearSSLOptions ( )
virtual
void WMqHelper::closeBackoutQueue ( )
void WMqHelper::closeBackupQueue ( )
void WMqHelper::closeQueue ( )
bool WMqHelper::commit ( )
virtual
void WMqHelper::connect ( const string &  queueManagerName = "",
const string &  channelDefinition = "",
bool  force = false 
)
virtual
void WMqHelper::connect ( const string &  queueManagerName,
const string &  channelDefinition,
const string &  keyRepository,
const string &  sslCypherSpec,
const string &  sslPeerName,
bool  force = false 
)
virtual

Reimplemented from FinTP::TransportHelper.

ImqBinary WMqHelper::createBinary ( void *  value)
static
void WMqHelper::disconnect ( )
virtual
string FinTP::WMqHelper::getApplicationName ( ) const
inlinevirtual

Set message header value when message end up in Dead.letter.queue.

Implements FinTP::TransportHelper.

long WMqHelper::getGroupMessage ( ManagedBuffer *  groupMessageBuffer,
const string &  groupId,
bool &  isCleaningUp 
)
virtual

interface declared, handling group messages methods

Implements FinTP::TransportHelper.

long FinTP::WMqHelper::getLastDataOffset ( ) const
inlineprivate
string WMqHelper::getLastMessageFormat ( ) const
virtual
TRANSPORT_MESSAGE_TYPE FinTP::WMqHelper::getLastMessageType ( )
inlinevirtual
TransportReplyOptions WMqHelper::getLastReplyOptions ( ) const
virtual

TODO getLastReplyOptions to return ReplyOptions type.

Implements FinTP::TransportHelper.

string FinTP::WMqHelper::getLastReplyQueueManager ( ) const
inlinevirtual
long WMqHelper::getOne ( unsigned char *  buffer,
size_t  maxSize,
bool  syncpoint = true 
)
virtual

interface declared gets messages

Implements FinTP::TransportHelper.

long WMqHelper::getOne ( ManagedBuffer *  buffer,
bool  syncpoint = true,
bool  keepJMSHeader = true 
)
virtual

Pull one message from MQ Server and return it in 'ManagedBuffer* buffer'.

Syncpoit participation is mandatory if transaction should be controlled by application Is method responsibility to set all ids for currently fetch message ( i.e m_MessageId, m_CorrelationId )

Parameters
ManagedBuffer*buffer:returned MQ message
boolsyncpoint: true value, make the operation part of unit of work spanned over multiple operation
boolkeepJMSHeader: true value, make MQ header part of buffer

Implements FinTP::TransportHelper.

long WMqHelper::getOne ( unsigned char *  buffer,
size_t  maxSize,
ImqGetMessageOptions &  gmo 
)

overloads

long WMqHelper::getOne ( unsigned char *  buffer,
size_t  maxSize,
ImqGetMessageOptions &  gmo,
ImqMessage &  msg 
)
long WMqHelper::getOne ( ManagedBuffer *  buffer,
ImqGetMessageOptions &  gmo 
)
long WMqHelper::getOne ( ManagedBuffer *  buffer,
ImqGetMessageOptions &  gmo,
ImqMessage &  msg,
bool  getForClean = false,
bool  keepJMSHeader = true 
)
long WMqHelper::getOpenInputCount ( string  queueName = "")
long WMqHelper::getOpenOutputCount ( string  queueName = "")
long WMqHelper::getQueueDepth ( const string &  queueName = "")
virtual
unsigned int WMqHelper::InjectJMSHeader ( ImqMessage &  msg)
private
void WMqHelper::openBackoutQueue ( string  queueName)
void WMqHelper::openBackupQueue ( )
void WMqHelper::openQueue ( const string &  queueName = "")
long WMqHelper::ParseReplyOptions ( const TransportReplyOptions options)
private
long WMqHelper::peek ( const string &  queue = "",
bool  first = true 
)
virtual

interface declared peek

Implements FinTP::TransportHelper.

void WMqHelper::putGroupMessage ( ManagedBuffer *  buffer,
const string &  batchId,
long  messageSequence,
bool  isLast 
)
virtual
void WMqHelper::putOne ( unsigned char *  buffer,
size_t  bufferSize,
bool  syncpoint = true 
)
virtual

interface declared put messages

Implements FinTP::TransportHelper.

void WMqHelper::putOne ( unsigned char *  buffer,
size_t  bufferSize,
ImqPutMessageOptions &  pmo 
)

overloads

void WMqHelper::putOne ( unsigned char *  buffer,
size_t  bufferSize,
ImqPutMessageOptions &  pmo,
ImqMessage &  msg 
)
void WMqHelper::putOne ( ManagedBuffer *  buffer,
ImqPutMessageOptions &  pmo,
ImqMessage &  msg 
)
void WMqHelper::putOneReply ( unsigned char *  buffer,
size_t  bufferSize = 0,
long  feedback = 0,
TRANSPORT_MESSAGE_TYPE  replyType = TMT_REPLY 
)
virtual
void WMqHelper::putOneReply ( ManagedBuffer *  buffer,
long  feedback 
)

overloads

void WMqHelper::putOneRequest ( unsigned char *  buffer,
size_t  bufferSize,
const string &  rtqName,
const string &  rtqmName,
TransportReplyOptions replyOptions 
)
virtual

interface declared request/reply

Implements FinTP::TransportHelper.

void WMqHelper::putSAAmessage ( const TransportReplyOptions replyOptions,
const string &  replyQueue,
ManagedBuffer *  buffer,
const string &  batchId,
long  messageSequence,
bool  isLast 
)
virtual

Reimplemented from FinTP::TransportHelper.

void WMqHelper::putToDeadLetterQueue ( ImqMessage &  msg)
bool WMqHelper::rollback ( )
virtual
void WMqHelper::setApplicationName ( const string &  applicationName)
virtual
void WMqHelper::setChannel ( )
private
void WMqHelper::setMessageFormat ( const string &  format)
virtual
void WMqHelper::setOpenQueueOptions ( const long &  openOptions)
private
void WMqHelper::setSyncPointParticipation ( ImqPutMessageOptions &  pmo,
unsigned char  value 
)
static
void WMqHelper::setSyncPointParticipation ( ImqGetMessageOptions &  gmo,
unsigned char  value 
)
static
unsigned int WMqHelper::StripJMSHeader ( ImqMessage &  msg,
string &  msgFormat 
) const
private
TransportHelper::TRANSPORT_MESSAGE_TYPE WMqHelper::ToTransportMessageType ( long  messageType)
private

Member Data Documentation

ImqQueue FinTP::WMqHelper::m_BackoutQueue
private
ImqQueue FinTP::WMqHelper::m_BackupQueue
private
ImqChannel FinTP::WMqHelper::m_Channel
private
string FinTP::WMqHelper::m_ConnectionString
private
bool FinTP::WMqHelper::m_ConversionNeeded
private
long FinTP::WMqHelper::m_DataOffset
private
string FinTP::WMqHelper::m_MessageFormat
private
long FinTP::WMqHelper::m_MessageType
private
long FinTP::WMqHelper::m_OpenOption
private
ImqQueue FinTP::WMqHelper::m_Queue
private
ImqQueueManager FinTP::WMqHelper::m_QueueManager
private
long FinTP::WMqHelper::m_QueueManagerCCSID
private
long FinTP::WMqHelper::m_QueueManagerEncoding
private
int FinTP::WMqHelper::m_QueueManagerOpenRefCount
private
long FinTP::WMqHelper::m_QueueManagerPlatform
private
long FinTP::WMqHelper::m_ReplyOptions
private
string FinTP::WMqHelper::m_ReplyQueueManager
private
bool FinTP::WMqHelper::m_UseSyncpoint
private

The documentation for this class was generated from the following files: