NAME
ACE_Name_Request -
Message format for delivering requests to the ACE_Name Server.
SYNOPSIS
#include <ACE/ACE_Name_Request_Reply.h>
class ACE_Name_Request
{
public:
enum Constants{ BIND = 01,
REBIND = 02,
RESOLVE = 03,
UNBIND = 04,
LIST_NAMES = 05,
LIST_VALUES = 015,
LIST_TYPES = 025,
LIST_NAME_ENTRIES = 06,
LIST_VALUE_ENTRIES = 016,
LIST_TYPE_ENTRIES = 026,
MAX_ENUM = 11,
MAX_LIST = 3,
OP_TABLE_MASK = 07,
LIST_OP_MASK = 030,
MAX_NAME_LEN = MAXPATHLEN + 1 };
ACE_Name_Request (void);
ACE_Name_Request (
ACE_UINT32 msg_type,
const ACE_USHORT16 name[],
const size_t name_length,
const ACE_USHORT16 value[],
const size_t value_length,
const char type[],
const size_t type_length,
ACE_Time_Value *timeout = 0
);
void init (void);
ACE_UINT32 length (void) const;
void length (ACE_UINT32);
ACE_UINT32 msg_type (void) const;
void msg_type (ACE_UINT32);
ACE_UINT32 block_forever (void) const;
void block_forever (ACE_UINT32);
ACE_Time_Value timeout (void) const;
void timeout (const ACE_Time_Value timeout);
const ACE_USHORT16 *name (void) const;
void name (const ACE_USHORT16 *);
const ACE_USHORT16 *value (void) const;
void value (const ACE_USHORT16 *);
const char *type (void) const;
void type (const char *);
ACE_UINT32 name_len (void) const;
void name_len (ACE_UINT32);
ACE_UINT32 value_len (void) const;
void value_len (ACE_UINT32);
ACE_UINT32 type_len (void) const;
void type_len (ACE_UINT32);
int encode (void *&);
int decode (void);
void dump (void) const;
private:
Transfer transfer_;
ACE_USHORT16 *name_;
ACE_USHORT16 *value_;
char *type_;
};
DESCRIPTION
This class is implemented to minimize data copying.
In particular, all marshaling is done in situ...
Set/get the length of the encoded/decoded message.
ACE_UINT32 length (void) const;
void length (ACE_UINT32);
Set/get the type of the message.
ACE_UINT32 msg_type (void) const;
void msg_type (ACE_UINT32);
Set/get the blocking semantics.
ACE_UINT32 block_forever (void) const;
void block_forever (ACE_UINT32);
Set/get the timeout.
ACE_Time_Value timeout (void) const;
void timeout (const ACE_Time_Value timeout);
Set/get the name
const ACE_USHORT16 *name (void) const;
void name (const ACE_USHORT16 *);
Set/get the value
const ACE_USHORT16 *value (void) const;
void value (const ACE_USHORT16 *);
Set/get the type
const char *type (void) const;
void type (const char *);
Set/get the len of name
ACE_UINT32 name_len (void) const;
void name_len (ACE_UINT32);
Set/get the len of value
ACE_UINT32 value_len (void) const;
void value_len (ACE_UINT32);
Set/get the len of type
ACE_UINT32 type_len (void) const;
void type_len (ACE_UINT32);
int encode (void *&);
Encode the message before transmission.
int decode (void);
Decode message after reception.
void dump (void) const;
Print out the values of the message for debugging purposes.
DESCRIPTION
Define the format used to exchange messages between the
ACE_Name Server and its clients.
AUTHOR
Gerhard Lenzer, Douglas C. Schmidt, and Prashant Jain
LIBRARY
ACE