Main Page | Class Hierarchy | Alphabetical List | Data Structures | File List | Data Fields | Globals

MCFTPmssg Class Reference

#include <MCFTPmssg.h>

Collaboration diagram for MCFTPmssg:

Collaboration graph
[legend]

Public Types

enum  MessageQual {
  messagequal_none = 0, messagequal_error = 1, messagequal_notfound = 2, messagequal_quoteonly = 3,
  messagequal_correction = 4, messagequal_notavailable = 5
}
enum  MessageType { messagetype_unknown = 0, messagetype_request = 1, messagetype_quote = 2, messagetype_mrasb = 3 }

Public Member Functions

MCFTPmssgcopy (const MCFTPmssg &rhs)
MCFTPheaderheader ()
 MCFTPmssg (const MCFTPmssg &rhs)
 MCFTPmssg ()
int mcftpsizeb ()
MessageQual messagequal ()
MessageType messagetype ()
MCFTPmssgoperator() (MCFTPheader &, MessageQual, MCFTPrequest &, MCFTPquote &, MRAsbBase &, char *="")
MCFTPmssgoperator() (MCFTPheader &, MCFTPrequest &, MCFTPquote &, MRAsbBase &, char *="")
MCFTPmssgoperator() (MCFTPheader &, MessageQual, MCFTPrequest &, MCFTPquote &, char *="")
MCFTPmssgoperator() (MCFTPheader &, MCFTPrequest &, MCFTPquote &, char *="")
MCFTPmssgoperator() (MCFTPheader &, MessageQual, MCFTPrequest &, char *="")
MCFTPmssgoperator() (MCFTPheader &, MCFTPrequest &, char *="")
MCFTPmssgoperator() (MCFTPheader &, MessageQual, MCFTPrequest &, MCFTPquote &, MRAsbBase &, string &)
MCFTPmssgoperator() (MCFTPheader &, MCFTPrequest &, MCFTPquote &, MRAsbBase &, string &)
MCFTPmssgoperator() (MCFTPheader &, MessageQual, MCFTPrequest &, MCFTPquote &, string &)
MCFTPmssgoperator() (MCFTPheader &, MCFTPrequest &, MCFTPquote &, string &)
MCFTPmssgoperator() (MCFTPheader &, MessageQual, MCFTPrequest &, string &)
MCFTPmssgoperator() (MCFTPheader &, MCFTPrequest &, string &)
MCFTPmssgoperator() ()
MCFTPmssgoperator() (const MCFTPmssg &)
MCFTPmssgoperator<< (istream &)
MCFTPmssgoperator<< (BufferBase &)
MCFTPmssgoperator= (const MCFTPmssg &rhs)
MCFTPmssgoperator>> (ostream &)
MCFTPmssgoperator>> (BufferBase &)
string & postscript ()
MCFTPquotequote ()
void read (ostream &)
void read (BufferBase &)
MCFTPrequestrequest ()
MRAsbBasesb ()
void set_header (MCFTPheader &)
void set_messagequal (MessageQual)
void set_messagetype (MessageType)
void set_postscript (char *)
void set_postscript (string &)
void set_quote (MCFTPquote &)
void set_request (MCFTPrequest &)
void set_sb (MRAsbBase &)
void write (istream &)
void write (BufferBase &)
 ~MCFTPmssg ()

Static Public Member Functions

string help (MessageQual)
string help (MessageType)
MessageQual inttomessagequal (int i)
MessageType inttomessagetype (int i)

Protected Attributes

MCFTPheader_header
MessageQual _messagequal
MessageType _messagetype
string _postscript
MCFTPquote_quote
MCFTPrequest_request
MRAsbBase_sb

Friends

ostream & operator<< (ostream &, MCFTPmssg &)
BufferBaseoperator<< (BufferBase &, MCFTPmssg &)
istream & operator>> (istream &, MCFTPmssg &)
BufferBaseoperator>> (BufferBase &, MCFTPmssg &)

Member Enumeration Documentation

