Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

SecurePlayLibrary::SPAbstractTransactionAPIInterface Class Reference

#include <SPAbstractTransactionAPIInterface.h>

Inheritance diagram for SecurePlayLibrary::SPAbstractTransactionAPIInterface:

SecurePlayLibrary::SPAbstractTransactionAPIClass SecurePlayLibrary::SPTBlastAPIClass SecurePlayLibrary::SPTMultiPartSecretAPIClass SecurePlayLibrary::SPTMultiPartSimultaneousAPIClass SecurePlayLibrary::SPTMultistepTurnAPIClass SecurePlayLibrary::SPTRandomAPIClass SecurePlayLibrary::SPTSecretAPIClass SecurePlayLibrary::SPTSimultaneousAPIClass SecurePlayLibrary::SPTStrobeAPIClass List of all members.

Detailed Description

This is the interface for all the transaction APIs including abstract.
Author:
IT GlobalSecure
See also:
SecurePlay License Information


Public Member Functions

virtual ~SPAbstractTransactionAPIInterface ()
virtual bool APIbeginTransaction (string pid)=0
virtual bool APIcompleteTransaction (string pid)=0
virtual bool APIconfigureTransaction (string pid, vector< string > args)=0
virtual bool APIrequestbeginTransaction (string pid)=0
virtual bool APIrequestCompleteTransaction (string pid)=0
virtual bool APIrequestconfigureTransaction (string pid, vector< string > args)=0
virtual bool rulesbeginTransaction (string pid, SPAbstractTransactionInterface *transobj)=0
virtual bool rulescompleteTransaction (string pid, SPAbstractTransactionInterface *transobj)=0
virtual bool rulesconfigureTransaction (string pid, vector< string > configarr, SPAbstractTransactionInterface *transobj)=0
virtual bool APIAddListener (SPEventInterface *gameobj)=0
virtual bool APIRemoveListener (SPEventInterface *gameobj)=0
virtual vector< SPEventInterface * > APIGetListeners ()=0
virtual bool APIClearListeners ()=0
virtual int APIGetListenerCount ()=0
virtual string APISPawn (string pid)=0
virtual SPAbstractTransactionInterfacegetTransactioninstance ()=0


Constructor & Destructor Documentation

virtual SecurePlayLibrary::SPAbstractTransactionAPIInterface::~SPAbstractTransactionAPIInterface  )  [inline, virtual]
 

Virtual Destructor.


Member Function Documentation

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIAddListener SPEventInterface gameobj  )  [pure virtual]
 

This method adds a listener object for Game API events

Parameters:
gameobj SPEventInterface* - the object to be added, that inplement the listener interface
Returns:
bool- TRUE, if successful, FALSE, if not

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIbeginTransaction string  pid  )  [pure virtual]
 

This action can only be initiated by the Transaction master. It sends a "beginTransaction" message to all of the transaction participants. A Transaction can only be begun if it has been successfully configured.

Parameters:
pid string - id of the transaction beginner, must be the master and internal.
Returns:
bool: TRUE, if successful, FALSE, if not

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass, and SecurePlayLibrary::SPTBlastAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIClearListeners  )  [pure virtual]
 

This method clears the listener objects for Game API events

Returns:
bool - TRUE, if successful, FALSE, if not

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIcompleteTransaction string  pid  )  [pure virtual]
 

This method allows the Transaction Master ONLY to complete the transaction. Transactions that are in an error state cannot be cleared by completion.

Parameters:
pid string - id of the player who is completing the transaction, must be the master and internal.
Returns:
bool: TRUE, if successful, FALSE, if not.

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass, SecurePlayLibrary::SPTBlastAPIClass, and SecurePlayLibrary::SPTRandomAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIconfigureTransaction string  pid,
vector< string >  args
[pure virtual]
 

This method allows the Transaction Master ONLY to configure the transactions unique parameters. NOTE, this method will be overridden for individual transaction types.

Parameters:
pid string - id of the configurer, must be internal.
args vector<string> - the configuration array, with configuration details inside.
Returns:
bool: TRUE if successful, FALSE, if unsuccessful

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass, SecurePlayLibrary::SPTBlastAPIClass, and SecurePlayLibrary::SPTRandomAPIClass.

virtual int SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIGetListenerCount  )  [pure virtual]
 

