Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

FTPClient Class Reference

#include <ftp-client.h>

Inheritance diagram for FTPClient:

Application TimerHandler Handler Object List of all members.

Public Member Functions

 FTPClient (const TCP &=TCP::Default())
 ~FTPClient ()
FTPClientCopy () const
void Timeout (TimerEvent *)
void Receive (Packet *, L4Protocol *)
void Sent (Count_t, L4Protocol *)
void Closed (L4Protocol *)
void ConnectionComplete (L4Protocol *)
void ConnectionFailed (L4Protocol *, bool)
Count_t Open (IPAddr_t)
Count_t Get (Count_t, Count_t)
Count_t Get (const Random &, const Random &)
Count_t Put (Count_t, Count_t)
Count_t Put (const Random &, const Random &)
Count_t Close ()
Count_t Sleep (Time_t)
Count_t Sleep (Random *)
Count_t Repeat (Count_t, Count_t)
virtual void StartApp ()
virtual void StopApp ()

Private Types

enum  State_t {
  CLOSED, CLOSING, OPENING, OPEN,
  SENDING_GET, GETTING, SENDING_PUT, PUTTING
}
enum  ActionStatus_t { SUCCESS, FAILED, FINISHED }
enum  FTPPort_t { FTP_PORT = 21 }

Private Member Functions

ActionStatus_t NextAction ()

Private Attributes

State_t state
Count_t currentStep
Count_t getputSize
Count_t getputCurrent
bool started
TCPl4Proto
ActionVec_t actions
FTPActioncurrentAction
Timer timer
TimerEventtimeoutEvent

Member Enumeration Documentation

enum FTPClient::ActionStatus_t [private]
 

Enumeration values:
SUCCESS 
FAILED 
FINISHED 

enum FTPClient::FTPPort_t [private]
 

Enumeration values:
FTP_PORT 

enum FTPClient::State_t [private]
 

Enumeration values:
CLOSED 
CLOSING 
OPENING 
OPEN 
SENDING_GET 
GETTING 
SENDING_PUT 
PUTTING 


Constructor & Destructor Documentation

FTPClient::FTPClient const TCP = TCP::Default()  ) 
 

FTPClient::~FTPClient  ) 
 


Member Function Documentation

Count_t FTPClient::Close  ) 
 

void FTPClient::Closed L4Protocol  )  [virtual]
 

Reimplemented from Application.

void FTPClient::ConnectionComplete L4Protocol  )  [virtual]
 

Reimplemented from Application.

void FTPClient::ConnectionFailed L4Protocol ,
bool 
[virtual]
 

Reimplemented from Application.

FTPClient* FTPClient::Copy void   )  const [inline, virtual]
 

Implements Application.

Count_t FTPClient::Get const Random ,
const Random
 

Count_t FTPClient::Get Count_t  ,
Count_t 
 

FTPClient::ActionStatus_t FTPClient::NextAction  )  [private]
 

Count_t FTPClient::Open IPAddr_t   ) 
 

Count_t FTPClient::Put const Random ,
const Random
 

Count_t FTPClient::Put Count_t  ,
Count_t 
 

void FTPClient::Receive Packet ,
L4Protocol
 

Count_t FTPClient::Repeat Count_t  ,
Count_t 
 

void FTPClient::Sent Count_t  ,
L4Protocol
[virtual]
 

Reimplemented from Application.

Count_t FTPClient::Sleep Random  ) 
 

Count_t FTPClient::Sleep Time_t   ) 
 

void FTPClient::StartApp  )  [virtual]
 

Reimplemented from Application.

void FTPClient::StopApp  )  [virtual]
 

Reimplemented from Application.

void FTPClient::Timeout TimerEvent  )  [virtual]
 

Implements TimerHandler.


Member Data Documentation

ActionVec_t FTPClient::actions [private]
 

FTPAction* FTPClient::currentAction [private]
 

Count_t FTPClient::currentStep [private]
 

Count_t FTPClient::getputCurrent [private]
 

Count_t FTPClient::getputSize [private]
 

TCP* FTPClient::l4Proto [private]
 

bool FTPClient::started [private]
 

State_t FTPClient::state [private]
 

TimerEvent* FTPClient::timeoutEvent [private]
 

Timer FTPClient::timer [private]
 


The documentation for this class was generated from the following files:
Generated on Wed Aug 27 16:17:26 2008 for Georgia Tech Network Simulator (GTNetS) by  doxygen 1.3.9.1