From: Christian P. <cp...@us...> - 2005-05-25 09:35:08
|
Update of /cvsroot/pclasses/pclasses2/plugins/IOHandler/file In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24740/plugins/IOHandler/file Modified Files: IOHandler_file.cpp Log Message: - Renamed IORequest::open() to IORequest::connect() and IORequest::close() to IORequest::disconnect() to support deriving from IODevice - Derived IORequest_Get and IORequest_Put from IODevice Index: IOHandler_file.cpp =================================================================== RCS file: /cvsroot/pclasses/pclasses2/plugins/IOHandler/file/IOHandler_file.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- IOHandler_file.cpp 25 May 2005 08:06:10 -0000 1.1 +++ IOHandler_file.cpp 25 May 2005 09:34:59 -0000 1.2 @@ -33,18 +33,30 @@ IORequest_file_Get(const URL& url) : IORequest_Get(url) { } - ~IORequest_file_Get() { } + ~IORequest_file_Get() throw() { } - void open() + void connect() throw(IOError) { _file.open(url().path(), IODevice::Read, IODevice::OpenFail, IODevice::AllowWrite); + setValid(true); + setEof(false); + setAccess(IODevice::Read); } - void close() { _file.close(); } + void disconnect() throw(IOError) + { + _file.close(); + setValid(false); + setEof(true); + } - size_t read(char* buffer, size_t count) + size_t _read(char* buffer, size_t count) throw(IOError) { - return _file.read(buffer, count); + size_t ret = _file.read(buffer, count); + if(!ret) + setEof(true); + + return true; } private: @@ -56,16 +68,24 @@ IORequest_file_Put(const URL& url) : IORequest_Put(url) { } - ~IORequest_file_Put() { } + ~IORequest_file_Put() throw() { } - void open() + void connect() throw(IOError) { _file.open(url().path(), IODevice::Write, IODevice::OpenCreate, IODevice::AllowRead); + setValid(true); + setEof(false); + setAccess(IODevice::Write); } - void close() { _file.close(); } + void disconnect() throw(IOError) + { + _file.close(); + setValid(false); + setEof(true); + } - size_t write(const char* buffer, size_t count) + size_t _write(const char* buffer, size_t count) throw(IOError) { return _file.write(buffer, count); } @@ -79,11 +99,11 @@ IORequest_file_Unlink(const URL& url) : IORequest_Unlink(url) { } - ~IORequest_file_Unlink() { } + ~IORequest_file_Unlink() throw() { } - void open() { } + void connect() throw(IOError) { } - void close() { } + void disconnect() throw(IOError) { } void doit() { File::unlink(url().path()); } @@ -94,11 +114,11 @@ IORequest_file_MakeDir(const URL& url) : IORequest_MakeDir(url) { } - ~IORequest_file_MakeDir() { } + ~IORequest_file_MakeDir() throw() { } - void open() { } + void connect() throw(IOError) { } - void close() { } + void disconnect() throw(IOError) { } void doit() { Directory::create(url().path()); } @@ -109,11 +129,11 @@ IORequest_file_RemoveDir(const URL& url) : IORequest_RemoveDir(url) { } - ~IORequest_file_RemoveDir() { } + ~IORequest_file_RemoveDir() throw() { } - void open() { } + void connect() throw(IOError) { } - void close() { } + void disconnect() throw(IOError) { } void doit() { Directory::remove(url().path()); } |