enum MCFTPmssg::MessageQual
 

Enumeration values:
messagequal_none 
messagequal_error 
messagequal_notfound 
messagequal_quoteonly 
messagequal_correction 
messagequal_notavailable 

Definition at line 35 of file MCFTPmssg.h.

Referenced by inttomessagequal(), and messagequal().

00035                       { 
00036          messagequal_none = 0, 
00037          messagequal_error = 1, 
00038          messagequal_notfound = 2, 
00039          messagequal_quoteonly = 3,
00040          messagequal_correction = 4,
00041          messagequal_notavailable = 5
00042       };

enum MCFTPmssg::MessageType
 

Enumeration values:
messagetype_unknown 
messagetype_request 
messagetype_quote 
messagetype_mrasb 

Definition at line 29 of file MCFTPmssg.h.

Referenced by inttomessagetype(), and messagetype().

00029                       { 
00030         messagetype_unknown = 0, 
00031         messagetype_request = 1, 
00032         messagetype_quote = 2, 
00033         messagetype_mrasb = 3 
00034       };


Constructor & Destructor Documentation

MCFTPmssg::MCFTPmssg  ) 
 

Definition at line 185 of file MCFTPmssg.h.

00186   : _header( new MCFTPheader ), 
00187     _messagetype(messagetype_unknown), 
00188     _messagequal(messagequal_none),
00189     _request( new MCFTPrequest ), _quote( new MCFTPquote ),
00190     _sb( new MRAsb ), _postscript("") {}

MCFTPmssg::MCFTPmssg const MCFTPmssg rhs  ) 
 

Definition at line 193 of file MCFTPmssg.h.

References _header, _quote, _request, _sb, mcftpsizeb(), and MCFTPheader.set_mcftpsizeb().

00194  : _header( new MCFTPheader ),
00195    _messagetype(rhs._messagetype), _messagequal(rhs._messagequal),
00196    _request( new MCFTPrequest ), _quote( new MCFTPquote ),
00197    _sb( new MRAsb ), _postscript(rhs._postscript)
00198 {
00199    _header = rhs._header;
00200    _request = rhs._request;
00201    _quote = rhs._quote;
00202    _sb = rhs._sb;
00203    _header->set_mcftpsizeb( mcftpsizeb() );
00204 }

MCFTPmssg::~MCFTPmssg  ) 
 

Definition at line 207 of file MCFTPmssg.h.

References _quote, and _request.

00208 {
00209    if ( _header != 0 ) { delete _header ; _header = 0; }
00210    if ( _request != 0 ) { delete _request ; _request = 0; }
00211    if ( _quote != 0 ) { delete _quote ; _quote = 0; }
00212    if ( _sb != 0 ) { delete _sb ; _sb = 0; }
00213 }


Member Function Documentation

MCFTPmssg & MCFTPmssg::copy const MCFTPmssg rhs  ) 
 

Definition at line 240 of file MCFTPmssg.h.

References _header, _messagequal, _messagetype, _postscript, _quote, _request, and _sb.

Referenced by operator=().

00241 {
00242    if ( this != &rhs ) {
00243       *_header = *(rhs._header);
00244       _messagetype = rhs._messagetype;
00245       _messagequal = rhs._messagequal;
00246       *_request = *(rhs._request);
00247       *_quote = *(rhs._quote);
00248       *_sb = *(rhs._sb);
00249       _postscript = rhs._postscript;
00250    }
00251    return *this;
00252 }

MCFTPheader * MCFTPmssg::header  ) 
 

Definition at line 319 of file MCFTPmssg.h.

00319 { return _header; }

string MCFTPmssg::help MessageQual   )  [static]
 

Definition at line 390 of file MCFTPmssg.h.

References messagequal_correction, messagequal_error, messagequal_none, messagequal_notfound, and messagequal_quoteonly.

