|
| | PRFC822Channel (Direction direction) |
| | Construct a RFC822 aware channel. More...
|
| |
| | ~PRFC822Channel () |
| | Close the channel before destruction. More...
|
| |
| PBoolean | Close () |
| | Close the channel. More...
|
| |
| virtual PBoolean | Write (const void *buf, PINDEX len) |
| | Low level write to the channel. More...
|
| |
| void | NewMessage (Direction direction) |
| | Begin a new message. More...
|
| |
| PString | MultipartMessage () |
| | Enter multipart MIME message mode. More...
|
| |
| PBoolean | MultipartMessage (const PString &boundary) |
| | Enter multipart MIME message mode. More...
|
| |
| void | NextPart (const PString &boundary) |
| | Indicate that a new multipart message part is to begin. More...
|
| |
| void | SetFromAddress (const PString &fromAddress) |
| | Set the sender address. More...
|
| |
| void | SetToAddress (const PString &toAddress) |
| | Set the recipient address(es). More...
|
| |
| void | SetCC (const PString &ccAddress) |
| | Set the Carbon Copy address(es). More...
|
| |
| void | SetBCC (const PString &bccAddress) |
| | Set the Blind Carbon Copy address(es). More...
|
| |
| void | SetSubject (const PString &subject) |
| | Set the message subject. More...
|
| |
| void | SetContentType (const PString &contentType) |
| | Set the content type. More...
|
| |
| void | SetContentAttachment (const PFilePath &filename) |
| | Set the content disposition for attachments. More...
|
| |
| void | SetTransferEncoding (const PString &encoding, PBoolean autoTranslate=true) |
| | Set the content transfer encoding. More...
|
| |
| void | SetHeaderField (const PString &name, const PString &value) |
| | Set the and arbitrary header field. More...
|
| |
| PBoolean | SendWithSMTP (const PString &hostname) |
| | Send this message using an SMTP socket. More...
|
| |
| PBoolean | SendWithSMTP (PSMTPClient *smtp) |
| | Send this message using an SMTP socket. More...
|
| |
| | PIndirectChannel () |
| | Create a new indirect channel without any channels to redirect to. More...
|
| |
| | ~PIndirectChannel () |
| | Close the indirect channel, deleting read/write channels if desired. More...
|
| |
| Comparison | Compare (const PObject &obj) const |
| | Determine if the two objects refer to the same indirect channel. More...
|
| |
| virtual PString | GetName () const |
| | Get the name of the channel. More...
|
| |
| virtual P_INT_PTR | GetHandle () const |
| | Get the OS specific handle for the PSoundChannel. More...
|
| |
| virtual PBoolean | IsOpen () const |
| | Determine if the channel is currently open and read and write operations can be executed on it. More...
|
| |
| virtual PBoolean | Read (void *buf, PINDEX len) |
| | Low level read from the channel. More...
|
| |
| virtual int | ReadChar () |
| | Read a single character from the channel. More...
|
| |
| virtual PBoolean | Shutdown (ShutdownValue option) |
| | Close one or both of the data streams associated with a channel. More...
|
| |
| virtual bool | SetLocalEcho (bool localEcho) |
| | Set local echo mode. More...
|
| |
| virtual PChannel * | GetBaseReadChannel () const |
| | This function returns the eventual base channel for reading of a series of indirect channels provided by descendents of PIndirectChannel. More...
|
| |
| virtual PChannel * | GetBaseWriteChannel () const |
| | This function returns the eventual base channel for writing of a series of indirect channels provided by descendents of PIndirectChannel. More...
|
| |
| virtual PString | GetErrorText (ErrorGroup group=NumErrorGroups) const |
| | Get error message description. More...
|
| |
| PBoolean | Open (PChannel &channel) |
| | Set the channel for both read and write operations. More...
|
| |
| PBoolean | Open (PChannel *channel, PBoolean autoDelete=true) |
| | Set the channel for both read and write operations. More...
|
| |
| PBoolean | Open (PChannel *readChannel, PChannel *writeChannel, PBoolean autoDeleteRead=true, PBoolean autoDeleteWrite=true) |
| | Set the channel for both read and write operations. More...
|
| |
| PChannel * | Detach (ShutdownValue option=ShutdownReadAndWrite) |
| | Detach without closing the read/write channel. More...
|
| |
| PChannel * | GetReadChannel () const |
| | Get the channel used for read operations. More...
|
| |
| bool | SetReadChannel (PChannel *channel, bool autoDelete=true, bool closeExisting=false) |
| | Set the channel for read operations. More...
|
| |
| PChannel * | GetWriteChannel () const |
| | Get the channel used for write operations. More...
|
| |
| PBoolean | SetWriteChannel (PChannel *channel, bool autoDelete=true, bool closeExisting=false) |
| | Set the channel for read operations. More...
|
| |
| PBoolean | SetErrorValues (Errors errorCode, int osError, ErrorGroup group=LastGeneralError) |
| | Set error values to those specified. More...
|
| |
| virtual PINDEX | HashFunction () const |
| | Calculate a hash value for use in sets and dictionaries. More...
|
| |
| FILE * | FDOpen (const char *mode) |
| | Re-open the device using the stdio library. More...
|
| |
| void | SetReadTimeout (const PTimeInterval &time) |
| | Set the timeout for read operations. More...
|
| |
| PTimeInterval | GetReadTimeout () const |
| | Get the timeout for read operations. More...
|
| |
| PINDEX | GetLastReadCount () const |
| | Get the number of bytes read by the last Read() call. More...
|
| |
| PBoolean | ReadBlock (void *buf, PINDEX len) |
| | Read len bytes into the buffer from the channel. More...
|
| |
| PString | ReadString (PINDEX len) |
| | Read len character into a string from the channel. More...
|
| |
| void | SetWriteTimeout (const PTimeInterval &time) |
| | Set the timeout for write operations to complete. More...
|
| |
| PTimeInterval | GetWriteTimeout () const |
| | Get the timeout for write operations to complete. More...
|
| |
| virtual PBoolean | Write (const void *buf, PINDEX len, const void *) |
| | Low level write to the channel with marker. More...
|
| |
| virtual PINDEX | GetLastWriteCount () const |
| | Get the number of bytes written by the last Write() call. More...
|
| |
| PBoolean | WriteChar (int c) |
| | Write a single character to the channel. More...
|
| |
| PBoolean | WriteString (const PString &str) |
| | Write a string to the channel. More...
|
| |
| | ~PChannel () |
| | Close down the channel. More...
|
| |
| Errors | GetErrorCode (ErrorGroup group=NumErrorGroups) const |
| | Get normalised error code. More...
|
| |
| int | GetErrorNumber (ErrorGroup group=NumErrorGroups) const |
| | Get OS errro code. More...
|
| |
| virtual bool | ReadAsync (AsyncContext &context) |
| | Begin an asynchronous read from channel. More...
|
| |
| virtual void | OnReadComplete (AsyncContext &context) |
| | User callback function for when a ReadAsync() call has completed or timed out. More...
|
| |
| virtual bool | WriteAsync (AsyncContext &context) |
| | Begin an asynchronous write from channel. More...
|
| |
| virtual void | OnWriteComplete (AsyncContext &context) |
| | User callback function for when a WriteAsync() call has completed or timed out. More...
|
| |
| virtual bool | FlowControl (const void *flowData) |
| | Flow Control information Pass data to the channel for flowControl determination. More...
|
| |
| PBoolean | SetBufferSize (PINDEX newSize) |
| | Set the iostream buffer size for reads and writes. More...
|
| |
| PBoolean | SendCommandString (const PString &command) |
| | Send a command meta-string. More...
|
| |
| void | AbortCommandString () |
| | Abort a command string that is in progress. More...
|
| |
| unsigned | GetTraceContextIdentifier () const |
| | Get PTRACE context identifier. More...
|
| |
| void | SetTraceContextIdentifier (unsigned id) |
| |
| void | GetTraceContextIdentifier (PObject &obj) |
| |
| void | GetTraceContextIdentifier (PObject *obj) |
| |
| void | SetTraceContextIdentifier (const PObject &obj) |
| |
| void | SetTraceContextIdentifier (const PObject *obj) |
| |
| virtual | ~PObject () |
| |
| virtual PObject * | Clone () const |
| | Create a copy of the class on the heap. More...
|
| |
| template<class CLS > |
| CLS * | CloneAs () const |
| | As for Clone() but converts to specified type. More...
|
| |
| virtual const char * | GetClass (unsigned ancestor=0) const |
| | Get the current dynamic type of the object instance. More...
|
| |
| PBoolean | IsClass (const char *cls) const |
| |
| virtual PBoolean | InternalIsDescendant (const char *clsName) const |
| | Determine if the dynamic type of the current instance is a descendent of the specified class. More...
|
| |
| __inline const PObject * | PTraceObjectInstance () const |
| |
| virtual Comparison | CompareObjectMemoryDirect (const PObject &obj) const |
| | Determine the byte wise comparison of two objects. More...
|
| |
| bool | operator== (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator!= (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator< (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator> (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator<= (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator>= (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| virtual void | PrintOn (ostream &strm) const |
| | Output the contents of the object to the stream. More...
|
| |
| virtual void | ReadFrom (istream &strm) |
| | Input the contents of the object from the stream. More...
|
| |
A channel for sending/receiving RFC822 compliant mail messages.
This encpsulates all that is required to send an RFC822 compliant message via another channel. It automatically adds/strips header information from the stream so the Read() and Write() functions only deal with the message body. For example to send a message using the SMTP classes: PSMTPClient mail("mailserver"); if (mail.IsOpen()) { PRFC822Channel message; message.SetFromAddress("Me@here.com.au"); message.SetToAddress("Fred@somwhere.com"); if (message.Open(mail)) { if (mail.BeginMessage("Me@here.com.au", "Fred@somwhere.com")) { if (!message.Write(myMessageBody)) PError << "Mail write failed." << endl; if (!message.EndMessage()) PError << "Mail send failed." << endl; } } } else PError << "Mail conection failed." << endl;