121 lines
3.9 KiB
C++
121 lines
3.9 KiB
C++
/*
|
|
* REVISIONS:
|
|
* pcy02Feb93: GetCode() needs to be const
|
|
* cad07Oct93: Plugging Memory Leaks
|
|
* cad29Oct93: Added get next attr
|
|
* mwh05May94: #include file madness , part 2
|
|
* mds10Jul97: changed GetFirstAttribute() to const so that it can be
|
|
* used by the Equal() method
|
|
*/
|
|
#ifndef __TRANS_H
|
|
#define __TRANS_H
|
|
|
|
_CLASSDEF(Attribute)
|
|
_CLASSDEF(TransactionObject)
|
|
_CLASSDEF(TransactionItem)
|
|
_CLASSDEF(TransactionGroup)
|
|
|
|
_CLASSDEF(Event)
|
|
_CLASSDEF(List)
|
|
_CLASSDEF(ListIterator)
|
|
_CLASSDEF(Message)
|
|
|
|
#include "apc.h"
|
|
#include "apcobj.h"
|
|
|
|
|
|
class TransactionObject : public Obj
|
|
{
|
|
protected:
|
|
Type theType;
|
|
INT theId;
|
|
List* theProtocolMessageList;
|
|
ListIterator* thePMIterator;
|
|
public:
|
|
TransactionObject(Type aType, INT anId);
|
|
virtual ~TransactionObject();
|
|
Type GetType() {return theType;};
|
|
INT GetId() const {return theId;};
|
|
List* GetProtocolMessageList() {return theProtocolMessageList;}
|
|
VOID AddMessage(PMessage aMessage);
|
|
VOID SetType(Type thetype) {theType = thetype;};
|
|
VOID SetId(INT id) {theId = id;}
|
|
};
|
|
|
|
|
|
|
|
class TransactionItem : public TransactionObject
|
|
{
|
|
private:
|
|
static INT transactionItemCount;
|
|
|
|
protected:
|
|
INT theCode;
|
|
CHAR *theValue;
|
|
INT theErrorCode;
|
|
List *theAttributeList;
|
|
ListIterator *theAttribIterator;
|
|
|
|
public:
|
|
TransactionItem(Type aType, INT aCode, CHAR* aValue = NULL);
|
|
virtual ~TransactionItem();
|
|
INT GetCode() const {return theCode;};
|
|
CHAR* GetValue() {return theValue;};
|
|
INT GetErrorCode() {return theErrorCode;};
|
|
List* GetAttributeList(){return theAttributeList;};
|
|
VOID SetValue(CHAR* aValue);
|
|
VOID SetCode(INT aCode) {theCode = aCode;};
|
|
VOID SetErrorCode(INT anErrorCode) {theErrorCode = anErrorCode;};
|
|
VOID AddAttribute(INT anAttributeCode, CHAR* aValue);
|
|
VOID AddAttribute(PAttribute anAttribute);
|
|
PAttribute GetFirstAttribute() const;
|
|
PAttribute GetNextAttribute();
|
|
virtual INT IsA() const { return TRANSACTIONITEM;}
|
|
virtual INT Equal( RObj ) const;
|
|
};
|
|
|
|
|
|
class TransactionGroup : public TransactionObject
|
|
{
|
|
private:
|
|
static INT transactionGroupCount;
|
|
protected:
|
|
CHAR* theAuthenticationString;
|
|
List* theEventList;
|
|
ListIterator *theEventIterator;
|
|
List* theTransactionList;
|
|
ListIterator *theTransactionIterator;
|
|
CHAR* theResponse;
|
|
CHAR* InitialSetResponse;
|
|
INT InitialSetResponseRepeated;
|
|
INT theErrorIndex;
|
|
INT theErrorCode;
|
|
|
|
public:
|
|
TransactionGroup(Type aType);
|
|
virtual ~TransactionGroup();
|
|
PTransactionItem GetFirstTransactionItem();
|
|
PTransactionItem GetNextTransactionItem();
|
|
PTransactionItem GetCurrentTransaction();
|
|
List* GetEventList() {return theEventList;}
|
|
List* GetTransactionItemList() {return theTransactionList;}
|
|
CHAR* GetAuthentication() {return theAuthenticationString;};
|
|
CHAR* GetResponse() {return theResponse;};
|
|
CHAR* GetInitialSetResponse() {return InitialSetResponse;}
|
|
INT GetInitialSetResponseRepeated() {return InitialSetResponseRepeated;}
|
|
INT GetErrorIndex() {return theErrorIndex;}
|
|
INT GetErrorCode() {return theErrorCode;};
|
|
VOID SetErrorCode(INT anErrorCode) {theErrorCode = anErrorCode;};
|
|
VOID SetResponse(CHAR* aString);
|
|
VOID SetAuthentication(CHAR* aString);
|
|
VOID SetInitialSetResponseRepeated(INT repeat);
|
|
VOID SetInitialSetResponse(CHAR* initialResponse);
|
|
VOID SetErrorIndex(INT index);
|
|
INT AddTransactionItem(PTransactionItem aTransaction);
|
|
INT AddEvent(PEvent anEvent);
|
|
virtual INT IsA() const { return TRANSACTIONGROUP;}
|
|
virtual INT Equal( RObj ) const;
|
|
};
|
|
#endif
|
|
|