00391 {
00392    switch(messagequal) {
00393       case MCFTPmssg::messagequal_none:
00394          return " ==> MCFTPmssg::messagequal_none ";
00395          break;
00396       case MCFTPmssg::messagequal_error:
00397          return " ==> MCFTPmssg::messagequal_error ";
00398          break;
00399       case MCFTPmssg::messagequal_notfound:
00400          return " ==> MCFTPmssg::messagequal_notfound ";
00401          break;
00402       case MCFTPmssg::messagequal_quoteonly:
00403          return " ==> MCFTPmssg::messagequal_quoteonly ";
00404          break;
00405       case MCFTPmssg::messagequal_correction:
00406          return " ==> MCFTPmssg::messagequal_correction ";
00407          break;
00408    }
00409    return "";
00410 }

string MCFTPmssg::help MessageType   )  [static]
 

Definition at line 370 of file MCFTPmssg.h.

References messagetype_mrasb, messagetype_quote, messagetype_request, and messagetype_unknown.

00371 {
00372    switch(messagetype) {
00373       case MCFTPmssg::messagetype_unknown:
00374          return " ==> MCFTPmssg::messagetype_unknown ";
00375          break;
00376       case MCFTPmssg::messagetype_request:
00377          return " ==> MCFTPmssg::messagetype_request ";
00378          break;
00379       case MCFTPmssg::messagetype_quote:
00380          return " ==> MCFTPmssg::messagetype_quote ";
00381          break;
00382       case MCFTPmssg::messagetype_mrasb:
00383          return " ==> MCFTPmssg::messagetype_mrasb ";
00384          break;
00385    }
00386    return "";
00387 }

MCFTPmssg::MessageQual MCFTPmssg::inttomessagequal int  i  )  [static]
 

Definition at line 177 of file MCFTPmssg.h.

References MessageQual, messagequal_none, and messagequal_quoteonly.

Referenced by write().

00177                                                         {
00178    switch (i) {
00179       case int(messagequal_none): return messagequal_none; 
00180       case int(messagequal_quoteonly): return messagequal_quoteonly;
00181    }
00182 }

MCFTPmssg::MessageType MCFTPmssg::inttomessagetype int  i  )  [static]
 

Definition at line 167 of file MCFTPmssg.h.

References MessageType, messagetype_mrasb, messagetype_quote, messagetype_request, and messagetype_unknown.

Referenced by write().

00167                                                         {
00168    switch (i) {
00169       case int(messagetype_unknown): return messagetype_unknown;
00170       case int(messagetype_request): return messagetype_request;
00171       case int(messagetype_quote): return messagetype_quote;
00172       case int(messagetype_mrasb): return messagetype_mrasb;
00173    }
00174 }

int MCFTPmssg::mcftpsizeb  ) 
 

Definition at line 339 of file MCFTPmssg.cpp.

References _messagetype, _quote, _request, messagetype_mrasb, messagetype_quote, MRAsbBase.sbsizeb(), MCFTPheader.set_mcftpsizeb(), MCFTPquote.sizeb(), MCFTPrequest.sizeb(), and MCFTPheader.sizeb().

Referenced by MCFTPmssg(), operator()(), and read().

00340 {
00341    int tmp = _header->sizeb() + 2 + _request->sizeb() + 4;
00342    switch ( _messagetype ) {
00343       case messagetype_quote:
00344          tmp += _quote->sizeb();
00345          break;
00346       case messagetype_mrasb:
00347          tmp += _quote->sizeb() + _sb->sbsizeb();
00348          break;
00349    } 
00350    _header->set_mcftpsizeb( tmp ); // asking for sizeb syncs the header
00351    return tmp;
00352 }

MCFTPmssg::MessageQual MCFTPmssg::messagequal  ) 
 

Definition at line 325 of file MCFTPmssg.h.

References _messagequal, and MessageQual.

00325 { return _messagequal; }

MCFTPmssg::MessageType MCFTPmssg::messagetype  ) 
 

Definition at line 322 of file MCFTPmssg.h.

References _messagetype, and MessageType.

00322 { return _messagetype; }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MessageQual  ,
MCFTPrequest ,
MCFTPquote ,
MRAsbBase ,
char *  = ""
 

