2009-05-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

Removed directIOAllowed() from BinaryStream, DiskWriter,
	DiskAdaptor.  setDirectIOAllowed() was renamed as
	allowDirectIO().
	Removed _directIOAllowed member from DiskWriter.
	* src/AbstractDiskWriter.cc
	* src/AbstractDiskWriter.h
	* src/AbstractSingleDiskAdaptor.cc
	* src/AbstractSingleDiskAdaptor.h
	* src/BinaryStream.h
	* src/ByteArrayDiskWriter.h
	* src/DefaultPieceStorage.cc
	* src/DiskWriter.h
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
pull/1/head
Tatsuhiro Tsujikawa 2009-05-04 08:11:40 +00:00
parent c1aef8e2d1
commit e1f32b6b66
11 changed files with 34 additions and 37 deletions

View File

@ -1,3 +1,19 @@
2009-05-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed directIOAllowed() from BinaryStream, DiskWriter,
DiskAdaptor. setDirectIOAllowed() was renamed as allowDirectIO().
Removed _directIOAllowed member from DiskWriter.
* src/AbstractDiskWriter.cc
* src/AbstractDiskWriter.h
* src/AbstractSingleDiskAdaptor.cc
* src/AbstractSingleDiskAdaptor.h
* src/BinaryStream.h
* src/ByteArrayDiskWriter.h
* src/DefaultPieceStorage.cc
* src/DiskWriter.h
* src/MultiDiskAdaptor.cc
* src/MultiDiskAdaptor.h
2009-05-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net> 2009-05-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Now the constructor of AbstractDiskWriter takes filename as an Now the constructor of AbstractDiskWriter takes filename as an

View File

@ -60,6 +60,7 @@ AbstractDiskWriter::AbstractDiskWriter(const std::string& filename):
_filename(filename), _filename(filename),
fd(-1), fd(-1),
_readOnly(false), _readOnly(false),
_directIOAllowed(false),
logger(LogFactory::getInstance()) {} logger(LogFactory::getInstance()) {}
AbstractDiskWriter::~AbstractDiskWriter() AbstractDiskWriter::~AbstractDiskWriter()

View File

@ -49,6 +49,8 @@ protected:
bool _readOnly; bool _readOnly;
bool _directIOAllowed;
Logger* logger; Logger* logger;
void createFile(int addFlags = 0); void createFile(int addFlags = 0);
@ -85,6 +87,8 @@ public:
virtual void disableDirectIO(); virtual void disableDirectIO();
virtual void allowDirectIO() { _directIOAllowed = true; }
virtual void enableReadOnly(); virtual void enableReadOnly();
virtual void disableReadOnly(); virtual void disableReadOnly();

View File

@ -119,11 +119,6 @@ void AbstractSingleDiskAdaptor::disableDirectIO()
diskWriter->disableDirectIO(); diskWriter->disableDirectIO();
} }
bool AbstractSingleDiskAdaptor::directIOAllowed() const
{
return diskWriter->directIOAllowed();
}
void AbstractSingleDiskAdaptor::enableReadOnly() void AbstractSingleDiskAdaptor::enableReadOnly()
{ {
diskWriter->enableReadOnly(); diskWriter->enableReadOnly();

View File

@ -77,8 +77,6 @@ public:
virtual void disableDirectIO(); virtual void disableDirectIO();
virtual bool directIOAllowed() const;
// Make sure that DiskWriter is set before calling this function. // Make sure that DiskWriter is set before calling this function.
virtual void enableReadOnly(); virtual void enableReadOnly();

View File

@ -62,8 +62,6 @@ public:
virtual void enableDirectIO() = 0; virtual void enableDirectIO() = 0;
virtual void disableDirectIO() = 0; virtual void disableDirectIO() = 0;
virtual bool directIOAllowed() const = 0;
}; };
typedef SharedHandle<BinaryStream> BinaryStreamHandle; typedef SharedHandle<BinaryStream> BinaryStreamHandle;

View File

