Wraps a file in a zip archive into a stream.
The file is immediately loaded and buffered in a memory buffer and the ZipEntry is closed directly after.
The IO::Server allows transparent access to data in zip files through normal "file:" URIs by first checking whether the file is part of a mounted zip archive. Only if this is not the case, the file will be opened as normal.
To force reading from a zip archive, use an URI of the following format:
zip://[samba server]/bla/blob/archive.zip?file=path/in/zipfile&pwd=password
This assumes that the URI scheme "zip" has been associated with the ZipFileStream class using the IO::Server::RegisterUriScheme() method.
The server and local path part of the URI contain the path to the zip archive file. The query part contains the path of the file in the zip archive and an optional password.
- Copyright
- (C) 2006 Radon Labs GmbH (C) 2013-2020 Individual contributors, see AUTHORS file
|
| ZipFileStream () |
| constructor
|
|
virtual | ~ZipFileStream () |
| destructor
|
|
virtual bool | CanRead () const |
| memory streams support reading
|
|
virtual bool | CanWrite () const |
| memory streams support writing
|
|
virtual bool | CanSeek () const |
| memory streams support seeking
|
|
virtual bool | CanBeMapped () const |
| memory streams are mappable
|
|
virtual Size | GetSize () const |
| get the size of the stream in bytes
|
|
virtual Position | GetPosition () const |
| get the current position of the read/write cursor
|
|
virtual bool | Open () |
| open the stream
|
|
virtual void | Close () |
| close the stream
|
|
virtual Size | Read (void *ptr, Size numBytes) |
| directly read from the stream
|
|
virtual void | Seek (Offset offset, SeekOrigin origin) |
| seek in stream, only forward seeks are allowed
|
|
virtual bool | Eof () const |
| return true if end-of-stream reached
|
|
virtual void * | Map () |
| map for direct memory-access
|
|
virtual void | Unmap () |
| unmap a mapped stream
|
|
virtual void * | MemoryMap () |
| map for direct memory-access, does nothing but call Map()
|
|
virtual void | MemoryUnmap () |
| unmap memory stream
|
|
| Stream () |
| constructor
|
|
virtual | ~Stream () |
| destructor
|
|
void | SetURI (const URI &u) |
| set stream location as URI
|
|
const URI & | GetURI () const |
| get stream URI
|
|
virtual void | SetSize (Size s) |
| set a new size for the stream
|
|
void | SetAccessMode (AccessMode m) |
| set the access mode of the stream (default is ReadAccess)
|
|
AccessMode | GetAccessMode () const |
| get the access mode of the stream
|
|
void | SetAccessPattern (AccessPattern p) |
| set the prefered access pattern (default is Sequential)
|
|
AccessPattern | GetAccessPattern () const |
| get the prefered access pattern
|
|
void | SetMediaType (const MediaType &t) |
| set optional media type of stream content
|
|
const MediaType & | GetMediaType () const |
| get optional media type
|
|
bool | IsOpen () const |
| return true if currently open
|
|
virtual void | Write (const void *ptr, Size numBytes) |
| directly write to the stream
|
|
virtual void | Flush () |
| flush unsaved data
|
|
bool | IsMapped () const |
| return true if stream is currently mapped to memory
|
|
| RefCounted () |
| constructor
|
|
int | GetRefCount () const |
| get the current refcount
|
|
void | AddRef () |
| increment refcount by one
|
|
void | Release () |
| decrement refcount and destroy object if refcount is zero
|
|
bool | IsInstanceOf (const Rtti &rtti) const |
| return true if this object is instance of given class
|
|
bool | IsInstanceOf (const Util::String &className) const |
| return true if this object is instance of given class by string
|
|
bool | IsInstanceOf (const Util::FourCC &classFourCC) const |
| return true if this object is instance of given class by fourcc
|
|
bool | IsA (const Rtti &rtti) const |
| return true if this object is instance of given class, or a derived class
|
|
bool | IsA (const Util::String &rttiName) const |
| return true if this object is instance of given class, or a derived class, by string
|
|
bool | IsA (const Util::FourCC &rttiFourCC) const |
| return true if this object is instance of given class, or a derived class, by fourcc
|
|
const Util::String & | GetClassName () const |
| get the class name
|
|
Util::FourCC | GetClassFourCC () const |
| get the class FourCC code
|
|