Definition at line 185 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagetype_mrasb, set_header(), set_messagequal(), set_messagetype(), set_postscript(), set_quote(), set_request(), and set_sb().

00189 {
00190    set_header(header);
00191    set_messagetype(messagetype_mrasb);
00192    set_messagequal(messagequal);
00193    set_request(request);
00194    set_quote(quote);
00195    set_sb(sb);
00196    set_postscript(postscript);
00197    mcftpsizeb();
00198    return *this;
00199 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MCFTPrequest ,
MCFTPquote ,
MRAsbBase ,
char *  = ""
 

Definition at line 169 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagequal_none, messagetype_mrasb, set_header(), set_messagequal(), set_messagetype(), set_postscript(), set_quote(), set_request(), and set_sb().

00173 {
00174    set_header(header);
00175    set_messagetype(messagetype_mrasb);
00176    set_messagequal(messagequal_none);
00177    set_request(request);
00178    set_quote(quote);
00179    set_sb(sb);
00180    set_postscript(postscript);
00181    mcftpsizeb();
00182    return *this;
00183 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MessageQual  ,
MCFTPrequest ,
MCFTPquote ,
char *  = ""
 

Definition at line 154 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagetype_quote, set_header(), set_messagequal(), set_messagetype(), set_postscript(), set_quote(), and set_request().

00158 {
00159    set_header(header);
00160    set_messagetype(messagetype_quote);
00161    set_messagequal(messagequal);
00162    set_request(request);
00163    set_quote(quote);
00164    set_postscript(postscript);
00165    mcftpsizeb();
00166    return *this;
00167 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MCFTPrequest ,
MCFTPquote ,
char *  = ""
 

Definition at line 139 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagequal_none, messagetype_quote, set_header(), set_messagequal(), set_messagetype(), set_postscript(), set_quote(), and set_request().

00143 {
00144    set_header(header);
00145    set_messagetype(messagetype_quote);
00146    set_messagequal(messagequal_none);
00147    set_request(request);
00148    set_quote(quote);
00149    set_postscript(postscript);
00150    mcftpsizeb();
00151    return *this;
00152 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MessageQual  ,
MCFTPrequest ,
char *  = ""
 

Definition at line 125 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagetype_request, set_header(), set_messagequal(), set_messagetype(), set_postscript(), and set_request().

00129 {
00130    set_header(header);
00131    set_messagetype(messagetype_request );
00132    set_messagequal(messagequal);
00133    set_request(request);
00134    set_postscript(postscript);
00135    mcftpsizeb();
00136    return *this;
00137 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MCFTPrequest ,
char *  = ""
 

Definition at line 111 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagequal_none, messagetype_request, set_header(), set_messagequal(), set_messagetype(), set_postscript(), and set_request().

00115 {
00116    set_header(header);
00117    set_messagetype(messagetype_request );
00118    set_messagequal(messagequal_none);
00119    set_request(request);
00120    set_postscript(postscript);
00121    mcftpsizeb();
00122    return *this;
00123 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MessageQual  ,
MCFTPrequest ,
MCFTPquote ,
MRAsbBase ,
string & 
 

Definition at line 95 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagetype_mrasb, set_header(), set_messagequal(), set_messagetype(), set_postscript(), set_quote(), set_request(), and set_sb().

00099 {
00100    set_header(header);
00101    set_messagetype(messagetype_mrasb);
00102    set_messagequal(messagequal);
00103    set_request(request);
00104    set_quote(quote);
00105    set_sb(sb);
00106    set_postscript(postscript);
00107    mcftpsizeb();
00108    return *this;
00109 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MCFTPrequest ,
MCFTPquote ,
MRAsbBase ,
string & 
 

Definition at line 79 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagequal_none, messagetype_mrasb, set_header(), set_messagequal(), set_messagetype(), set_postscript(), set_quote(), set_request(), and set_sb().

00083 {
00084    set_header(header);
00085    set_messagetype(messagetype_mrasb );
00086    set_messagequal(messagequal_none);
00087    set_request(request);
00088    set_quote(quote);
00089    set_sb(sb);
00090    set_postscript(postscript);
00091    mcftpsizeb();
00092    return *this;
00093 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MessageQual  ,
MCFTPrequest ,
MCFTPquote ,
string & 
 

Definition at line 64 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagetype_quote, set_header(), set_messagequal(), set_messagetype(), set_postscript(), set_quote(), and set_request().

00068 {
00069    set_header(header);
00070    set_messagetype(messagetype_quote );
00071    set_messagequal(messagequal);
00072    set_request(request);
00073    set_quote(quote);
00074    set_postscript(postscript);
00075    mcftpsizeb();
00076    return *this;
00077 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MCFTPrequest ,
MCFTPquote ,
string & 
 

Definition at line 49 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagequal_none, messagetype_quote, set_header(), set_messagequal(), set_messagetype(), set_postscript(), set_quote(), and set_request().

00053 {
00054    set_header(header);
00055    set_messagetype(messagetype_quote);
00056    set_messagequal(messagequal_none);
00057    set_request(request);
00058    set_quote(quote);
00059    set_postscript(postscript);
00060    mcftpsizeb();
00061    return *this;
00062 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MessageQual  ,
MCFTPrequest ,
string & 
 

Definition at line 35 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagetype_request, set_header(), set_messagequal(), set_messagetype(), set_postscript(), and set_request().

00039 {
00040    set_header(header);
00041    set_messagetype(messagetype_request);
00042    set_messagequal(messagequal);
00043    set_request(request);
00044    set_postscript(postscript);
00045    mcftpsizeb();
00046    return *this;
00047 }

MCFTPmssg & MCFTPmssg::operator() MCFTPheader ,
MCFTPrequest ,
string & 
 

Definition at line 21 of file MCFTPmssg.cpp.

References mcftpsizeb(), messagequal_none, messagetype_request, set_header(), set_messagequal(), set_messagetype(), set_postscript(), and set_request().

00025 {
00026    set_header(header);
00027    set_messagetype(messagetype_request);
00028    set_messagequal(messagequal_none);
00029    set_request(request);
00030    set_postscript(postscript);
00031    mcftpsizeb();
00032    return *this;
00033 }

MCFTPmssg & MCFTPmssg::operator()  ) 
 

Definition at line 222 of file MCFTPmssg.h.

References _messagequal, _messagetype, _quote, _request, messagequal_none, and messagetype_unknown.

00223 {
00224    if ( _header != 0 ) { delete _header ; _header = 0; }
00225    if ( _request != 0 ) { delete _request ; _request = 0; }
00226    if ( _quote != 0 ) { delete _quote ; _quote = 0; }
00227    if ( _sb != 0 ) { delete _sb ; _sb = 0; }
00228 
00229    _header = new MCFTPheader;
00230    _messagetype = messagetype_unknown;
00231    _messagequal = messagequal_none;
00232    _request = new MCFTPrequest;
00233    _quote = new MCFTPquote;
00234    _sb = new MRAsb;
00235    _postscript = "";
00236    return *this;
00237 }

MCFTPmssg & MCFTPmssg::operator() const MCFTPmssg  ) 
 

Definition at line 216 of file MCFTPmssg.h.

00217 { 
00218    return *this = mcftpsb; 
00219 }

MCFTPmssg & MCFTPmssg::operator<< istream &   ) 
 

Definition at line 272 of file MCFTPmssg.h.

References write().

00273 {
00274    write(is);
00275    return *this;
00276 }

MCFTPmssg & MCFTPmssg::operator<< BufferBase  ) 
 

Definition at line 258 of file MCFTPmssg.h.

References write().

00259 {
00260    write(buffer);
00261    return *this;
00262 }

MCFTPmssg & MCFTPmssg::operator= const MCFTPmssg rhs  ) 
 

Definition at line 255 of file MCFTPmssg.h.

References copy().

00255 { return copy(rhs); }

MCFTPmssg & MCFTPmssg::operator>> ostream &   ) 
 

Definition at line 279 of file MCFTPmssg.h.

References read().

00280 {
00281    read(os);
00282    return *this;
00283 }

MCFTPmssg & MCFTPmssg::operator>> BufferBase  ) 
 

Definition at line 265 of file MCFTPmssg.h.

References read().

00266 {
00267    read(buffer);
00268    return *this;
00269 }

string & MCFTPmssg::postscript  ) 
 

Definition at line 337 of file MCFTPmssg.h.

00337 { return _postscript; }

MCFTPquote * MCFTPmssg::quote  ) 
 

Definition at line 331 of file MCFTPmssg.h.

References _quote.

00331 { return _quote; }

void MCFTPmssg::read ostream &   ) 
 

