Remove BPackageKit::[...]::AbstractDataWriter and friends
* FDDataWriter and ZlibDataWriter weren't used anymore. * AbstractDataWriter was implemented only by PackageFileHeapWriter, which was only used by WriterImplBase. * Add a PackageFileHeapWriter::AddDataThrows() which has semantics equivalent to the previously inherited WriteDataThrows().
This commit is contained in:
@@ -1 +0,0 @@
|
||||
#include <../private/package/hpkg/DataWriters.h>
|
||||
@@ -1,101 +0,0 @@
|
||||
/*
|
||||
* Copyright 2011, Oliver Tappe <[email protected]>
|
||||
* Copyright 2013-2014, Ingo Weinhold, [email protected].
|
||||
* Distributed under the terms of the MIT License.
|
||||
*/
|
||||
#ifndef _PACKAGE__HPKG__PRIVATE__DATA_WRITERS_H_
|
||||
#define _PACKAGE__HPKG__PRIVATE__DATA_WRITERS_H_
|
||||
|
||||
|
||||
#include <DataIO.h>
|
||||
#include <package/hpkg/ZlibCompressor.h>
|
||||
|
||||
|
||||
namespace BPackageKit {
|
||||
|
||||
namespace BHPKG {
|
||||
|
||||
|
||||
class BErrorOutput;
|
||||
|
||||
|
||||
namespace BPrivate {
|
||||
|
||||
|
||||
class AbstractDataWriter {
|
||||
public:
|
||||
AbstractDataWriter();
|
||||
virtual ~AbstractDataWriter();
|
||||
|
||||
uint64 BytesWritten() const
|
||||
{ return fBytesWritten; }
|
||||
|
||||
virtual status_t WriteDataNoThrow(const void* buffer,
|
||||
size_t size) = 0;
|
||||
|
||||
void WriteDataThrows(const void* buffer,
|
||||
size_t size);
|
||||
|
||||
protected:
|
||||
uint64 fBytesWritten;
|
||||
};
|
||||
|
||||
|
||||
class FDDataWriter : public AbstractDataWriter {
|
||||
public:
|
||||
FDDataWriter(int fd, off_t offset,
|
||||
BErrorOutput* errorOutput);
|
||||
|
||||
virtual status_t WriteDataNoThrow(const void* buffer,
|
||||
size_t size);
|
||||
|
||||
off_t Offset() const
|
||||
{ return fOffset; }
|
||||
|
||||
private:
|
||||
int fFD;
|
||||
off_t fOffset;
|
||||
BErrorOutput* fErrorOutput;
|
||||
};
|
||||
|
||||
|
||||
class ZlibDataWriter : public AbstractDataWriter, private BDataIO {
|
||||
public:
|
||||
ZlibDataWriter(AbstractDataWriter* dataWriter);
|
||||
|
||||
void Init();
|
||||
void Finish();
|
||||
|
||||
virtual status_t WriteDataNoThrow(const void* buffer,
|
||||
size_t size);
|
||||
|
||||
private:
|
||||
// BDataIO
|
||||
virtual ssize_t Write(const void* buffer, size_t size);
|
||||
|
||||
private:
|
||||
AbstractDataWriter* fDataWriter;
|
||||
ZlibCompressor fCompressor;
|
||||
};
|
||||
|
||||
|
||||
// inline implementations
|
||||
|
||||
|
||||
inline void
|
||||
AbstractDataWriter::WriteDataThrows(const void* buffer, size_t size)
|
||||
{
|
||||
status_t error = WriteDataNoThrow(buffer, size);
|
||||
if (error != B_OK)
|
||||
throw status_t(error);
|
||||
}
|
||||
|
||||
|
||||
} // namespace BPrivate
|
||||
|
||||
} // namespace BHPKG
|
||||
|
||||
} // namespace BPackageKit
|
||||
|
||||
|
||||
#endif // _PACKAGE__HPKG__PRIVATE__DATA_WRITERS_H_
|
||||
@@ -7,7 +7,6 @@
|
||||
|
||||
|
||||
#include <Array.h>
|
||||
#include <package/hpkg/DataWriters.h>
|
||||
#include <package/hpkg/PackageFileHeapAccessorBase.h>
|
||||
|
||||
|
||||
@@ -31,8 +30,7 @@ namespace BPrivate {
|
||||
class PackageFileHeapReader;
|
||||
|
||||
|
||||
class PackageFileHeapWriter : public PackageFileHeapAccessorBase,
|
||||
private AbstractDataWriter {
|
||||
class PackageFileHeapWriter : public PackageFileHeapAccessorBase {
|
||||
public:
|
||||
PackageFileHeapWriter(BErrorOutput* errorOutput,
|
||||
int fd, off_t heapOffset,
|
||||
@@ -42,11 +40,9 @@ public:
|
||||
void Init();
|
||||
void Reinit(PackageFileHeapReader* heapReader);
|
||||
|
||||
AbstractDataWriter* DataWriter()
|
||||
{ return this; }
|
||||
|
||||
status_t AddData(BDataReader& dataReader, off_t size,
|
||||
uint64& _offset);
|
||||
void AddDataThrows(const void* buffer, size_t size);
|
||||
void RemoveDataRanges(
|
||||
const ::BPrivate::RangeArray<uint64>&
|
||||
ranges);
|
||||
@@ -58,11 +54,6 @@ protected:
|
||||
void* compressedDataBuffer,
|
||||
void* uncompressedDataBuffer);
|
||||
|
||||
private:
|
||||
// AbstractDataWriter
|
||||
virtual status_t WriteDataNoThrow(const void* buffer,
|
||||
size_t size);
|
||||
|
||||
private:
|
||||
struct Chunk;
|
||||
struct ChunkSegment;
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
#include <package/hpkg/HPKGDefsPrivate.h>
|
||||
|
||||
#include <package/hpkg/DataWriters.h>
|
||||
#include <package/hpkg/PackageFileHeapWriter.h>
|
||||
#include <package/hpkg/PackageWriter.h>
|
||||
#include <package/hpkg/Strings.h>
|
||||
#include <package/hpkg/ZlibCompressor.h>
|
||||
@@ -30,9 +30,6 @@ class BErrorOutput;
|
||||
namespace BPrivate {
|
||||
|
||||
|
||||
class AbstractDataWriter;
|
||||
class PackageFileHeapWriter;
|
||||
|
||||
struct hpkg_header;
|
||||
|
||||
|
||||
@@ -183,8 +180,6 @@ private:
|
||||
int fFD;
|
||||
bool fFinished;
|
||||
|
||||
AbstractDataWriter* fDataWriter;
|
||||
|
||||
StringCache fPackageStringCache;
|
||||
PackageAttributeList fPackageAttributes;
|
||||
};
|
||||
@@ -208,7 +203,7 @@ WriterImplBase::WriteString(const char* string)
|
||||
inline void
|
||||
WriterImplBase::WriteBuffer(const void* data, size_t size)
|
||||
{
|
||||
fDataWriter->WriteDataThrows(data, size);
|
||||
fHeapWriter->AddDataThrows(data, size);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user