storage::Container Class Reference

#include <Container.h>

Inheritance diagram for storage::Container:

storage::Disk storage::LoopCo storage::MdCo storage::PeContainer storage::Dasd storage::DmCo storage::DmPartCo storage::EvmsCo storage::LvmVg storage::DmraidCo List of all members.

Public Types

typedef DerefIterator< ConstVolPIterator,
const Volume
ConstVolIterator
typedef IterPair< ConstVolIteratorConstVolPair

Public Member Functions

bool operator== (const Container &rhs) const
bool operator!= (const Container &rhs) const
bool operator< (const Container &rhs) const
bool operator<= (const Container &rhs) const
bool operator>= (const Container &rhs) const
bool operator> (const Container &rhs) const
bool equalContent (const Container &rhs) const
string logDifference (const Container &c) const
virtual void getCommitActions (std::list< storage::commitAction * > &l) const
virtual int getToCommit (storage::CommitStage stage, std::list< Container * > &col, std::list< Volume * > &vol)
virtual int commitChanges (storage::CommitStage stage)
virtual int commitChanges (storage::CommitStage stage, Volume *vol)
unsigned numVolumes () const
bool isEmpty () const
void getInfo (storage::ContainerInfo &info) const
bool findVolume (const string &device, Volume *&vol)
ConstVolPair volPair (bool(*CheckFnc)(const Volume &)=NULL) const
ConstVolIterator volBegin (bool(*CheckFnc)(const Volume &)=NULL) const
ConstVolIterator volEnd (bool(*CheckFnc)(const Volume &)=NULL) const
template<class Pred>
VolCondIPair< Pred >::type volCondPair (const Pred &p) const
template<class Pred>
ConstVolumeI< Pred >::type volCondBegin (const Pred &p) const
template<class Pred>
ConstVolumeI< Pred >::type volCondEnd (const Pred &p) const
 Container (Storage *const, const string &Name, storage::CType typ)
 Container (const Container &)
Storage *const getStorage () const
virtual ~Container ()
const string & name () const
const string & device () const
storage::CType type () const
bool deleted () const
bool created () const
void setDeleted (bool val=true)
void setCreated (bool val=true)
void setSilent (bool val=true)
void setUsedBy (storage::UsedByType t, const string &name)
const storage::usedBygetUsedBy () const
storage::UsedByType getUsedByType () const
const string & usedByName () const
bool readonly () const
unsigned long minorNr () const
unsigned long majorNr () const
unsigned long long sizeK () const
virtual string removeText (bool doing=true) const
virtual string createText (bool doing=true) const
virtual int resizeVolume (Volume *v, unsigned long long newSize)
virtual int removeVolume (Volume *v)
virtual ContainergetCopy () const
bool compareContainer (const Container *c, bool verbose) const
void setExtError (const string &txt) const
void setExtError (const SystemCmd &cmd, bool serr=true) const

Static Public Member Functions

static storage::CType const staticType ()

Protected Types

typedef std::list< Volume * > VCont
typedef VCont::iterator VIter
typedef VCont::const_iterator CVIter
typedef VCont::reverse_iterator RVIter
typedef VCont::const_reverse_iterator CRVIter
typedef CheckFnc< const VolumeCheckFncVol
typedef CheckerIterator< CheckFncVol,
ConstVolumePI< CheckFncVol
>::type, CVIter, Volume
ConstVolPIterator
typedef CheckerIterator< CheckFncVol,
VolumePI< CheckFncVol
>::type, VIter, Volume
VolPIterator
typedef DerefIterator< VolPIterator,
Volume
VolIterator
typedef IterPair< VolIteratorVolPair
typedef CVIter ConstPlainIterator
typedef VIter PlainIterator

Protected Member Functions