Definition at line 304 of file MCFTPmssg.cpp.

References _messagequal, _messagetype, mcftpsizeb(), messagetype_mrasb, messagetype_quote, messagetype_request, and MCFTPheader.set_mcftpsizeb().

00305 {
00306    bytepack bp;
00307    _header->set_mcftpsizeb( mcftpsizeb() );
00308    os << (*_header);
00309    os << bp( int(_messagetype), 1 );
00310    os << bp( int(_messagequal), 1 );
00311    switch ( _messagetype ) {
00312       case messagetype_request:
00313          os << (*_request);
00314          os << bp( _header->mcftpsizeb(), 4 );
00315          for(unsigned int i = 0; i < _postscript.size(); ++i ) {
00316             os.put( _postscript[i] );
00317          }
00318          break;
00319       case messagetype_quote:
00320          os << (*_request);
00321          os << (*_quote);
00322          os << bp( _header->mcftpsizeb(), 4 );
00323          for(unsigned int i = 0; i < _postscript.size(); ++i ) {
00324             os.put( _postscript[i] );
00325          }
00326          break;
00327       case messagetype_mrasb:
00328          os << (*_request);
00329          os << (*_quote);
00330          os << (*_sb);
00331          os << bp( _header->mcftpsizeb(), 4 );
00332          for(unsigned int i = 0; i < _postscript.size(); ++i ) {
00333             os.put( _postscript[i] );
00334          }
00335          break;
00336    }
00337 }

