Nebula
Loading...
Searching...
No Matches
IO::ZipDirEntry Class Reference

#include <zipdirentry.h>

Detailed Description

A directory entry in a zip arcive.

The ZipDirEntry class is thread-safe, all public methods can be invoked from on the same object from different threads.

Public Member Functions

 ZipDirEntry ()
 constructor
 
const Util::StringAtomGetName () const
 get the name of the dir entry
 
ZipFileEntryFindFileEntry (const Util::StringAtom &name) const
 find a direct child file entry, return 0 if not exists
 
ZipDirEntryFindDirEntry (const Util::StringAtom &name) const
 find a direct child directory entry, return 0 if not exists
 
const Util::Array< ZipDirEntry > & GetDirEntries () const
 get directory entries
 
const Util::Array< ZipFileEntry > & GetFileEntries () const
 get file entries
 

Private Member Functions

void SetName (const Util::StringAtom &n)
 set the name of the dir entry
 
ZipFileEntryAddFileEntry (const Util::StringAtom &name)
 add a file child entry
 
ZipDirEntryAddDirEntry (const Util::StringAtom &name)
 add a directory child entry
 

Private Attributes

Util::StringAtom name
 
Util::Array< ZipFileEntryfileEntries
 
Util::Array< ZipDirEntrydirEntries
 
Util::Dictionary< Util::StringAtom, IndexTfileIndexMap
 
Util::Dictionary< Util::StringAtom, IndexTdirIndexMap
 

Friends

class ZipArchive
 

Constructor & Destructor Documentation

◆ ZipDirEntry()

IO::ZipDirEntry::ZipDirEntry ( )

constructor

Member Function Documentation

◆ AddDirEntry()

ZipDirEntry * IO::ZipDirEntry::AddDirEntry ( const Util::StringAtom & name)
private

add a directory child entry

Adds a new directory entry object to the internal dictionary.

NOTE: this method will not check whether the entry already exists for performance reasons (doing this would force the dictionary to be sorted after every insert).

The method returns a reference to the actually added DirEntry.

◆ AddFileEntry()

ZipFileEntry * IO::ZipDirEntry::AddFileEntry ( const Util::StringAtom & name)
private

add a file child entry

Adds a new file entry object to the internal dictionary.

NOTE: this method will not check whether the entry already exists for performance reasons (doing this would force the dictionary to be sorted after every insert).

The method returns a reference of the actually added file entry.

◆ FindDirEntry()

ZipDirEntry * IO::ZipDirEntry::FindDirEntry ( const Util::StringAtom & name) const

find a direct child directory entry, return 0 if not exists

◆ FindFileEntry()

ZipFileEntry * IO::ZipDirEntry::FindFileEntry ( const Util::StringAtom & name) const

find a direct child file entry, return 0 if not exists

◆ GetDirEntries()

const Util::Array< ZipDirEntry > & IO::ZipDirEntry::GetDirEntries ( ) const
inline

get directory entries

◆ GetFileEntries()

const Util::Array< ZipFileEntry > & IO::ZipDirEntry::GetFileEntries ( ) const
inline

get file entries

◆ GetName()

const Util::StringAtom & IO::ZipDirEntry::GetName ( ) const
inline

get the name of the dir entry

◆ SetName()

void IO::ZipDirEntry::SetName ( const Util::StringAtom & n)
inlineprivate

set the name of the dir entry

Friends And Related Symbol Documentation

◆ ZipArchive

friend class ZipArchive
friend

Member Data Documentation

◆ dirEntries

Util::Array<ZipDirEntry> IO::ZipDirEntry::dirEntries
private

◆ dirIndexMap

Util::Dictionary<Util::StringAtom, IndexT> IO::ZipDirEntry::dirIndexMap
private

◆ fileEntries

Util::Array<ZipFileEntry> IO::ZipDirEntry::fileEntries
private

◆ fileIndexMap

Util::Dictionary<Util::StringAtom, IndexT> IO::ZipDirEntry::fileIndexMap
private

◆ name

Util::StringAtom IO::ZipDirEntry::name
private

The documentation for this class was generated from the following files: