NAME
Oorb::OrbConnectionTask - Base class for orb connection tasks in the oorb library
SYNOPSIS
-loorb $(ORBLIBS)
#include "oorb.h"
namespace Oorb
class OrbConnectionTask
DESCRIPTION
This page describes the
OrbConnectionTask, which is used within the
Oorb(3) library to manage all communications, data vetting and
morphing, etc. over one particular socket connection to an
orbserver(1).
The actual socket connection itself is represented by an
Oorb::OrbConnection(3) object, visible in the
OrbConnectionTask
as a public member named
m_orbConnection which is a
shared_ptr
to the
Oorb::OrbConnection(3).
The
OrbConnection class inherits from
Oorb::Task(3) and does
not itself implement the
run() method, thus this is merely a
base class for the derived classes
Oorb::OrbReaderTask(3) and
Oorb::OrbWriterTask(3).
CONSTRUCTORS
-
OrbConnectionTask( std::string taskName, OrbConnection::Direction direction )
The OrbConnectionTask constructor takes a string task name taskName,
which must be unique within the program. The direction argument may
be either READ or WRITE, which are enum values defined
by the Oorb::OrbConnection(3) class.
METHODS
-
void requestTaskPause( void );
-
void requestTaskContinue( void );
These two methods allow objects external to the OrbConnectionTask
to request that the dataflow through the object be either paused or continued.
OBJECT CONFIGURATION PARAMETERS
The
OrbConnectionTask object contains a public member
struct of
name
m_connectionParams which is defined as follows:
typedef struct connectionParamsStruct {
char* match_task;
char* reject_task;
char* direction; // redundant, supports parsing
char* name; // redundant, supports parsing
bool run;
} connectionParamsStruct;
-
match_task
The char* value match_task specifies a string matching expression
to be used with an underlying orbselect(3) call. The BUConfigure(3)
name of this parameter in configure calls should be match. The
_task suffix in the C++ variable name is intended to distinguish this
value, which is specific to the single orb connection being managed, from the
program-wide value configured in Oorb::Master(3).
-
reject_task
The char* value reject_task specifies a string reject expression
to be used with an underlying orbreject(3) call. The BUConfigure(3)
name of this parameter in configure calls should be reject. The
_task suffix in the C++ variable name is intended to distinguish this
value, which is specific to the single orb connection being managed, from the
program-wide value configured in Oorb::Master(3).
-
direction
The char* value direction specifies the string read
or write. This parameter is redundant and should not be referenced
by application programmers. It is kept here to support parsing.
-
name
The char* value name specifies the string name
of the OrbConnectionTask. This parameter is redundant and should not
be referenced by application programmers. It is kept here to support parsing.
-
run
The boolean value run indicates whether the
OrbConnectionTask is to start in a running (as opposed to paused or
shutdown) state.
LIBRARY
-loorb $(ORBLIBS)
ATTRIBUTES
MT-Safe
SEE ALSO
Oorb(3), Oorb::Task(3), Oorb::Master(3),
Oorb::OrbReaderTask(3), Oorb::OrbWriterTask(3)
BUGS AND CAVEATS
The
OrbConnectionTask class is not to be confused with the
Oorb::OrbConnection(3) class, the latter of which is merely
to represent an individual open orb socket and operations over it.
AUTHOR
Kent Lindquist