void MCFTPmssg::read BufferBase  ) 
 

Definition at line 235 of file MCFTPmssg.cpp.

References _messagequal, _messagetype, mcftpsizeb(), messagetype_mrasb, messagetype_quote, messagetype_request, BufferBase.put(), and MCFTPheader.set_mcftpsizeb().

Referenced by operator<<(), and operator>>().

00236 {
00237    bytepack bp;
00238    _header->set_mcftpsizeb( mcftpsizeb() );
00239    buffer << (*_header);
00240    buffer << bp( int(_messagetype), 1 );
00241    buffer << bp( int(_messagequal), 1 );
00242    switch ( _messagetype ) {
00243       case messagetype_request:
00244          buffer << (*_request);
00245          buffer << bp( _header->mcftpsizeb(), 4 );
00246          for(unsigned int i = 0; i < _postscript.size(); ++i ) {
00247             buffer.put( _postscript[i] );
00248          }
00249          break;
00250       case messagetype_quote:
00251          buffer << (*_request);
00252          buffer << (*_quote);
00253          buffer << bp( _header->mcftpsizeb(), 4 );
00254          for(unsigned int i = 0; i < _postscript.size(); ++i ) {
00255             buffer.put( _postscript[i] );
00256          }
00257          break;
00258       case messagetype_mrasb:
00259          buffer << (*_request);
00260          buffer << (*_quote);
00261          buffer << (*_sb);
00262          buffer << bp( _header->mcftpsizeb(), 4 );
00263          for(unsigned int i = 0; i < _postscript.size(); ++i ) {
00264             buffer.put( _postscript[i] );
00265          }
00266          break;
00267    }
00268 }

MCFTPrequest * MCFTPmssg::request  ) 
 