@ -66,11 +66,6 @@ public:
virtual void disableDirectIO() {} virtual void disableDirectIO() {}
virtual bool directIOAllowed() const
{
return false;
}
void setString(const std::string& s) void setString(const std::string& s)
{ {
buf.str(s); buf.str(s);

View File

@ -491,7 +491,9 @@ void DefaultPieceStorage::initStorage()
DiskWriterHandle writer = DiskWriterHandle writer =
_diskWriterFactory->newDiskWriter(directDiskAdaptor->getFilePath()); _diskWriterFactory->newDiskWriter(directDiskAdaptor->getFilePath());
writer->setDirectIOAllowed(option->getAsBool(PREF_ENABLE_DIRECT_IO)); if(option->getAsBool(PREF_ENABLE_DIRECT_IO)) {
writer->allowDirectIO();
}
directDiskAdaptor->setDiskWriter(writer); directDiskAdaptor->setDiskWriter(writer);
this->diskAdaptor = directDiskAdaptor; this->diskAdaptor = directDiskAdaptor;
@ -500,7 +502,9 @@ void DefaultPieceStorage::initStorage()
logger->debug("Instantiating MultiDiskAdaptor"); logger->debug("Instantiating MultiDiskAdaptor");
MultiDiskAdaptorHandle multiDiskAdaptor(new MultiDiskAdaptor()); MultiDiskAdaptorHandle multiDiskAdaptor(new MultiDiskAdaptor());
multiDiskAdaptor->setFileEntries(downloadContext->getFileEntries()); multiDiskAdaptor->setFileEntries(downloadContext->getFileEntries());
multiDiskAdaptor->setDirectIOAllowed(option->getAsBool(PREF_ENABLE_DIRECT_IO)); if(option->getAsBool(PREF_ENABLE_DIRECT_IO)) {
multiDiskAdaptor->allowDirectIO();
}
multiDiskAdaptor->setPieceLength(downloadContext->getPieceLength()); multiDiskAdaptor->setPieceLength(downloadContext->getPieceLength());
multiDiskAdaptor->setMaxOpenFiles(option->getAsInt(PREF_BT_MAX_OPEN_FILES)); multiDiskAdaptor->setMaxOpenFiles(option->getAsInt(PREF_BT_MAX_OPEN_FILES));
this->diskAdaptor = multiDiskAdaptor; this->diskAdaptor = multiDiskAdaptor;

View File

@ -44,11 +44,8 @@ namespace aria2 {
* *
*/ */
class DiskWriter:public BinaryStream { class DiskWriter:public BinaryStream {
protected:
bool _directIOAllowed;
public: public:
DiskWriter():_directIOAllowed(false) {} DiskWriter() {}
virtual ~DiskWriter() {} virtual ~DiskWriter() {}
/** /**
@ -77,15 +74,7 @@ public:
virtual void disableDirectIO() = 0; virtual void disableDirectIO() = 0;
virtual bool directIOAllowed() const virtual void allowDirectIO() {}
{
return _directIOAllowed;
}
void setDirectIOAllowed(bool f)
{
_directIOAllowed = f;
}
// Enables read-only mode. After this call, openExistingFile() opens // Enables read-only mode. After this call, openExistingFile() opens
// file in read-only mode. This is an optional functionality. The // file in read-only mode. This is an optional functionality. The

View File

@ -273,7 +273,9 @@ void MultiDiskAdaptor::resetDiskWriterEntries()
logger->debug("Creating DiskWriter for filename=%s", logger->debug("Creating DiskWriter for filename=%s",
(*i)->getFilePath().c_str()); (*i)->getFilePath().c_str());
(*i)->setDiskWriter(dwFactory.newDiskWriter((*i)->getFilePath())); (*i)->setDiskWriter(dwFactory.newDiskWriter((*i)->getFilePath()));
(*i)->getDiskWriter()->setDirectIOAllowed(_directIOAllowed); if(_directIOAllowed) {
(*i)->getDiskWriter()->allowDirectIO();
}
if(_readOnly) { if(_readOnly) {
(*i)->getDiskWriter()->enableReadOnly(); (*i)->getDiskWriter()->enableReadOnly();
} }

View File

@ -165,14 +165,9 @@ public:
return pieceLength; return pieceLength;
} }
virtual bool directIOAllowed() const void allowDirectIO()
{ {
return _directIOAllowed; _directIOAllowed = true;
}
void setDirectIOAllowed(bool b)
{
_directIOAllowed = b;
} }
virtual void cutTrailingGarbage(); virtual void cutTrailingGarbage();