Initial
This commit is contained in:
70
ftp/FTPTHRD.CPP
Normal file
70
ftp/FTPTHRD.CPP
Normal file
@@ -0,0 +1,70 @@
|
||||
#include <ftp/ftpthrd.hpp>
|
||||
|
||||
FTPThread::FTPThread(void)
|
||||
{
|
||||
mThreadHandler.setCallback(this,&FTPThread::threadHandler);
|
||||
insertHandler(&mThreadHandler);
|
||||
}
|
||||
|
||||
FTPThread::FTPThread(const FTPThread &/*someFTPThread*/)
|
||||
{ // private implementation
|
||||
}
|
||||
|
||||
FTPThread::~FTPThread()
|
||||
{
|
||||
removeHandler(&mThreadHandler);
|
||||
mCompletionHandler=CallbackPointer();
|
||||
}
|
||||
|
||||
WORD FTPThread::interpretLine(const String &lineString)
|
||||
{
|
||||
String *pString=new String(lineString);
|
||||
ThreadMessage interpretMessage(ThreadMessage::TM_USER,MsgInterpretLine,(LONG)pString);
|
||||
return postMessage(interpretMessage);
|
||||
}
|
||||
|
||||
WORD FTPThread::interpretFile(const String &pathFileName)
|
||||
{
|
||||
String *pString=new String(pathFileName);
|
||||
ThreadMessage interpretMessage(ThreadMessage::TM_USER,MsgInterpretFile,(LONG)pString);
|
||||
return postMessage(interpretMessage);
|
||||
}
|
||||
|
||||
void FTPThread::setDisplay(Monitor<EditWindow> &editMonitor)
|
||||
{
|
||||
FTPInterpreter::setDisplay(editMonitor);
|
||||
}
|
||||
|
||||
DWORD FTPThread::threadHandler(ThreadMessage &someThreadMessage)
|
||||
{
|
||||
switch(someThreadMessage.message())
|
||||
{
|
||||
case ThreadMessage::TM_CREATE :
|
||||
break;
|
||||
case ThreadMessage::TM_DESTROY :
|
||||
break;
|
||||
case ThreadMessage::TM_USER :
|
||||
if(MsgInterpretLine==someThreadMessage.userDataOne())handleInterpretLine((String*)someThreadMessage.userDataTwo());
|
||||
else if(MsgInterpretFile==someThreadMessage.userDataOne())handleInterpretFile((String*)someThreadMessage.userDataTwo());
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void FTPThread::handleInterpretLine(String *pInterpretLine)
|
||||
{
|
||||
CallbackData completionData(0,(int)LineComplete);
|
||||
String interpretLine(*pInterpretLine);
|
||||
delete pInterpretLine;
|
||||
FTPInterpreter::interpretLine(interpretLine);
|
||||
mCompletionHandler.callback(completionData);
|
||||
}
|
||||
|
||||
void FTPThread::handleInterpretFile(String *pInterpretFile)
|
||||
{
|
||||
CallbackData completionData(0,(int)FileComplete);
|
||||
String interpretFile(*pInterpretFile);
|
||||
delete pInterpretFile;
|
||||
FTPInterpreter::interpretFile(interpretFile);
|
||||
mCompletionHandler.callback(completionData);
|
||||
}
|
||||
Reference in New Issue
Block a user