Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

ACE_FILE_Connector Class Reference

Defines an active connection factory for the ACE_FILE wrappers. More...

#include <FILE_Connector.h>

List of all members.

Public Types

typedef ACE_FILE_Addr PEER_ADDR
typedef ACE_FILE_IO PEER_STREAM

Public Methods

 ACE_FILE_Connector (void)
 Default constructor.

 ACE_FILE_Connector (ACE_FILE_IO &new_io, const ACE_FILE_Addr &remote_sap, ACE_Time_Value *timeout=0, const ACE_Addr &local_sap=ACE_Addr::sap_any, int reuse_addr=0, int flags=O_RDWR|O_CREAT, int perms=ACE_DEFAULT_FILE_PERMS)
int connect (ACE_FILE_IO &new_io, const ACE_FILE_Addr &remote_sap, ACE_Time_Value *timeout=0, const ACE_Addr &local_sap=ACE_Addr::sap_any, int reuse_addr=0, int flags=O_RDWR|O_CREAT, int perms=ACE_DEFAULT_FILE_PERMS)
int reset_new_handle (ACE_HANDLE handle)
 Resets any event associations on this handle.

void dump (void) const
 Dump the state of an object.


Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.


Detailed Description

Defines an active connection factory for the ACE_FILE wrappers.

Note that the O_APPEND flag is only partly supported on Win32. If you specify O_APPEND, then the file pointer will be positioned at the end of the file initially during open, but it is not re-positioned at the end prior to each write, as specified by POSIX. This is generally good enough for typical situations, but it is ``not quite right'' in its semantics.


Member Typedef Documentation

typedef ACE_FILE_Addr ACE_FILE_Connector::PEER_ADDR
 

typedef ACE_FILE_IO ACE_FILE_Connector::PEER_STREAM
 


Constructor & Destructor Documentation

ACE_FILE_Connector::ACE_FILE_Connector void   
 

Default constructor.

ASYS_INLINE ACE_FILE_Connector::ACE_FILE_Connector ACE_FILE_IO   new_io,
const ACE_FILE_Addr   remote_sap,
ACE_Time_Value   timeout = 0,
const ACE_Addr   local_sap = ACE_Addr::sap_any,
int    reuse_addr = 0,
int    flags = O_RDWR|O_CREAT,
int    perms = ACE_DEFAULT_FILE_PERMS
 

Actively ``connect'' and produce a <new_io> <ACE_FILE_IO> object if things go well. The <remote_sap> is the file that we are trying to create/open. If it's the default value of <ACE_Addr::sap_any> then the user is letting the OS create the filename (via <ACE_OS::mktemp>). The <timeout> is the amount of time to wait to create/open the file. If it's 0 then we block indefinitely. If *timeout == {0, 0} then the file is created using non-blocking mode. In this case, if the create/open can't be done immediately the value of -1 is returned with <errno == EWOULDBLOCK>. If *timeout > {0, 0} then this is the maximum amount of time to wait before timing out. If the time expires before the connection is made <errno == ETIME>. The <local_sap> and <reuse_addr> parameters are ignored. The <flags> and <perms> arguments are passed down to the <ACE_OS::open> method.


Member Function Documentation

int ACE_FILE_Connector::connect ACE_FILE_IO   new_io,
const ACE_FILE_Addr   remote_sap,
ACE_Time_Value   timeout = 0,
const ACE_Addr   local_sap = ACE_Addr::sap_any,
int    reuse_addr = 0,
int    flags = O_RDWR|O_CREAT,
int    perms = ACE_DEFAULT_FILE_PERMS
 

Actively ``connect'' and produce a <new_io> <ACE_FILE_IO> object if things go well. The <remote_sap> is the file that we are trying to create/open. If it's the default value of <ACE_Addr::sap_any> then the user is letting the OS create the filename (via <ACE_OS::mktemp>). The <timeout> is the amount of time to wait to create/open the file. If it's 0 then we block indefinitely. If *timeout == {0, 0} then the file is created using non-blocking mode. In this case, if the create/open can't be done immediately the value of -1 is returned with <errno == EWOULDBLOCK>. If *timeout > {0, 0} then this is the maximum amount of time to wait before timing out. If the time expires before the connection is made <errno == ETIME>. The <local_sap> and <reuse_addr> parameters are ignored. The <flags> and <perms> arguments are passed down to the <ACE_OS::open> method.

void ACE_FILE_Connector::dump void    const
 

Dump the state of an object.

ASYS_INLINE int ACE_FILE_Connector::reset_new_handle ACE_HANDLE    handle
 

Resets any event associations on this handle.


Member Data Documentation

ACE_FILE_Connector::ACE_ALLOC_HOOK_DECLARE
 

Declare the dynamic allocation hooks.


The documentation for this class was generated from the following files:
Generated on Fri Apr 2 16:48:37 2004 for ACE by doxygen1.2.18