VolPair volPair (bool(*CheckFnc)(const Volume &)=NULL)
VolIterator vBegin (bool(*CheckFnc)(const Volume &)=NULL)
VolIterator vEnd (bool(*CheckFnc)(const Volume &)=NULL)
ConstPlainIterator begin () const
ConstPlainIterator end () const
PlainIterator begin ()
PlainIterator end ()
virtual void print (std::ostream &s) const
void addToList (Volume *e)
bool removeFromList (Volume *e)
virtual int doCreate (Volume *v)
virtual int doRemove (Volume *v)
virtual int doResize (Volume *v)
virtual void logData (const string &Dir)
Containeroperator= (const Container &)

Static Protected Member Functions

static bool stageDecrease (const Volume &v)
static bool stageCreate (const Volume &v)

Protected Attributes

Storage *const sto
storage::CType typ
string nm
string dev
bool del
bool create
bool silent
bool ronly
storage::usedBy uby
unsigned long long size_k
unsigned long mnr
unsigned long mjr
VCont vols
storage::ContainerInfo info

Static Protected Attributes

static string type_names [COTYPE_LAST_ENTRY]
static unsigned order [COTYPE_LAST_ENTRY]

Friends

class Storage
class ListListIterator
std::ostream & operator<< (std::ostream &s, const Container &c)

Classes

struct  ConstVolumeI
struct  ConstVolumePI
struct  VolCondIPair
struct  VolumeI
struct  VolumePI

Member Typedef Documentation

typedef std::list<Volume*> storage::Container::VCont [protected]

typedef VCont::iterator storage::Container::VIter [protected]

typedef VCont::const_iterator storage::Container::CVIter [protected]

typedef VCont::reverse_iterator storage::Container::RVIter [protected]

typedef VCont::const_reverse_iterator storage::Container::CRVIter [protected]

typedef CheckFnc<const Volume> storage::Container::CheckFncVol [protected]

typedef CheckerIterator< CheckFncVol, ConstVolumePI<CheckFncVol>::type, CVIter, Volume> storage::Container::ConstVolPIterator [protected]

typedef CheckerIterator< CheckFncVol, VolumePI<CheckFncVol>::type, VIter, Volume> storage::Container::VolPIterator [protected]

typedef DerefIterator<VolPIterator,Volume> storage::Container::VolIterator [protected]

typedef IterPair<VolIterator> storage::Container::VolPair [protected]

typedef DerefIterator<ConstVolPIterator,const Volume> storage::Container::ConstVolIterator

typedef IterPair<ConstVolIterator> storage::Container::ConstVolPair

typedef CVIter storage::Container::ConstPlainIterator [protected]

typedef VIter storage::Container::PlainIterator [protected]


Constructor & Destructor Documentation

Container::Container ( Storage const,
const string &  Name,
storage::CType  typ 
)

Container::Container ( const Container  ) 

Container::~Container (  )  [virtual]


Member Function Documentation

bool storage::Container::operator== ( const Container rhs  )  const [inline]

bool storage::Container::operator!= ( const Container rhs  )  const [inline]

bool storage::Container::operator< ( const Container rhs  )  const [inline]

bool storage::Container::operator<= ( const Container rhs  )  const [inline]

bool storage::Container::operator>= ( const Container rhs  )  const [inline]

bool storage::Container::operator> ( const Container rhs  )  const [inline]

bool Container::equalContent ( const Container rhs  )  const

string Container::logDifference ( const Container c  )  const

virtual void storage::Container::getCommitActions ( std::list< storage::commitAction * > &  l  )  const [virtual]

Reimplemented in storage::Dasd, storage::Disk, storage::DmPartCo, storage::EvmsCo, and storage::LvmVg.

virtual int storage::Container::getToCommit ( storage::CommitStage  stage,
std::list< Container * > &  col,
std::list< Volume * > &  vol 
) [virtual]

Reimplemented in storage::Dasd, storage::Disk, storage::DmPartCo, storage::EvmsCo, and storage::LvmVg.