Definition at line 328 of file MCFTPmssg.h.

References _request.

00328 { return _request; }

MRAsbBase * MCFTPmssg::sb  ) 
 

Definition at line 334 of file MCFTPmssg.h.

00334 { return _sb; }

void MCFTPmssg::set_header MCFTPheader  ) 
 

Definition at line 286 of file MCFTPmssg.h.

Referenced by operator()().

00286 { *_header = header; }

void MCFTPmssg::set_messagequal MessageQual   ) 
 

Definition at line 295 of file MCFTPmssg.h.

References _messagequal.

Referenced by operator()().

00296 { 
00297    _messagequal = messagequal; 
00298 }

void MCFTPmssg::set_messagetype MessageType   ) 
 

Definition at line 289 of file MCFTPmssg.h.

References _messagetype.

Referenced by operator()().

00290 { 
00291    _messagetype = messagetype; 
00292 }

void MCFTPmssg::set_postscript char *   ) 
 

Definition at line 316 of file MCFTPmssg.h.

00316 { _postscript = postscript;}

void MCFTPmssg::set_postscript string &   ) 
 

Definition at line 310 of file MCFTPmssg.h.

Referenced by operator()().

00311 { 
00312    _postscript = postscript; 
00313 }

void MCFTPmssg::set_quote MCFTPquote  ) 
 

Definition at line 304 of file MCFTPmssg.h.

References _quote.

Referenced by operator()().

00304 { *_quote = quote; }

void MCFTPmssg::set_request MCFTPrequest  ) 
 

Definition at line 301 of file MCFTPmssg.h.

References _request.

Referenced by operator()().

00301 { *_request = request; }

void MCFTPmssg::set_sb MRAsbBase  ) 
 

Definition at line 307 of file MCFTPmssg.h.

Referenced by operator()().

00307 { *_sb = sb; }

void MCFTPmssg::write istream &   ) 
 

Definition at line 270 of file MCFTPmssg.cpp.

References _messagequal, _messagetype, inttomessagequal(), inttomessagetype(), messagetype_mrasb, messagetype_quote, and messagetype_request.

00271 {
00272    bytepack bp;
00273    is >> (*_header);
00274    is >> bp(0,1); _messagetype = MCFTPmssg::inttomessagetype(int(bp));
00275    is >> bp(0,1); _messagequal = MCFTPmssg::inttomessagequal(int(bp));
00276    switch ( _messagetype ) {
00277       case messagetype_request:
00278          is >> (*_request);
00279          is >> bp( 0, 4 );
00280          if ( _header->mcftpsizeb() <= 0 ) _header->set_mcftpsizeb(int(bp));
00281          _postscript = "";
00282          while ( !is.eof() ) _postscript += is.get();
00283          break;
00284       case messagetype_quote:
00285          is >> (*_request);
00286          is >> (*_quote);
00287          is >> bp( 0, 4 );
00288          if ( _header->mcftpsizeb() <= 0 ) _header->set_mcftpsizeb(int(bp));
00289          _postscript = "";
00290          while ( !is.eof() ) _postscript += is.get();
00291          break;
00292       case messagetype_mrasb:
00293          is >> (*_request);
00294          is >> (*_quote);
00295          is >> (*_sb);
00296          is >> bp( 0, 4 );
00297          if ( _header->mcftpsizeb() <= 0 ) _header->set_mcftpsizeb(int(bp));
00298          _postscript = "";
00299          while ( !is.eof() ) _postscript += is.get();
00300          break;
00301    }
00302 }

void MCFTPmssg::write BufferBase  ) 
 

Definition at line 201 of file MCFTPmssg.cpp.

References _messagequal, _messagetype, BufferBase.eob(), BufferBase.get(), inttomessagequal(), inttomessagetype(), messagetype_mrasb, messagetype_quote, and messagetype_request.

Referenced by operator<<(), and operator>>().

