Defines the FILE address family address format. More...
#include <FILE_Addr.h>
Public Member Functions | |
ACE_FILE_Addr (void) | |
Default constructor. | |
ACE_FILE_Addr (const ACE_FILE_Addr &sa) | |
Copy constructor. | |
int | set (const ACE_FILE_Addr &sa) |
ACE_FILE_Addr (const ACE_TCHAR *filename) | |
Create a ACE_FILE_Addr from a pathname. | |
int | set (const ACE_TCHAR *filename) |
Create a ACE_FILE_Addr from a pathname. | |
ACE_FILE_Addr & | operator= (const ACE_FILE_Addr &) |
Assignment operator. | |
virtual void * | get_addr (void) const |
Return a pointer to the address. | |
virtual int | addr_to_string (ACE_TCHAR *addr, size_t) const |
Transform the current address into string format. | |
bool | operator== (const ACE_FILE_Addr &SAP) const |
Compare two addresses for equality. | |
bool | operator!= (const ACE_FILE_Addr &SAP) const |
Compare two addresses for inequality. | |
const ACE_TCHAR * | get_path_name (void) const |
Return the path name used for the rendezvous point. | |
void | dump (void) const |
Dump the state of an object. | |
Public Attributes | |
ACE_ALLOC_HOOK_DECLARE | |
Declare the dynamic allocation hooks. | |
Private Attributes | |
ACE_TCHAR | filename_ [MAXPATHLEN+1] |
Name of the file. |
Defines the FILE address family address format.
Definition at line 33 of file FILE_Addr.h.
ACE_FILE_Addr::ACE_FILE_Addr | ( | void | ) |
ACE_FILE_Addr::ACE_FILE_Addr | ( | const ACE_FILE_Addr & | sa | ) |
Copy constructor.
Definition at line 66 of file FILE_Addr.cpp.
ACE_FILE_Addr::ACE_FILE_Addr | ( | const ACE_TCHAR * | filename | ) | [explicit] |
Create a ACE_FILE_Addr from a pathname.
Definition at line 93 of file FILE_Addr.cpp.
{
this->set (filename);
}
int ACE_FILE_Addr::addr_to_string | ( | ACE_TCHAR * | addr, | |
size_t | len | |||
) | const [virtual] |
Transform the current address into string format.
Definition at line 99 of file FILE_Addr.cpp.
{ ACE_OS::strsncpy (s, this->filename_, len); return 0; }
void ACE_FILE_Addr::dump | ( | void | ) | const |
Dump the state of an object.
Reimplemented from ACE_Addr.
Definition at line 114 of file FILE_Addr.cpp.
void * ACE_FILE_Addr::get_addr | ( | void | ) | const [virtual] |
Return a pointer to the address.
Reimplemented from ACE_Addr.
Definition at line 108 of file FILE_Addr.cpp.
{ return (void *)&this->filename_; }
const ACE_TCHAR * ACE_FILE_Addr::get_path_name | ( | void | ) | const [inline] |
Return the path name used for the rendezvous point.
Definition at line 29 of file FILE_Addr.inl.
{ return this->filename_; }
bool ACE_FILE_Addr::operator!= | ( | const ACE_FILE_Addr & | SAP | ) | const [inline] |
Compare two addresses for inequality.
Definition at line 21 of file FILE_Addr.inl.
{ return !((*this) == sap); // This is lazy, of course... ;-) }
ACE_FILE_Addr & ACE_FILE_Addr::operator= | ( | const ACE_FILE_Addr & | sa | ) |
Assignment operator.
Definition at line 84 of file FILE_Addr.cpp.
{ if (this != &sa) this->set (sa); return *this; }
bool ACE_FILE_Addr::operator== | ( | const ACE_FILE_Addr & | SAP | ) | const [inline] |
Compare two addresses for equality.
Definition at line 13 of file FILE_Addr.inl.
{ return ACE_OS::strcmp (this->filename_, sap.filename_) == 0; }
int ACE_FILE_Addr::set | ( | const ACE_FILE_Addr & | sa | ) |
Acts like a copy constructor. If sa == ACE_Addr::sap_any then create a temporary filename using ACE_OS::mktemp.
Definition at line 27 of file FILE_Addr.cpp.
{ if (sa.get_type () == AF_ANY) { #if defined (ACE_DEFAULT_TEMP_FILE) // Create a temporary file. ACE_OS::strcpy (this->filename_, ACE_DEFAULT_TEMP_FILE); #else /* ACE_DEFAULT_TEMP_FILE */ if (ACE::get_temp_dir (this->filename_, MAXPATHLEN - 15) == -1) // -15 for ace-file-XXXXXX { ACE_ERROR ((LM_ERROR, ACE_TEXT ("Temporary path too long, ") ACE_TEXT ("defaulting to current directory\n"))); this->filename_[0] = 0; } // Add the filename to the end ACE_OS::strcat (this->filename_, ACE_TEXT ("ace-fileXXXXXX")); #endif /* ACE_DEFAULT_TEMP_FILE */ if (ACE_OS::mktemp (this->filename_) == 0) return -1; this->base_set (AF_FILE, static_cast<int> (ACE_OS::strlen (this->filename_) + 1)); } else { (void)ACE_OS::strsncpy (this->filename_, sa.filename_, sa.get_size ()); this->base_set (sa.get_type (), sa.get_size ()); } return 0; }
int ACE_FILE_Addr::set | ( | const ACE_TCHAR * | filename | ) |
Create a ACE_FILE_Addr from a pathname.
Definition at line 73 of file FILE_Addr.cpp.
{ this->ACE_Addr::base_set (AF_FILE, static_cast<int> (ACE_OS::strlen (filename) + 1)); (void) ACE_OS::strsncpy (this->filename_, filename, sizeof this->filename_ / sizeof (ACE_TCHAR)); return 0; }
Declare the dynamic allocation hooks.
Reimplemented from ACE_Addr.
Definition at line 75 of file FILE_Addr.h.
ACE_TCHAR ACE_FILE_Addr::filename_[MAXPATHLEN+1] [private] |
Name of the file.
Definition at line 79 of file FILE_Addr.h.