int Container::commitChanges ( storage::CommitStage  stage  )  [virtual]

Reimplemented in storage::Dasd, storage::Disk, storage::DmPartCo, storage::EvmsCo, and storage::LvmVg.

int Container::commitChanges ( storage::CommitStage  stage,
Volume vol 
) [virtual]

Reimplemented in storage::Disk, and storage::DmPartCo.

unsigned Container::numVolumes (  )  const

bool Container::isEmpty (  )  const

void Container::getInfo ( storage::ContainerInfo info  )  const

bool Container::findVolume ( const string &  device,
Volume *&  vol 
)

ConstVolPair storage::Container::volPair ( bool(*)(const Volume &)  CheckFnc = NULL  )  const [inline]

ConstVolIterator storage::Container::volBegin ( bool(*)(const Volume &)  CheckFnc = NULL  )  const [inline]

ConstVolIterator storage::Container::volEnd ( bool(*)(const Volume &)  CheckFnc = NULL  )  const [inline]

template<class Pred>
VolCondIPair<Pred>::type storage::Container::volCondPair ( const Pred &  p  )  const [inline]

template<class Pred>
ConstVolumeI<Pred>::type storage::Container::volCondBegin ( const Pred &  p  )  const [inline]

template<class Pred>
ConstVolumeI<Pred>::type storage::Container::volCondEnd ( const Pred &  p  )  const [inline]

VolPair storage::Container::volPair ( bool(*)(const Volume &)  CheckFnc = NULL  )  [inline, protected]

VolIterator storage::Container::vBegin ( bool(*)(const Volume &)  CheckFnc = NULL  )  [inline, protected]

VolIterator storage::Container::vEnd ( bool(*)(const Volume &)  CheckFnc = NULL  )  [inline, protected]

Storage* const storage::Container::getStorage (  )  const [inline]

const string& storage::Container::name (  )  const [inline]

const string& storage::Container::device (  )  const [inline]

storage::CType storage::Container::type (  )  const [inline]

bool storage::Container::deleted (  )  const [inline]

bool storage::Container::created (  )  const [inline]

void storage::Container::setDeleted ( bool  val = true  )  [inline]

void storage::Container::setCreated ( bool  val = true  )  [inline]

void storage::Container::setSilent ( bool  val = true  )  [inline]

void storage::Container::setUsedBy ( storage::UsedByType  t,
const string &  name 
) [inline]

const storage::usedBy& storage::Container::getUsedBy (  )  const [inline]

storage::UsedByType storage::Container::getUsedByType (  )  const [inline]

const string& storage::Container::usedByName (  )  const [inline]

bool storage::Container::readonly (  )  const [inline]

unsigned long storage::Container::minorNr (  )  const [inline]

unsigned long storage::Container::majorNr (  )  const [inline]

unsigned long long storage::Container::sizeK (  )  const [inline]

Reimplemented in storage::DmPartCo, and storage::PeContainer.

string Container::removeText ( bool  doing = true  )  const [virtual]

Reimplemented in storage::DmPartCo, and storage::DmraidCo.

string Container::createText ( bool  doing = true  )  const [virtual]

int Container::resizeVolume ( Volume v,
unsigned long long  newSize 
) [virtual]

Reimplemented in storage::Disk, storage::DmPartCo, storage::EvmsCo, and storage::LvmVg.

int Container::removeVolume ( Volume v  )  [virtual]

Reimplemented in storage::Disk, storage::DmCo, storage::DmPartCo, storage::EvmsCo, storage::LoopCo, storage::LvmVg, and storage::MdCo.

static storage::CType const storage::Container::staticType (  )  [inline, static]

Reimplemented in storage::Disk, storage::DmCo, storage::DmPartCo, storage::DmraidCo, storage::EvmsCo, storage::LoopCo, storage::LvmVg, and storage::MdCo.

virtual Container* storage::Container::getCopy (  )  const [inline, virtual]