00202 {
00203    bytepack bp;
00204    buffer >> (*_header);
00205    buffer >> bp(0,1); _messagetype = MCFTPmssg::inttomessagetype(int(bp));
00206    buffer >> bp(0,1); _messagequal = MCFTPmssg::inttomessagequal(int(bp));
00207    switch ( _messagetype ) {
00208       case messagetype_request:
00209          buffer >> (*_request);
00210          buffer >> bp( 0, 4 );
00211          if ( _header->mcftpsizeb() <= 0 ) _header->set_mcftpsizeb(int(bp));
00212          _postscript = "";
00213          while ( !buffer.eob() ) _postscript += buffer.get();
00214          break;
00215       case messagetype_quote:
00216          buffer >> (*_request);
00217          buffer >> (*_quote);
00218          buffer >> bp( 0, 4 );
00219          if ( _header->mcftpsizeb() <= 0 ) _header->set_mcftpsizeb(int(bp));
00220          _postscript = "";
00221          while ( !buffer.eob() ) _postscript += buffer.get();
00222          break;
00223       case messagetype_mrasb:
00224          buffer >> (*_request);
00225          buffer >> (*_quote);
00226          buffer >> (*_sb);
00227          buffer >> bp( 0, 4 );
00228          if ( _header->mcftpsizeb() <= 0 ) _header->set_mcftpsizeb(int(bp));
00229          _postscript = "";
00230          while ( !buffer.eob() ) _postscript += buffer.get();
00231          break;
00232    }
00233 }


Friends And Related Function Documentation

ostream& operator<< ostream &  os,
MCFTPmssg mcftpsb
[friend]
 

Definition at line 368 of file MCFTPmssg.cpp.

00369 {
00370    mcftpsb.read(os);
00371    return os;
00372 }

BufferBase& operator<< BufferBase buffer,
MCFTPmssg mcftpsb
[friend]
 

Definition at line 356 of file MCFTPmssg.cpp.

00357 {
00358    mcftpsb.read(buffer);
00359    return buffer;
00360 }

istream& operator>> istream &  is,
MCFTPmssg mcftpsb
[friend]
 

Definition at line 374 of file MCFTPmssg.cpp.

00375 {
00376    mcftpsb.write(is);
00377    return is;
00378 }

BufferBase& operator>> BufferBase buffer,
MCFTPmssg mcftpsb
[friend]
 

Definition at line 362 of file MCFTPmssg.cpp.

00363 {
00364    mcftpsb.write(buffer);
00365    return buffer;
00366 }


Field Documentation

MCFTPheader* MCFTPmssg._header [protected]
 

Definition at line 148 of file MCFTPmssg.h.

Referenced by copy(), and MCFTPmssg().

MessageQual MCFTPmssg._messagequal [protected]
 

Definition at line 150 of file MCFTPmssg.h.

Referenced by copy(), messagequal(), operator()(), read(), set_messagequal(), and write().

MessageType MCFTPmssg._messagetype [protected]
 

Definition at line 149 of file MCFTPmssg.h.

Referenced by copy(), mcftpsizeb(), messagetype(), operator()(), read(), set_messagetype(), and write().

string MCFTPmssg._postscript [protected]
 

Definition at line 154 of file MCFTPmssg.h.

Referenced by copy().

MCFTPquote* MCFTPmssg._quote [protected]
 

Definition at line 152 of file MCFTPmssg.h.

Referenced by copy(), MCFTPmssg(), mcftpsizeb(), operator()(), quote(), set_quote(), and ~MCFTPmssg().

MCFTPrequest* MCFTPmssg._request [protected]
 

Definition at line 151 of file MCFTPmssg.h.

Referenced by copy(), MCFTPmssg(), mcftpsizeb(), operator()(), request(), set_request(), and ~MCFTPmssg().

MRAsbBase* MCFTPmssg._sb [protected]
 

Definition at line 153 of file MCFTPmssg.h.

Referenced by copy(), and MCFTPmssg().


The documentation for this class was generated from the following files:
Generated on Mon May 31 21:41:21 2004 for SR2k4 Assembler by doxygen 1.3.6