[GME-commit] GMESRC/Paradigms/MetaGME/MetaInterpreter2004
BON2Component.cpp,1.11,1.12 BON2Component.h,1.5,1.6
gme-commit at list.isis.vanderbilt.edu
gme-commit at list.isis.vanderbilt.edu
Thu Mar 11 09:39:40 CST 2004
Update of /var/lib/gme/GMESRC/Paradigms/MetaGME/MetaInterpreter2004
In directory braindrain:/tmp/cvs-serv7423
Modified Files:
BON2Component.cpp BON2Component.h
Log Message:
Library subfolders issue resolved.
CVS User: zolmol
Index: BON2Component.cpp
===================================================================
RCS file: /var/lib/gme/GMESRC/Paradigms/MetaGME/MetaInterpreter2004/BON2Component.cpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** BON2Component.cpp 10 Mar 2004 02:36:27 -0000 1.11
--- BON2Component.cpp 11 Mar 2004 15:39:37 -0000 1.12
***************
*** 107,110 ****
--- 107,121 ----
+ void Component::scanSubFolders( const std::set<Folder>& subfolders, std::set<Folder>& result)
+ {
+ if (subfolders.empty()) return;
+
+ result.insert( subfolders.begin(), subfolders.end());
+ std::set<Folder>::iterator sub_it = subfolders.begin();
+ for( ; sub_it != subfolders.end(); ++sub_it)
+ scanSubFolders( (*sub_it)->getChildFolders(), result);
+ }
+
+
void Component::scanProject( Project& project)
{
***************
*** 114,121 ****
Sheet::m_BON_Project_Root_Folder = rf;
! std::set<Folder> folders = rf->getChildFolders(); // scan folders
folders.insert( rf); // including root folder
! std::set<Folder> libs = project->getLibraries();
! folders.insert( libs.begin(), libs.end());
std::set<Folder>::iterator folder_it = folders.begin();
for( ; folder_it != folders.end(); ++folder_it)
--- 125,133 ----
Sheet::m_BON_Project_Root_Folder = rf;
! std::set<Folder> folders;
folders.insert( rf); // including root folder
! std::set<Folder> subfolders = rf->getChildFolders(); // scan folders
! folders.insert( subfolders.begin(), subfolders.end());
!
std::set<Folder>::iterator folder_it = folders.begin();
for( ; folder_it != folders.end(); ++folder_it)
***************
*** 126,129 ****
--- 138,157 ----
scanModels( *i, *folder_it); // scan all root models
}
+
+ std::set<Folder> library_rf = project->getLibraries(); // get all libraries
+ std::set<Folder>::iterator lib_rf_it = library_rf.begin();
+ for( ; lib_rf_it != library_rf.end(); ++lib_rf_it)
+ {
+ folders.clear();
+ scanSubFolders( (*lib_rf_it)->getChildFolders(), folders); // get all subfolders of a library root folder
+ folders.insert( *lib_rf_it); // insert the library root folder too
+ for( folder_it = folders.begin(); folder_it != folders.end(); ++folder_it)
+ {
+ std::set<Model> objs = (*folder_it)->getChildModels();
+ std::set<Model>::iterator i = objs.begin();
+ for( ; i != objs.end(); ++i)
+ scanModels( *i, *lib_rf_it); // scan all library contained models, with the library rootfolder as its registry information holder
+ }
+ }
}
catch(...)
***************
*** 195,201 ****
}
else
! {
! TO( std::string("Error: weird aspect member operation\nOp1: ") + (*aspect)->getName() + "\nOp2: " + (*asp_elem)->getName());
! }
}
}
--- 223,227 ----
}
else
! global_vars.err << "Error: weird aspect member operation\nOp1: " << (*aspect)->getName() << "\nOp2: " << (*asp_elem)->getName();
}
}
***************
*** 1462,1469 ****
m_entities.push_back( Entity( BON::Folder(), rel_it->getOp1()));
if ( ptr != BON::Object())
! TO( std::string("CHECK: Operand 1 of ") + rel_it->getOperationStr() + " is not present in Entities\n" +
! ptr->getName() + " : " + ptr->getObjectMeta().name() + " has been inserted");
else
! TO( std::string("CHECK: Operand 1 of ") + rel_it->getOperationStr() + " is null\n");
}
if ( ent2 == Entity( BON::Folder(), BON::Object()))
--- 1488,1495 ----
m_entities.push_back( Entity( BON::Folder(), rel_it->getOp1()));
if ( ptr != BON::Object())
! global_vars.err << "Internal error: Operand 1 of " << rel_it->getOperationStr() << " is not present in Entities\n" <<
! ptr->getName() << " : " << ptr->getObjectMeta().name() << " has been inserted";
else
! global_vars.err << "Internal error: Operand 1 of " << rel_it->getOperationStr() << " is null\n";
}
if ( ent2 == Entity( BON::Folder(), BON::Object()))
***************
*** 1472,1479 ****
m_entities.push_back( Entity( BON::Folder(), rel_it->getOp2()));
if ( ptr != BON::Object())
! TO( std::string("CHECK: Operand 2 of ") + rel_it->getOperationStr() + " is not present in Entities\n" +
! ptr->getName() + " : " + ptr->getObjectMeta().name() + " has been inserted");
else
! TO( std::string("CHECK: Operand 2 of ") + rel_it->getOperationStr() + " is null\n");
}
if ( ent3 == Entity( BON::Folder(), BON::Object()))
--- 1498,1505 ----
m_entities.push_back( Entity( BON::Folder(), rel_it->getOp2()));
if ( ptr != BON::Object())
! global_vars.err << "Internal error: Operand 2 of " << rel_it->getOperationStr() << " is not present in Entities\n" <<
! ptr->getName() << " : " << ptr->getObjectMeta().name() << " has been inserted";
else
! global_vars.err << "Internal error: Operand 2 of " << rel_it->getOperationStr() << " is null\n";
}
if ( ent3 == Entity( BON::Folder(), BON::Object()))
***************
*** 1483,1492 ****
ptr = rel_it->getOp3();
m_entities.push_back( Entity( BON::Folder(), rel_it->getOp3()));
! TO( std::string("CHECK: Operand 3 of ") + rel_it->getOperationStr() + " is not present in Entities\n" +
! ptr->getName() + " : " + ptr->getObjectMeta().name() + " has been inserted");
}
else
{
! TO("CHECK: Association without Connection class: " + o1->getName() + " o " + o2->getName() );
}
}
--- 1509,1518 ----
ptr = rel_it->getOp3();
m_entities.push_back( Entity( BON::Folder(), rel_it->getOp3()));
! global_vars.err << "Internal error: Operand 3 of " << rel_it->getOperationStr() << " is not present in Entities\n" <<
! ptr->getName() << " : " << ptr->getObjectMeta().name() << " has been inserted";
}
else
{
! global_vars.err << "Internal error: Association without Connection class: " << o1->getName() << " o " << o2->getName() << "\n";
}
}
***************
*** 1496,1500 ****
if( rel_it->getOp1() == BON::Object() ||
rel_it->getOp2() == BON::Object() )
! TO( rel_it->getOperationStr() + "has one operand 0");
Entity ent1 = entitySearch( rel_it->getOp1());
--- 1522,1526 ----
if( rel_it->getOp1() == BON::Object() ||
rel_it->getOp2() == BON::Object() )
! global_vars.err << "Internal error: " << rel_it->getOperationStr() << " has one operand 0\n";
Entity ent1 = entitySearch( rel_it->getOp1());
***************
*** 1506,1513 ****
m_entities.push_back( Entity( BON::Folder(), rel_it->getOp1()));
if ( ptr != BON::Object())
! TO( std::string("CHECK: Operand 1 of ") + rel_it->getOperationStr() + " is not present in Entities\n" +
! ptr->getName() + " : " + ptr->getObjectMeta().name() + " has been inserted");
else
! TO( std::string("CHECK: Operand 1 of ") + rel_it->getOperationStr() + " is null\n");
}
if ( ent2 == Entity( BON::Folder(), BON::Object()))
--- 1532,1539 ----
m_entities.push_back( Entity( BON::Folder(), rel_it->getOp1()));
if ( ptr != BON::Object())
! global_vars.err << "Internal error: Operand 1 of " << rel_it->getOperationStr() << " is not present in Entities\n" <<
! ptr->getName() << " : " << ptr->getObjectMeta().name() << " has been inserted";
else
! global_vars.err << "Internal error: Operand 1 of " << rel_it->getOperationStr() + " is null\n";
}
if ( ent2 == Entity( BON::Folder(), BON::Object()))
***************
*** 1521,1528 ****
if ( rel_it->getOp2())
peer2 = rel_it->getOp2()->getName() + " " + rel_it->getOp2()->getObjectMeta().name();
! TO( std::string("CHECK: Operand 2 of ") + rel_it->getOperationStr() + " is not present in Entities\n" +
! ptr->getName() + " : " + ptr->getObjectMeta().name() + " has been inserted\n" +
! "Operand1: " + peer1 + "\n" +
! "Operand2: " + peer2 + "\n");
// try to check the members of a set
--- 1547,1554 ----
if ( rel_it->getOp2())
peer2 = rel_it->getOp2()->getName() + " " + rel_it->getOp2()->getObjectMeta().name();
! global_vars.err << "Internal error: Operand 2 of " << rel_it->getOperationStr() << " is not present in Entities\n" <<
! ptr->getName() << " : " << ptr->getObjectMeta().name() << " has been inserted\n" <<
! "Operand1: " << peer1 << "\n" <<
! "Operand2: " << peer2 << "\n";
// try to check the members of a set
***************
*** 1534,1538 ****
//BON::Set set = dynamic_cast<BON::Set>(obj);
BON::Set set = BON::Set( obj);
! if (!set) TO("ERROR during set manipulation");
std::set<FCO> list = set->getMembers();
--- 1560,1564 ----
//BON::Set set = dynamic_cast<BON::Set>(obj);
BON::Set set = BON::Set( obj);
! if (!set) global_vars.err << "Internal error: during set manipulation\n";
std::set<FCO> list = set->getMembers();
***************
*** 1547,1551 ****
++list_it;
}
! TO( "Aspect members are:\n" + mmm);
}
}
--- 1573,1577 ----
++list_it;
}
! global_vars.err << "Internal error: Aspect members are:\n" << mmm << "\n";
}
}
***************
*** 1554,1558 ****
{
if (rel_it->getOp3() == BON::Object())
! TO( "(Folder)Containment line object not present in m_relations list");
}
} // end if
--- 1580,1584 ----
{
if (rel_it->getOp3() == BON::Object())
! global_vars.err << "Internal error: (Folder)Containment line object not present in m_relations list\n";
}
} // end if
***************
*** 1578,1583 ****
ObjPointer o2 = rel_it1->getOp2();
! TO("Same attribute " + o2->getName() +
! " contained twice by " + o1->getName());
}
}
--- 1604,1609 ----
ObjPointer o2 = rel_it1->getOp2();
! global_vars.err << "Internal error: Same attribute " << o2->getName() <<
! " contained twice by " << o1->getName() << "\n";
}
}
***************
*** 1617,1626 ****
CHECK();
- //Show();
selectFromSameAspectsFolders();
proxyFinder();
- //TO("0--------------- Proxy ---------------0");
- //Show();
equivalenceFinder();
removeProxiesAndEquiv();
--- 1643,1649 ----
***************
*** 1628,1633 ****
bool do_at_all = true;
- //TO("0--------------- Result ---------------0");
- //Show();
if ( do_at_all)
{
--- 1651,1654 ----
Index: BON2Component.h
===================================================================
RCS file: /var/lib/gme/GMESRC/Paradigms/MetaGME/MetaInterpreter2004/BON2Component.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** BON2Component.h 18 Feb 2004 22:18:52 -0000 1.5
--- BON2Component.h 11 Mar 2004 15:39:37 -0000 1.6
***************
*** 83,86 ****
--- 83,87 ----
void scanModels( const Model& model, const Folder& parent);
void scanSubModels( const Model& model);
+ void scanSubFolders( const std::set<Folder>& folders, std::set<Folder>& result);
void entityBuilder( const Model& model, const Folder& parent);
More information about the GME-commit
mailing list