Reimplemented in storage::Disk, storage::DmCo, storage::DmPartCo, storage::DmraidCo, storage::EvmsCo, storage::LoopCo, storage::LvmVg, storage::MdCo, and storage::PeContainer.

bool Container::compareContainer ( const Container c,
bool  verbose 
) const

void Container::setExtError ( const string &  txt  )  const

void Container::setExtError ( const SystemCmd cmd,
bool  serr = true 
) const

ConstPlainIterator storage::Container::begin (  )  const [inline, protected]

ConstPlainIterator storage::Container::end (  )  const [inline, protected]

PlainIterator storage::Container::begin (  )  [inline, protected]

PlainIterator storage::Container::end (  )  [inline, protected]

virtual void storage::Container::print ( std::ostream &  s  )  const [inline, protected, virtual]

Reimplemented in storage::Dasd, storage::Disk, storage::DmCo, storage::DmPartCo, storage::DmraidCo, storage::EvmsCo, storage::LoopCo, storage::LvmVg, storage::MdCo, and storage::PeContainer.

void storage::Container::addToList ( Volume e  )  [inline, protected]

bool Container::removeFromList ( Volume e  )  [protected]

int Container::doCreate ( Volume v  )  [protected, virtual]

Reimplemented in storage::Dasd, storage::Disk, storage::DmPartCo, storage::EvmsCo, storage::LoopCo, storage::LvmVg, and storage::MdCo.

int Container::doRemove ( Volume v  )  [protected, virtual]

Reimplemented in storage::Dasd, storage::Disk, storage::DmCo, storage::DmPartCo, storage::EvmsCo, storage::LoopCo, storage::LvmVg, and storage::MdCo.

int Container::doResize ( Volume v  )  [protected, virtual]

Reimplemented in storage::Dasd, storage::Disk, storage::DmPartCo, storage::EvmsCo, and storage::LvmVg.

virtual void storage::Container::logData ( const string &  Dir  )  [inline, protected, virtual]

Reimplemented in storage::Disk, storage::DmCo, storage::DmPartCo, storage::DmraidCo, storage::EvmsCo, storage::LoopCo, storage::LvmVg, and storage::MdCo.

Container & Container::operator= ( const Container  )  [protected]

static bool storage::Container::stageDecrease ( const Volume v  )  [inline, static, protected]

static bool storage::Container::stageCreate ( const Volume v  )  [inline, static, protected]


Friends And Related Function Documentation

friend class Storage [friend]

Reimplemented in storage::Dasd, storage::Disk, storage::DmCo, storage::DmPartCo, storage::DmraidCo, storage::EvmsCo, storage::LoopCo, storage::LvmVg, storage::MdCo, and storage::PeContainer.

friend class ListListIterator [friend]

std::ostream& operator<< ( std::ostream &  s,
const Container c 
) [friend]


Member Data Documentation

string Container::type_names [static, protected]

unsigned storage::Container::order[COTYPE_LAST_ENTRY] [static, protected]

Storage* const storage::Container::sto [protected]

storage::CType storage::Container::typ [protected]

string storage::Container::nm [protected]

string storage::Container::dev [protected]

bool storage::Container::del [protected]

bool storage::Container::create [protected]

bool storage::Container::silent [protected]

bool storage::Container::ronly [protected]

storage::usedBy storage::Container::uby [protected]

unsigned long long storage::Container::size_k [protected]

unsigned long storage::Container::mnr [protected]

unsigned long storage::Container::mjr [protected]

VCont storage::Container::vols [protected]

storage::ContainerInfo storage::Container::info [mutable, protected]

Reimplemented in storage::Disk, storage::DmPartCo, storage::EvmsCo, and storage::LvmVg.


The documentation for this class was generated from the following files:
Generated on Tue Nov 28 17:50:01 2006 for yast2-storage by  doxygen 1.5.0