From 469bbcf0701e1eb8a6670c23145b0da87357e178 Mon Sep 17 00:00:00 2001 From: Mike Buland Date: Sun, 25 Mar 2012 20:00:08 +0000 Subject: Code is all reorganized. We're about ready to release. I should write up a little explenation of the arrangement. --- src/tafgroup.cpp | 224 ------------------------------------------------------- 1 file changed, 224 deletions(-) delete mode 100644 src/tafgroup.cpp (limited to 'src/tafgroup.cpp') diff --git a/src/tafgroup.cpp b/src/tafgroup.cpp deleted file mode 100644 index ee180c3..0000000 --- a/src/tafgroup.cpp +++ /dev/null @@ -1,224 +0,0 @@ -/* - * Copyright (C) 2007-2011 Xagasoft, All rights reserved. - * - * This file is part of the libbu++ library and is released under the - * terms of the license contained in the file LICENSE. - */ - -#include "bu/tafgroup.h" -#include "bu/tafproperty.h" -#include "bu/tafcomment.h" - -Bu::TafGroup::TafGroup( const TafGroup &rSrc ) : - TafNode( typeGroup ), - sName( rSrc.sName ) -{ - for( NodeList::const_iterator i = rSrc.lChildren.begin(); i; i++ ) - { - switch( (*i)->getType() ) - { - case typeGroup: - addChild( new TafGroup( *dynamic_cast(*i) ) ); - break; - - case typeProperty: - addChild( new TafProperty( *dynamic_cast(*i) ) ); - break; - - case typeComment: - addChild( new TafComment( *dynamic_cast(*i) ) ); - break; - } - } -} - -Bu::TafGroup::TafGroup( const Bu::String &sName ) : - TafNode( typeGroup ), - sName( sName ) -{ -} - -Bu::TafGroup::~TafGroup() -{ - for( NodeList::iterator i = lChildren.begin(); i != lChildren.end(); i++ ) - { - delete (*i); - } -} - -const Bu::String &Bu::TafGroup::getName() const -{ - return sName; -} - -void Bu::TafGroup::setName( const Bu::String &sName ) -{ - this->sName = sName; -} - -Bu::TafNode *Bu::TafGroup::addChild( Bu::TafNode *pNode ) -{ - switch( pNode->getType() ) - { - case typeGroup: - addChild( (Bu::TafGroup *)pNode ); - break; - - case typeProperty: - addChild( (Bu::TafProperty *)pNode ); - break; - - case typeComment: - addChild( (Bu::TafComment *)pNode ); - break; - } - - return pNode; -} - -Bu::TafGroup *Bu::TafGroup::addChild( TafGroup *pNode ) -{ - TafGroup *pGroup = (TafGroup *)pNode; - if( !hChildren.has( pGroup->getName() ) ) - hChildren.insert( pGroup->getName(), GroupList() ); - hChildren.get( pGroup->getName() ).append( pGroup ); - lChildren.append( pNode ); - return pNode; -} - -Bu::TafProperty *Bu::TafGroup::addChild( TafProperty *pNode ) -{ - TafProperty *pProperty = (TafProperty *)pNode; - if( !hProp.has( pProperty->getName() ) ) - hProp.insert( pProperty->getName(), PropList() ); - hProp.get( pProperty->getName() ).append( pProperty->getValue() ); - lChildren.append( pNode ); - return pNode; -} - -Bu::TafComment *Bu::TafGroup::addChild( TafComment *pNode ) -{ - lChildren.append( pNode ); - return pNode; -} - -Bu::TafGroup *Bu::TafGroup::addGroup( const Bu::String &sName ) -{ - return addChild( new TafGroup( sName ) ); -} - -Bu::TafProperty *Bu::TafGroup::addProperty( - const Bu::String &sName, const Bu::String &sValue ) -{ - return addChild( new TafProperty( sName, sValue ) ); -} - -bool Bu::TafGroup::hasChild( const Bu::String &sName ) const -{ - return hChildren.has( sName ); -} - -const Bu::TafGroup::GroupList &Bu::TafGroup::getChildren( const Bu::String &sName ) const -{ - try { - return hChildren.get( sName ); - } catch( Bu::HashException &e ) - { - throw Bu::TafException("No children of group \"%s\" match \"%s\".", - this->sName.getStr(), sName.getStr() ); - } -} - -const Bu::TafGroup::NodeList &Bu::TafGroup::getChildren() const -{ - return lChildren; -} - -const Bu::TafGroup *Bu::TafGroup::getChild( const Bu::String &sName ) const -{ - try { - return hChildren.get( sName ).first(); - } catch( Bu::HashException &e ) - { - throw Bu::TafException("No children of group \"%s\" match \"%s\".", - this->sName.getStr(), sName.getStr() ); - } -} - -bool Bu::TafGroup::hasProperty( const Bu::String &sName ) const -{ - return hProp.has( sName ); -} - -const Bu::TafGroup::PropList &Bu::TafGroup::getProperties( const Bu::String &sName ) const -{ - try { - return hProp.get( sName ); - } catch( Bu::HashException &e ) - { - throw Bu::TafException("No properties of group \"%s\" match \"%s\".", - this->sName.getStr(), sName.getStr() ); - } -} - -const Bu::String &Bu::TafGroup::getProperty( const Bu::String &sName ) const -{ - try { - return hProp.get( sName ).first(); - } catch( Bu::HashException &e ) - { - throw Bu::TafException("No properties of group \"%s\" match \"%s\".", - this->sName.getStr(), sName.getStr() ); - } -} - -const Bu::String &Bu::TafGroup::getProperty( const Bu::String &sName, - const Bu::String &sDef ) const -{ - try - { - return hProp.get( sName ).first(); - } - catch( Bu::HashException &e ) - { - return sDef; - } -} - -const Bu::TafGroup *Bu::TafGroup::getChildByPath( - const Bu::String &sPath ) const -{ - return getChildByPath( sPath.split('/') ); -} - -const Bu::TafGroup *Bu::TafGroup::getChildByPath( Bu::StrList lPath ) const -{ - const Bu::TafGroup *cur = this; - - for( Bu::StrList::const_iterator i = lPath.begin(); i; i++ ) - { - cur = cur->getChild( *i ); - } - - return cur; -} - -const Bu::String &Bu::TafGroup::getByPath( const Bu::String &sPath ) const -{ - return getByPath( sPath.split('/') ); -} - -const Bu::String &Bu::TafGroup::getByPath( Bu::StrList lPath ) const -{ - const Bu::TafGroup *cur = this; - - for( Bu::StrList::const_iterator i = lPath.begin(); i; i++ ) - { - if( !(i+1) ) - break; - cur = cur->getChild( *i ); - } - - return cur->getProperty( lPath.last() ); -} - -- cgit v1.2.3