This method returns the number of listener objects for Game API events

Returns:
int - the number of listeners

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass.

virtual vector<SPEventInterface*> SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIGetListeners  )  [pure virtual]
 

This method returns a list of listener objects for Game API events

Returns:
vector<SPEventInterface*> - array of listener objects

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIRemoveListener SPEventInterface gameobj  )  [pure virtual]
 

This method removes a listener object for Game API events

Parameters:
gameobj SPEventInterface* - the object to be removed, that inplement the listener interface

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIrequestbeginTransaction string  pid  )  [pure virtual]
 

This method allows any transaction participant excluding the Transaction master to request that the transaction be begun. This can only be done after the transaction has been configured.

Parameters:
pid string - the id of the requestor, can not be master, must be internal
Returns:
bool: TRUE, if successful, FALSE, if not

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass, and SecurePlayLibrary::SPTBlastAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIrequestCompleteTransaction string  pid  )  [pure virtual]
 

This method allows any player, excluding the Transaction master to request that the transactoin be completed.

Parameters:
pid string - id of the requestor, can not be the master, must be internal.
Returns:
bool: TRUE, if successful, FALSE, if not

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass, and SecurePlayLibrary::SPTBlastAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::APIrequestconfigureTransaction string  pid,
vector< string >  args
[pure virtual]
 

This method allows any player, excluding the Transaction master, to request that the transaction be configured as described in the configuration array.

Parameters:
pid string - the configure requestor, can not be the master, must be internal.
args vector<string> - the configuration array, with configuration details.
Returns:
bool: TRUE, if successful, FALSE, if not

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass, and SecurePlayLibrary::SPTBlastAPIClass.

virtual string SecurePlayLibrary::SPAbstractTransactionAPIInterface::APISPawn string  pid  )  [pure virtual]
 

This method creates a new transaction with the identical participants and configuration as the spawning transaction.

Parameters:
pid string - player id must be master of the transaction
Returns:
string - transaction id of the new spawned transaction.

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass.

virtual SPAbstractTransactionInterface* SecurePlayLibrary::SPAbstractTransactionAPIInterface::getTransactioninstance  )  [pure virtual]
 

Getter function that gets the transaction instance

Returns:
traninstance - SPAbstractTransactionInterface*

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::rulesbeginTransaction string  pid,
SPAbstractTransactionInterface transobj
[pure virtual]
 

This shell method determines if an existing transaction object can be "begun" from a remote request.

Parameters:
pid string - player id of the transaction beginner
transobj SPAbstractTransactionInterface* - the transaction object to be begun
Returns:
bool: TRUE, if allowed, FALSE, if not

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::rulescompleteTransaction string  pid,
SPAbstractTransactionInterface transobj
[pure virtual]
 

This shell method handles remote requests to complete an existing transaction. Only the transaction master can actually complete the transaction.

Parameters:
pid string - player id of the completer of the transaction
transobj SPAbstractTransactionInterface* - the transaction object to be completed
Returns:
bool: TRUE, if allowed, FALSE, if not

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass.

virtual bool SecurePlayLibrary::SPAbstractTransactionAPIInterface::rulesconfigureTransaction string  pid,
vector< string >  configarr,
SPAbstractTransactionInterface transobj
[pure virtual]
 

This shell method supports remote requests to configure an existing transaction. Only the transaction master can actually configure the transaction.

Parameters:
pid string - player id of the configurer, must be the master
configarr vector<string> - the configuration array with the configuration details.
transobj SPAbstractTransactionInterface* - the transaction to be configured
Returns:
bool: TRUE, if allowed, FALSE, if not

Implemented in SecurePlayLibrary::SPAbstractTransactionAPIClass, and SecurePlayLibrary::SPTRandomAPIClass.


The documentation for this class was generated from the following file: 2006 Copyright Filed by IT GlobalSecure, Inc. All Rights Reserved. Not to be used without authorization by Author. SecurePlay, IT GlobalSecure, and IT Armor are registered trademarks by IT GlobalSecure, Inc. Software protected by software license, and one or more the following U.S. and International patent numbers: U.S. Patent 6,030,288, U.S. Patent 6,165,072, European Patent Office EP1016049A1,and World Intellectual Property Organization WO9912135C1 and additional filings worldwide.