You can subscribe to this list here.
| 2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(9) |
Oct
(124) |
Nov
(120) |
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
(6) |
Feb
(34) |
Mar
(49) |
Apr
(81) |
May
(25) |
Jun
(3) |
Jul
(1) |
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(37) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Frank V. C. <fr...@us...> - 2001-04-10 21:17:53
|
Update of /cvsroot/corelinux/clfw/src/libs/clfw
In directory usw-pr-cvs1:/tmp/cvs-serv31067/src/libs/clfw
Modified Files:
FrameworkString.cpp
Log Message:
Added profile and schema location support
Index: FrameworkString.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/clfw/FrameworkString.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** FrameworkString.cpp 2001/03/31 22:21:45 1.1
--- FrameworkString.cpp 2001/04/10 21:17:50 1.2
***************
*** 177,180 ****
--- 177,215 ----
}
+
+ //
+ // Concat value
+ //
+
+ FrameworkStringRef FrameworkString::operator+=( CharCptr aPtr )
+ {
+ REQUIRE( aPtr != NULLPTR );
+
+ //
+ // Get our size, get their size, add 1 and copy both
+ //
+
+ CharPtr aTval = new Char[(std::strlen(theValue) +
+ std::strlen(aPtr)) + 1];
+
+ aTval[0] = 0;
+
+ std::strcpy(aTval,theValue);
+ std::strcat(aTval,aPtr);
+ delete [] theValue;
+ theValue = aTval;
+
+ return ( *this );
+ }
+
+ //
+ // Concat value
+ //
+
+ FrameworkStringRef FrameworkString::operator+=( FrameworkStringCref aRef )
+ {
+ return FrameworkString::operator+=( aRef.getValue() );
+ }
+
//! version FrameworkString for the FrameworkString MetaType
|
|
From: Frank V. C. <fr...@us...> - 2001-04-10 21:17:53
|
Update of /cvsroot/corelinux/clfw/src/libs/Persist
In directory usw-pr-cvs1:/tmp/cvs-serv31067/src/libs/Persist
Modified Files:
SchemaCatalog.cpp SchemaSponsor.cpp
Log Message:
Added profile and schema location support
Index: SchemaCatalog.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/Persist/SchemaCatalog.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** SchemaCatalog.cpp 2001/04/08 12:59:07 1.2
--- SchemaCatalog.cpp 2001/04/10 21:17:50 1.3
***************
*** 43,46 ****
--- 43,51 ----
extern "C"
{
+ #include <sys/stat.h>
+ #include <sys/types.h>
+ #include <fcntl.h>
+ #include <unistd.h>
+ #include <errno.h>
#include <gdbm.h>
}
***************
*** 48,59 ****
namespace corelinux
{
! static FrameworkString nameKey("Name");
! static FrameworkString locationKey("Location");
! static FrameworkString guidKey("GUID");
!
! static FrameworkString catName;
! static FrameworkString catLocation;
! static FrameworkString storesLocation;
//
// Constructor
--- 53,71 ----
namespace corelinux
{
! // Property constants
+ const FrameworkString nameKey("Name");
+ const FrameworkString locationKey("Location");
+ const FrameworkString collectionType("Collection");
+ const FrameworkString guidKey("GUID");
+
+ // Environmental constants
+
+ const FrameworkString homeEnviron("HOME");
+ const FrameworkString catEnviron("CLFW++HOME");
+ const FrameworkString catLocation("/.clfw++");
+ const FrameworkString schemaLocation("/schemas");
+ const FrameworkString catName("schemcat");
+
//
// Constructor
***************
*** 64,67 ****
--- 76,83 ----
StoreCatalog()
{
+ //
+ // Initialize the catalog
+ //
+ resolveLocations();
}
***************
*** 74,78 ****
StoreCatalog( aType )
{
! ; // do nothing
}
--- 90,97 ----
StoreCatalog( aType )
{
! //
! // Initialize the catalog
! //
! resolveLocations();
}
***************
*** 170,173 ****
--- 189,267 ----
SchemaPtr aSchm( NULLPTR );
return aSchm;
+ }
+
+ //
+ // Setup environmental information for this caller
+ //
+
+ void SchemaCatalog::resolveLocations( void )
+ {
+ //
+ // Resolve home location for catalog
+ //
+
+ CharPtr aVal
+ (
+ Environment::getEnvironmentValue( catEnviron.getValue() )
+ );
+
+ if( aVal == NULLPTR )
+ {
+ aVal = Environment::getEnvironmentValue( homeEnviron.getValue() );
+
+ }
+ else
+ {
+ ; // do nothing
+ }
+
+ theCatalogRoot = aVal;
+ theCatalogRoot += catLocation;
+
+ if( std::mkdir
+ (
+ theCatalogRoot.getValue(),S_IRWXU
+ ) != 0 )
+ {
+
+ if( Thread::getKernelError() != EEXIST )
+ {
+ throw Exception( theCatalogRoot.getValue(), LOCATION );
+ }
+ else
+ {
+ ; // do nothing
+ }
+ }
+ else
+ {
+ ; // do nothing
+ }
+
+ //
+ // Resolve default location for schemas
+ //
+
+ theStoresRoot = theCatalogRoot;
+ theStoresRoot += schemaLocation;
+
+ if( std::mkdir
+ (
+ theStoresRoot.getValue(),S_IRWXU
+ ) != 0 )
+ {
+ if( Thread::getKernelError() != EEXIST )
+ {
+ throw Exception( theStoresRoot.getValue(), LOCATION );
+ }
+ else
+ {
+ ; // do nothing
+ }
+ }
+ else
+ {
+ ; // do nothing
+ }
}
Index: SchemaSponsor.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/Persist/SchemaSponsor.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** SchemaSponsor.cpp 2001/04/08 10:50:43 1.1
--- SchemaSponsor.cpp 2001/04/10 21:17:50 1.2
***************
*** 35,38 ****
--- 35,40 ----
namespace corelinux
{
+ StoreCatalogPtr SchemaSponsor::theStoreCatalog( NULLPTR );
+
//
// Constructor
***************
*** 85,90 ****
StoreCatalogPtr SchemaSponsor::getCatalog( void ) const
{
! SchemaCatalogPtr aSchemaCtlg( NULLPTR );
! return aSchemaCtlg;
}
--- 87,99 ----
StoreCatalogPtr SchemaSponsor::getCatalog( void ) const
{
! if( theStoreCatalog == NULLPTR )
! {
! theStoreCatalog = new SchemaCatalog;
! }
! else
! {
! ; // do nothing
! }
! return theStoreCatalog;
}
|
|
From: Frank V. C. <fr...@us...> - 2001-04-10 21:17:53
|
Update of /cvsroot/corelinux/clfw/clfw/Persist
In directory usw-pr-cvs1:/tmp/cvs-serv31067/clfw/Persist
Modified Files:
SchemaCatalog.hpp SchemaSponsor.hpp
Log Message:
Added profile and schema location support
Index: SchemaCatalog.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Persist/SchemaCatalog.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** SchemaCatalog.hpp 2001/04/08 12:59:07 1.2
--- SchemaCatalog.hpp 2001/04/10 21:17:50 1.3
***************
*** 26,41 ****
#endif
#if !defined(__STORECATALOG_HPP)
#include <clfw/Persist/StoreCatalog.hpp>
#endif
- #if !defined(__OBSERVER_HPP)
- #include <corelinux/Observer.hpp>
- #endif
namespace corelinux
{
DECLARE_CLASS( Schema );
- DECLARE_CLASS( FrameworkString );
DECLARE_CLASS( SchemaCatalog );
--- 26,41 ----
#endif
+ #if !defined(__FRAMEWORKSTRING_HPP)
+ #include <clfw/FrameworkString.hpp>
+ #endif
+
#if !defined(__STORECATALOG_HPP)
#include <clfw/Persist/StoreCatalog.hpp>
#endif
namespace corelinux
{
DECLARE_CLASS( Schema );
DECLARE_CLASS( SchemaCatalog );
***************
*** 86,91 ****
--- 86,95 ----
// Mutators
//
+ /// Save the instance as is
+
void saveSchema( SchemaPtr );
+ /// Close the instance
+
void closeSchema( SchemaPtr );
***************
*** 142,145 ****
--- 146,163 ----
private:
+ /// Basic setup for instances
+
+ void resolveLocations( void );
+
+ /**
+ createSchema is the workhorse which goes through
+ both the catalog entry creation, and the actual
+ schema creation
+ @param FrameworkString reference to Key (UUID)
+ @param FrameworkString reference to Name
+ @param FrameworkString reference to Location for schema
+ @returns Schema pointer ready to populate
+ */
+
SchemaPtr createSchema
(
***************
*** 148,151 ****
--- 166,179 ----
FrameworkStringCref
) throw ();
+
+ private:
+
+ /// The location of the catalog
+
+ FrameworkString theCatalogRoot;
+
+ /// The location of the stores
+
+ FrameworkString theStoresRoot;
};
Index: SchemaSponsor.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Persist/SchemaSponsor.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** SchemaSponsor.hpp 2001/04/08 10:50:43 1.1
--- SchemaSponsor.hpp 2001/04/10 21:17:50 1.2
***************
*** 88,91 ****
--- 88,93 ----
private:
+ static StoreCatalogPtr theStoreCatalog;
+
};
}
|
|
From: Frank V. C. <fr...@us...> - 2001-04-08 12:59:10
|
Update of /cvsroot/corelinux/clfw/clfw/Persist
In directory usw-pr-cvs1:/tmp/cvs-serv23723/clfw/Persist
Modified Files:
SchemaCatalog.hpp
Log Message:
Fleshing out some details
Index: SchemaCatalog.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Persist/SchemaCatalog.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** SchemaCatalog.hpp 2001/04/08 10:50:43 1.1
--- SchemaCatalog.hpp 2001/04/08 12:59:07 1.2
***************
*** 30,35 ****
--- 30,41 ----
#endif
+ #if !defined(__OBSERVER_HPP)
+ #include <corelinux/Observer.hpp>
+ #endif
+
namespace corelinux
{
+ DECLARE_CLASS( Schema );
+ DECLARE_CLASS( FrameworkString );
DECLARE_CLASS( SchemaCatalog );
***************
*** 75,87 ****
// Accessors
//
! /// Retrieve the entities of the catalog
! virtual CollectionPtr getEntities( void ) const ;
protected:
private:
};
--- 81,151 ----
// Accessors
//
+
! //
! // Mutators
! //
! void saveSchema( SchemaPtr );
! void closeSchema( SchemaPtr );
+ //
+ // Base overrides
+ //
+ /// Retrieve the count of catalog elements
+
+ virtual Counter getCount( void ) const ;
+
+ /**
+ Fetch a Schema based on attributes
+ provided in the collection
+ @param corelinux::Collection a collection of
+ corelinux::Attribute
+ valid Schema get attributes are:
+ "Name" - Defines the name of the schema
+ "GUID" - (optional) provides the stringified
+ UniversalUniqueIdentifier that identifies the schema
+ @returns corelinux::Schema pointer to actual schema
+ */
+
+ virtual FrameworkEntityPtr getEntry( CollectionPtr ) const;
+
+ /**
+ Create a new schema and add entry in the catalog.
+ @param SetCollection a collection of corelinux::Attribute
+ valid Schema creation attributes are:
+ "Name" - Defines the name of the schema
+ "Location" - Can designate where the actual schema resides
+ "GUID" - (optional) provides the stringified
+ UniversalUniqueIdentifier to use instead of generating one
+ */
+
+ virtual void createEntry( CollectionPtr ) ;
+
+ /**
+ Delete a Schema and it's entry in the catalog.
+ @param corelinux::Collection a collection of
+ corelinux::Attribute
+ valid Schema delete attributes are:
+ "Name" - The name of the schema
+ "GUID" - (optional) The stringified
+ UniversalUniqueIdentifier that identifies the schema
+ */
+
+ virtual void deleteEntry( CollectionPtr );
+
+
+
protected:
private:
+
+ SchemaPtr createSchema
+ (
+ FrameworkStringCref,
+ FrameworkStringCref,
+ FrameworkStringCref
+ ) throw ();
};
|
|
From: Frank V. C. <fr...@us...> - 2001-04-08 12:59:10
|
Update of /cvsroot/corelinux/clfw/src/libs/Persist
In directory usw-pr-cvs1:/tmp/cvs-serv23723/src/libs/Persist
Modified Files:
SchemaCatalog.cpp
Log Message:
Fleshing out some details
Index: SchemaCatalog.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/Persist/SchemaCatalog.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** SchemaCatalog.cpp 2001/04/08 10:50:43 1.1
--- SchemaCatalog.cpp 2001/04/08 12:59:07 1.2
***************
*** 29,38 ****
--- 29,59 ----
#endif
+ #if !defined(__SCHEMA_HPP)
+ #include <clfw/Schema.hpp>
+ #endif
+
#if !defined(__SETCOLLECTION_HPP)
#include <clfw/SetCollection.hpp>
#endif
+ #if !defined(__FRAMEWORKSTRING_HPP)
+ #include <clfw/FrameworkString.hpp>
+ #endif
+
+ extern "C"
+ {
+ #include <gdbm.h>
+ }
+
namespace corelinux
{
+ static FrameworkString nameKey("Name");
+ static FrameworkString locationKey("Location");
+ static FrameworkString guidKey("GUID");
+
+ static FrameworkString catName;
+ static FrameworkString catLocation;
+ static FrameworkString storesLocation;
+
//
// Constructor
***************
*** 82,90 ****
return ( *this );
}
! CollectionPtr SchemaCatalog::getEntities( void ) const
{
! SetCollectionPtr aSetOfEntities( NULLPTR );
! return aSetOfEntities;
}
--- 103,173 ----
return ( *this );
}
+
+ //
+ // Retrieves the number of entries, ipso facto, the number
+ // of schemas
+ //
+
+ Counter SchemaCatalog::getCount( void ) const
+ {
+ return 0;
+ }
+
+ //
+ // Create a new entry and, lo and behold, a new schema.
+ //
+
+ void SchemaCatalog::createEntry( CollectionPtr )
+ {
+
+ }
+
+ //
+ // Remove and entry and, ipso fatso, the schema
+ //
+
+ void SchemaCatalog::deleteEntry( CollectionPtr )
+ {
+
+ }
+
+ //
+ // Retreive a specific entry instance based on provided Name or
+ // UniversalUniqueIdentifier
+ //
+
+ FrameworkEntityPtr SchemaCatalog::getEntry( CollectionPtr ) const
+ {
+ SchemaPtr aSchm( NULLPTR );
+ return aSchm;
+ }
+
+ void SchemaCatalog::saveSchema( SchemaPtr )
+ {
+
+ }
+
+ void SchemaCatalog::closeSchema( SchemaPtr )
+ {
+
+ }
+
+
+ //
+ // Here is where we check that we are not
+ // colliding with another schema, we
+ // add the entry to the catalog with the UUID
+ // stringified key
+ //
! SchemaPtr SchemaCatalog::createSchema
! (
! FrameworkStringCref aKey,
! FrameworkStringCref aName,
! FrameworkStringCref aLocation
! ) throw ()
{
! SchemaPtr aSchm( NULLPTR );
! return aSchm;
}
|
|
From: Frank V. C. <fr...@us...> - 2001-04-08 12:59:10
|
Update of /cvsroot/corelinux/clfw/clfw
In directory usw-pr-cvs1:/tmp/cvs-serv23723/clfw
Modified Files:
Catalog.hpp
Log Message:
Fleshing out some details
Index: Catalog.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Catalog.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** Catalog.hpp 2001/04/08 10:50:42 1.1
--- Catalog.hpp 2001/04/08 12:59:06 1.2
***************
*** 77,83 ****
//
! /// Retrieve the entities of the catalog
! virtual CollectionPtr getEntities( void ) const = 0;
protected:
--- 77,112 ----
//
! /// Retrieve the count of catalog elements
! virtual Counter getCount( void ) const = 0;
!
! /**
! Interface to retrieve and entry based on attributes
! provided in the collection
! @param corelinux::Collection a collection of
! corelinux::Attribute
! */
!
! virtual FrameworkEntityPtr getEntry( CollectionPtr ) const = 0;
!
! /**
! Interface to create a new entry in the catalog.
! A Collection of attributes specific to the
! domain of the catalog provides the information
! @param corelinux::Collection a collection of
! corelinux::Attribute
! */
!
! virtual void createEntry( CollectionPtr ) = 0;
!
! /**
! Interface to delete an entry in the catalog.
! A Collection of attributes specific to the
! domain of the catalog provides the information
! @param corelinux::Collection a collection of
! corelinux::Attribute
! */
!
! virtual void deleteEntry( CollectionPtr ) = 0;
protected:
|
|
From: Frank V. C. <fr...@us...> - 2001-04-08 10:50:46
|
Update of /cvsroot/corelinux/clfw/src/libs/Persist In directory usw-pr-cvs1:/tmp/cvs-serv10098/src/libs/Persist Modified Files: Makefile.am Added Files: SchemaCatalog.cpp SchemaSponsor.cpp StoreCatalog.cpp Log Message: Deeper infrastructure for persist ***** Error reading new file: [Errno 2] No such file or directory: 'SchemaCatalog.cpp' ***** Error reading new file: [Errno 2] No such file or directory: 'SchemaSponsor.cpp' ***** Error reading new file: [Errno 2] No such file or directory: 'StoreCatalog.cpp' Index: Makefile.am =================================================================== RCS file: /cvsroot/corelinux/clfw/src/libs/Persist/Makefile.am,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** Makefile.am 2001/03/20 01:35:32 1.2 --- Makefile.am 2001/04/08 10:50:43 1.3 *************** *** 14,18 **** noinst_LTLIBRARIES = libclfwp.la ! libclfwp_la_SOURCES = StoreSponsor.cpp # Common rcs information do not modify --- 14,22 ---- noinst_LTLIBRARIES = libclfwp.la ! libclfwp_la_SOURCES = StoreSponsor.cpp \ ! SchemaSponsor.cpp \ ! StoreCatalog.cpp \ ! SchemaCatalog.cpp ! # Common rcs information do not modify |
|
From: Frank V. C. <fr...@us...> - 2001-04-08 10:50:46
|
Update of /cvsroot/corelinux/clfw In directory usw-pr-cvs1:/tmp/cvs-serv10098 Modified Files: ChangeLog Log Message: Deeper infrastructure for persist Index: ChangeLog =================================================================== RCS file: /cvsroot/corelinux/clfw/ChangeLog,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** ChangeLog 2001/04/04 00:43:09 1.21 --- ChangeLog 2001/04/08 10:50:42 1.22 *************** *** 1,2 **** --- 1,7 ---- + 2001-04-08 Frank V. Castellucci <fr...@ca...> + + * Feature 115287 - Started extending existing framework for + Schema persist (special one time extension). + 2001-04-03 Frank V. Castellucci <fr...@ca...> |
|
From: Frank V. C. <fr...@us...> - 2001-04-08 10:50:46
|
Update of /cvsroot/corelinux/clfw/src/testdrivers/exf2
In directory usw-pr-cvs1:/tmp/cvs-serv10098/src/testdrivers/exf2
Modified Files:
examp2.cpp
Log Message:
Deeper infrastructure for persist
Index: examp2.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/testdrivers/exf2/examp2.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** examp2.cpp 2001/04/04 00:43:09 1.1
--- examp2.cpp 2001/04/08 10:50:43 1.2
***************
*** 208,211 ****
--- 208,217 ----
}
+ //
+ // Routine resolves a class and instantiates a instance
+ // of it using the metaclass dispatch on the well know
+ // construct method
+ //
+
FrameworkEntityPtr getInstanceOf( CharCptr aClassTarget )
{
***************
*** 221,225 ****
{
MetaClassPtr aClass = (MetaClassPtr) aIterator->getElement();
- cout << "Testing ["<< aClassTarget <<"] against " << aClass->getInstanceTypeName() << endl;
if( std::strcmp(aClassTarget,aClass->getInstanceTypeName()) == 0 )
{
--- 227,230 ----
|
|
From: Frank V. C. <fr...@us...> - 2001-04-08 10:50:46
|
Update of /cvsroot/corelinux/clfw/clfw
In directory usw-pr-cvs1:/tmp/cvs-serv10098/clfw
Modified Files:
Makefile.am Sponsor.hpp
Added Files:
Catalog.hpp
Log Message:
Deeper infrastructure for persist
***** Error reading new file: [Errno 2] No such file or directory: 'Catalog.hpp'
Index: Makefile.am
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Makefile.am,v
retrieving revision 1.26
retrieving revision 1.27
diff -C2 -r1.26 -r1.27
*** Makefile.am 2001/03/31 22:21:45 1.26
--- Makefile.am 2001/04/08 10:50:42 1.27
***************
*** 44,47 ****
--- 44,48 ----
Attribute.hpp \
Sponsor.hpp \
+ Catalog.hpp \
Makefile.am
Index: Sponsor.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Sponsor.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** Sponsor.hpp 2001/03/20 01:35:31 1.1
--- Sponsor.hpp 2001/04/08 10:50:42 1.2
***************
*** 32,35 ****
--- 32,36 ----
namespace corelinux
{
+ DECLARE_CLASS( Catalog );
DECLARE_CLASS( Sponsor );
***************
*** 75,79 ****
// Accessors
//
-
protected:
--- 76,79 ----
|
|
From: Frank V. C. <fr...@us...> - 2001-04-08 10:50:46
|
Update of /cvsroot/corelinux/clfw/src/libs/clfw
In directory usw-pr-cvs1:/tmp/cvs-serv10098/src/libs/clfw
Modified Files:
Concept.cpp Makefile.am
Added Files:
Catalog.cpp
Log Message:
Deeper infrastructure for persist
***** Error reading new file: [Errno 2] No such file or directory: 'Catalog.cpp'
Index: Concept.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/clfw/Concept.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -r1.5 -r1.6
*** Concept.cpp 2001/04/04 00:43:09 1.5
--- Concept.cpp 2001/04/08 10:50:43 1.6
***************
*** 125,137 ****
throw ()
{
if( theProperties == NULLPTR )
{
! throw NullPointerException(LOCATION);
}
else
{
}
! return SetCollectionPtr( NULLPTR );
}
--- 125,161 ----
throw ()
{
+ SetCollectionPtr aKeySet( NULLPTR );
+
if( theProperties == NULLPTR )
{
! throw NullPointerException( LOCATION );
}
else
{
+ aKeySet = SetCollection::create();
+
+ //
+ // Iterator through the properties and
+ // stuff the set collection
+ //
+ Counter aSize = theProperties->getSize();
+ for( Counter aCnt = 0; aCnt < aSize; ++aCnt )
+ {
+ FrameworkEntityPtr aBasePtr( theProperties->getElementAt(aCnt) );
+ if( aBasePtr->getType()->isTypeOf( Attribute::getTypeDescriptor() ) )
+ {
+ AttributePtr aRetPtr( NULLPTR );
+ aRetPtr = Attribute::castDown( aBasePtr );
+ aKeySet->put( aRetPtr->getKey() );
+ }
+ else
+ {
+ throw IncompatibleClassException( LOCATION );
+ }
+ }
}
!
! return aKeySet;
}
***************
*** 145,149 ****
if( theProperties == NULLPTR || aPtr == NULLPTR )
{
! throw NullPointerException(LOCATION);
}
else
--- 169,173 ----
if( theProperties == NULLPTR || aPtr == NULLPTR )
{
! throw NullPointerException( LOCATION );
}
else
Index: Makefile.am
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/clfw/Makefile.am,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -r1.24 -r1.25
*** Makefile.am 2001/03/31 22:21:45 1.24
--- Makefile.am 2001/04/08 10:50:43 1.25
***************
*** 24,27 ****
--- 24,28 ----
Aggregate.cpp \
Sponsor.cpp \
+ Catalog.cpp \
Boolean.cpp \
Number.cpp \
|
|
From: Frank V. C. <fr...@us...> - 2001-04-08 10:50:46
|
Update of /cvsroot/corelinux/clfw/clfw/Persist
In directory usw-pr-cvs1:/tmp/cvs-serv10098/clfw/Persist
Modified Files:
Makefile.am Persist.hpp StoreSponsor.hpp
Added Files:
SchemaCatalog.hpp SchemaSponsor.hpp StoreCatalog.hpp
Log Message:
Deeper infrastructure for persist
***** Error reading new file: [Errno 2] No such file or directory: 'SchemaCatalog.hpp'
***** Error reading new file: [Errno 2] No such file or directory: 'SchemaSponsor.hpp'
***** Error reading new file: [Errno 2] No such file or directory: 'StoreCatalog.hpp'
Index: Makefile.am
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Persist/Makefile.am,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** Makefile.am 2001/03/20 01:35:32 1.2
--- Makefile.am 2001/04/08 10:50:43 1.3
***************
*** 14,18 ****
includedir = @includedir@/Persist
include_HEADERS = Persist.hpp \
! StoreSponsor.hpp
# Common rcs information do not modify
--- 14,22 ----
includedir = @includedir@/Persist
include_HEADERS = Persist.hpp \
! StoreSponsor.hpp \
! SchemaSponsor.hpp \
! StoreCatalog.hpp \
! SchemaCatalog.hpp
!
# Common rcs information do not modify
Index: Persist.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Persist/Persist.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** Persist.hpp 2001/03/20 01:35:32 1.2
--- Persist.hpp 2001/04/08 10:50:43 1.3
***************
*** 33,36 ****
--- 33,39 ----
#define INCL_StoreSponsor <clfw/Persist/StoreSponsor.hpp>
+ #define INCL_SchemaSponsor <clfw/Persist/SchemaSponsor.hpp>
+ #define INCL_StoreCatalog <clfw/Persist/StoreCatalog.hpp>
+ #define INCL_SchemaCatalog <clfw/Persist/SchemaCatalog.hpp>
/*
Index: StoreSponsor.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Persist/StoreSponsor.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** StoreSponsor.hpp 2001/03/20 01:35:32 1.1
--- StoreSponsor.hpp 2001/04/08 10:50:43 1.2
***************
*** 32,35 ****
--- 32,36 ----
namespace corelinux
{
+ DECLARE_CLASS( StoreCatalog );
DECLARE_CLASS( StoreSponsor );
***************
*** 76,79 ****
--- 77,85 ----
//
+ /**
+
+ */
+
+ virtual StoreCatalogPtr getCatalog( void ) const = 0;
protected:
|
|
From: Hans D. <dul...@us...> - 2001-04-04 19:47:53
|
Update of /cvsroot/corelinux/corelinux/src/classlibs/corelinux
In directory usw-pr-cvs1:/tmp/cvs-serv14353
Modified Files:
Thread.cpp
Log Message:
Obtained PID of terminating thread from waitpid, not from vptr.
This is a temporary fix until a better way of obtaining PID is found.
Also, call to destroyThreadContext had to be disabled, otherwise some
threads might get exception.
Index: Thread.cpp
===================================================================
RCS file: /cvsroot/corelinux/corelinux/src/classlibs/corelinux/Thread.cpp,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -r1.19 -r1.20
*** Thread.cpp 2001/03/25 14:04:23 1.19
--- Thread.cpp 2001/04/04 19:47:47 1.20
***************
*** 472,479 ****
std::cout << " Terminate received " << std::endl;
*/
! ThreadIdentifier anId = DwordPtr(vPtr)[13];
! ThreadContext aContext(Thread::getThreadContext(anId));
! aContext.setThreadState (THREAD_NORMAL_EXIT);
! destroyThreadContext (anId);
}
--- 472,493 ----
std::cout << " Terminate received " << std::endl;
*/
!
! int pid = waitpid( -1, NULL, WNOHANG );
!
! if (pid != -1)
! {
!
! ThreadIdentifier anId = pid;
! ThreadContext aContext( Thread::getThreadContext( anId ) );
! aContext.setThreadState( THREAD_NORMAL_EXIT );
!
! // If the following line is enabled, exception will occur
!
! //destroyThreadContext( anId );
! }
! else
! {
! ; // do nothing
! }
}
|
|
From: Frank V. C. <fr...@us...> - 2001-04-04 00:43:13
|
Update of /cvsroot/corelinux/clfw/src/testdrivers/exf2
In directory usw-pr-cvs1:/tmp/cvs-serv20304/src/testdrivers/exf2
Added Files:
.cvsignore Makefile.am examp2.cpp
Log Message:
More serious work, now with a example (exf2)
--- NEW FILE ---
.deps
.libs
Makefile
Makefile.in
exf2
core
--- NEW FILE ---
# -*- Mode: makefile -*-
# SUMMARY:
# USAGE: make <make-target>
# AUTHOR: Frank V. Castellucci
# ORG: Frank V. Castellucci
# E-MAIL: fr...@us...
# ORIG-DATE: 10-Apr-00 at 08:34:22
# LAST-MOD: 04-Apr-01 at 16:13:26 by Frank V. Castellucci
# DESCRIPTION:
# DESCRIP-END.
SUFFIXES = .cpp .hpp .c .h .f .F .o .moc
#SUBDIRS = include
bin_PROGRAMS = exf2
exf2_SOURCES = examp2.cpp
exf2_LDADD = ${top_builddir}/src/libs/clfw/libclfw++.la
***** Error reading new file: [Errno 2] No such file or directory: 'examp2.cpp'
|
|
From: Frank V. C. <fr...@us...> - 2001-04-04 00:43:13
|
Update of /cvsroot/corelinux/clfw/src/testdrivers In directory usw-pr-cvs1:/tmp/cvs-serv20304/src/testdrivers Modified Files: Makefile.am Log Message: More serious work, now with a example (exf2) Index: Makefile.am =================================================================== RCS file: /cvsroot/corelinux/clfw/src/testdrivers/Makefile.am,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** Makefile.am 2000/10/03 02:14:04 1.1 --- Makefile.am 2001/04/04 00:43:09 1.2 *************** *** 12,16 **** SUFFIXES = .cpp .hpp .c .h .f .F .o .moc ! SUBDIRS = exf1 # Common rcs information do not modify --- 12,16 ---- SUFFIXES = .cpp .hpp .c .h .f .F .o .moc ! SUBDIRS = exf1 exf2 # Common rcs information do not modify |
|
From: Frank V. C. <fr...@us...> - 2001-04-04 00:43:13
|
Update of /cvsroot/corelinux/clfw/src/libs/clfw
In directory usw-pr-cvs1:/tmp/cvs-serv20304/src/libs/clfw
Modified Files:
Concept.cpp Schema.cpp
Log Message:
More serious work, now with a example (exf2)
Index: Concept.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/clfw/Concept.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** Concept.cpp 2001/04/03 03:00:14 1.4
--- Concept.cpp 2001/04/04 00:43:09 1.5
***************
*** 118,121 ****
--- 118,125 ----
}
+ //
+ // Retrieve a set of keys from the existing attributes
+ //
+
SetCollectionPtr Concept::getPropertyKeys( void )
throw ()
***************
*** 132,135 ****
--- 136,142 ----
}
+ //
+ // Add a new attribute to the collection
+ //
void Concept::addAttribute( AttributePtr aPtr )
***************
*** 146,149 ****
--- 153,160 ----
}
+ //
+ // Remove an existing attribute
+ //
+
void Concept::removeAttribute( AttributePtr aPtr )
throw ()
***************
*** 159,162 ****
--- 170,177 ----
}
+ //
+ // Remove an attribute given a key
+ //
+
void Concept::removeKey( FrameworkEntityPtr aPtr )
throw ()
***************
*** 207,211 ****
// we use the abstract macro for autonaming
! DEFINE_ABSTRACT_METATYPE
(
Concept,
--- 222,226 ----
// we use the abstract macro for autonaming
! DEFINE_METATYPE
(
Concept,
Index: Schema.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/clfw/Schema.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** Schema.cpp 2001/03/31 14:05:00 1.2
--- Schema.cpp 2001/04/04 00:43:09 1.3
***************
*** 109,113 ****
// we use the abstract macro for autonaming
! DEFINE_ABSTRACT_METATYPE
(
Schema,
--- 109,113 ----
// we use the abstract macro for autonaming
! DEFINE_METATYPE
(
Schema,
|
|
From: Frank V. C. <fr...@us...> - 2001-04-04 00:43:13
|
Update of /cvsroot/corelinux/clfw/clfw
In directory usw-pr-cvs1:/tmp/cvs-serv20304/clfw
Modified Files:
Concept.hpp MetaType.hpp
Log Message:
More serious work, now with a example (exf2)
Index: Concept.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Concept.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** Concept.hpp 2001/04/03 03:00:14 1.4
--- Concept.hpp 2001/04/04 00:43:09 1.5
***************
*** 42,46 ****
Concept is an element of a schema and represent the extent
of a piece of knowledge or idea. Concepts have attributes
! which define various aspects of the concept
*/
--- 42,49 ----
Concept is an element of a schema and represent the extent
of a piece of knowledge or idea. Concepts have attributes
! which define various aspects of the concept.
! The decision of the type of collection (Array, Set, etc.)
! is left to the implementation and can assign a collection
! using the setProperties( CollectionPtr ) method.
*/
Index: MetaType.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/MetaType.hpp,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -r1.30 -r1.31
*** MetaType.hpp 2001/03/01 03:20:16 1.30
--- MetaType.hpp 2001/04/04 00:43:09 1.31
***************
*** 410,426 ****
{ #classMethName, className##methName }
- #define OPEN_DISPATCH_TABLE( className ) \
- static DispatchDescriptor const *className##DispatchTable[] = \
- { \
-
#define DEFINE_DISPATCH_ENTRY( className, methName ) \
&className##Dispatch##methName,
#define CLOSE_DISPATCH_TABLE \
0 }
#define DEFINE_DUMMY_DISPATCHTABLE( className ) \
! static DispatchDescriptor const *className##DispatchTable[] = \
! { 0 }
/*!
--- 410,478 ----
{ #classMethName, className##methName }
#define DEFINE_DISPATCH_ENTRY( className, methName ) \
&className##Dispatch##methName,
+ #define OPEN_DISPATCH_TABLE( className ) \
+ static void className##ConstructImplicit \
+ ( \
+ corelinux::FrameworkEntityPtr, \
+ void **, \
+ void *ret \
+ ) \
+ { \
+ *((FrameworkEntityPtr *)ret) = className::create(); \
+ } \
+ static void className##DestructImplicit \
+ ( \
+ corelinux::FrameworkEntityPtr aClass, \
+ void **, \
+ void * \
+ ) \
+ { \
+ className##Ptr myPointer = className::castDown( aClass ); \
+ className::destroy( myPointer ); \
+ } \
+ static DispatchDescriptor className##Dispatch##ConstructImplicit = \
+ {"Construct",className##ConstructImplicit}; \
+ static DispatchDescriptor className##Dispatch##DestructImplicit = \
+ {"Destruct",className##DestructImplicit}; \
+ static DispatchDescriptor const *className##DispatchTable[] = \
+ { \
+ DEFINE_DISPATCH_ENTRY( className,ConstructImplicit ) \
+ DEFINE_DISPATCH_ENTRY( className,DestructImplicit )
+
#define CLOSE_DISPATCH_TABLE \
0 }
#define DEFINE_DUMMY_DISPATCHTABLE( className ) \
! static void className##ConstructImplicit \
! ( \
! corelinux::FrameworkEntityPtr, \
! void **, \
! void *ret \
! ) \
! { \
! *((FrameworkEntityPtr *)ret) = className::create(); \
! } \
! static void className##DestructImplicit \
! ( \
! corelinux::FrameworkEntityPtr aClass, \
! void **, \
! void * \
! ) \
! { \
! className##Ptr myPointer = className::castDown( aClass ); \
! className::destroy( myPointer ); \
! } \
! static DispatchDescriptor className##Dispatch##ConstructImplicit = \
! {"Construct",className##ConstructImplicit}; \
! static DispatchDescriptor className##Dispatch##DestructImplicit = \
! {"Destruct",className##DestructImplicit}; \
! static DispatchDescriptor const *className##DispatchTable[] = \
! { \
! DEFINE_DISPATCH_ENTRY( className,ConstructImplicit ) \
! DEFINE_DISPATCH_ENTRY( className,DestructImplicit ) \
! 0 \
! }
/*!
|
|
From: Frank V. C. <fr...@us...> - 2001-04-04 00:43:13
|
Update of /cvsroot/corelinux/clfw In directory usw-pr-cvs1:/tmp/cvs-serv20304 Modified Files: ChangeLog configure.in Log Message: More serious work, now with a example (exf2) Index: ChangeLog =================================================================== RCS file: /cvsroot/corelinux/clfw/ChangeLog,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -r1.20 -r1.21 *** ChangeLog 2001/03/31 22:21:45 1.20 --- ChangeLog 2001/04/04 00:43:09 1.21 *************** *** 1,2 **** --- 1,7 ---- + 2001-04-03 Frank V. Castellucci <fr...@ca...> + + * Feature 115287 - Created second example (exf2) to emulate schema + manipulation and potential. Work in progress. + 2001-03-31 Frank V. Castellucci <fr...@ca...> Index: configure.in =================================================================== RCS file: /cvsroot/corelinux/clfw/configure.in,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -r1.23 -r1.24 *** configure.in 2001/03/18 15:33:49 1.23 --- configure.in 2001/04/04 00:43:09 1.24 *************** *** 119,122 **** src/testdrivers/Makefile \ src/testdrivers/exf1/Makefile \ ! src/testdrivers/exf1/include/Makefile, [ chmod +x debian/rules ] ) --- 119,123 ---- src/testdrivers/Makefile \ src/testdrivers/exf1/Makefile \ ! src/testdrivers/exf1/include/Makefile \ ! src/testdrivers/exf2/Makefile, [ chmod +x debian/rules ] ) |
|
From: Frank V. C. <fr...@us...> - 2001-04-04 00:41:13
|
Update of /cvsroot/corelinux/clfw/src/testdrivers/exf2 In directory usw-pr-cvs1:/tmp/cvs-serv20048/exf2 Log Message: Directory /cvsroot/corelinux/clfw/src/testdrivers/exf2 added to the repository |
|
From: Frank V. C. <fr...@us...> - 2001-04-03 03:00:19
|
Update of /cvsroot/corelinux/clfw/clfw
In directory usw-pr-cvs1:/tmp/cvs-serv13149/clfw
Modified Files:
Array.hpp Collection.hpp Concept.hpp SetCollection.hpp
Log Message:
115287 Enhanced concept type ready for serious testing
Index: Array.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Array.hpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** Array.hpp 2001/03/01 16:34:28 1.6
--- Array.hpp 2001/04/03 03:00:14 1.7
***************
*** 27,35 ****
#if !defined(__COLLECTION_HPP)
! #include <Collection.hpp>
#endif
! #if !defined(__UNSIGNEDINTEGER_HPP)
! #include <UnsignedInteger.hpp>
#endif
--- 27,35 ----
#if !defined(__COLLECTION_HPP)
! #include <clfw/Collection.hpp>
#endif
! #if !defined(__INTEGER_HPP)
! #include <clfw/Integer.hpp>
#endif
***************
*** 84,88 ****
/// Fetch the current size (# of entities) of the array
! virtual Count getSize( void ) const;
/// Determines
--- 84,88 ----
/// Fetch the current size (# of entities) of the array
! virtual Counter getSize( void ) const;
/// Determines
***************
*** 90,106 ****
virtual bool isEmpty( void ) const ;
! /// Fetch entity at index
! FrameworkEntityPtr operator[]( Index ) const
throw (BoundsException);
! /// Fetch entity at index
! FrameworkEntityPtr getElementAt( Index ) const
throw (BoundsException);
! /// Fetch entity class index
! MetaClassPtr getElementClassAt( Index ) const
throw (BoundsException);
--- 90,111 ----
virtual bool isEmpty( void ) const ;
! /// Fetch entity at ElementIndex
! FrameworkEntityPtr operator[]( ElementIndex ) const
throw (BoundsException);
! /// Fetch the index ( >= 0 else -1 )
! virtual ElementIndex indexOf( FrameworkEntityCptr ) const
! throw (NullPointerException);
!
! /// Fetch entity at ElementIndex
!
! virtual FrameworkEntityPtr getElementAt( ElementIndex ) const
throw (BoundsException);
! /// Fetch entity class ElementIndex
! MetaClassPtr getElementClassAt( ElementIndex ) const
throw (BoundsException);
***************
*** 160,164 ****
/// Add at point, shifting others back one
! virtual void putAt( Index, FrameworkEntityPtr )
throw (NullPointerException, BoundsException);
--- 165,169 ----
/// Add at point, shifting others back one
! virtual void putAt( ElementIndex, FrameworkEntityPtr )
throw (NullPointerException, BoundsException);
***************
*** 170,179 ****
/// Add all the elements from the inbound collection at a offset
! virtual void addAll( Index, CollectionCref )
throw (BoundsException,IncompatibleClassException);
! /// Remove at index
! FrameworkEntityPtr removeAt( Index )
throw (BoundsException);
--- 175,189 ----
/// Add all the elements from the inbound collection at a offset
! virtual void addAll( ElementIndex, CollectionCref )
throw (BoundsException,IncompatibleClassException);
+
+ /// Remove the specified entity from the array
! virtual FrameworkEntityPtr remove( FrameworkEntityPtr )
! throw (NullPointerException);
!
! /// Remove at ElementIndex
! FrameworkEntityPtr removeAt( ElementIndex )
throw (BoundsException);
***************
*** 196,200 ****
/// Semantic for bounding array
! DECLARE_INSTANCEDATA( UnsignedInteger, SizeRestriction );
protected:
--- 206,210 ----
/// Semantic for bounding array
! DECLARE_INSTANCEDATA( Integer, SizeRestriction );
protected:
***************
*** 208,211 ****
--- 218,225 ----
bool checkForMember( FrameworkEntityCptr ) const;
+ /// Get ElementIndex for specific member
+
+ ElementIndex getMemberIndex( FrameworkEntityCptr ) const;
+
/// Retrieve the array representation
***************
*** 214,242 ****
/// Adjusts occupancy up
! void increaseOccupancy( Count additions = 1 );
/// Adjusts occupancy down
! void decreaseOccupancy( Count removals = 1 );
/// Confirms ability to grow, or available room
! bool checkBoundsForAdd( Count increment = 1 );
/// Grows and copies elements
! void increaseArraySize( Count increment = 1 );
/// Shifts array for indexed inserts
! void shiftForInsert( Index position, Count increment=1 );
/// Shifts array for indexed removals
! void shiftForRemove( Index position, Count increment=1 );
/// Array copy into
! void copyOverFromArray( Index, FrameworkEntity **, CountCref );
--- 228,256 ----
/// Adjusts occupancy up
! void increaseOccupancy( Counter additions = 1 );
/// Adjusts occupancy down
! void decreaseOccupancy( Counter removals = 1 );
/// Confirms ability to grow, or available room
! bool checkBoundsForAdd( Counter increment = 1 );
/// Grows and copies elements
! void increaseArraySize( Counter increment = 1 );
/// Shifts array for indexed inserts
! void shiftForInsert( ElementIndex position, Count increment=1 );
/// Shifts array for indexed removals
! void shiftForRemove( ElementIndex position, Count increment=1 );
/// Array copy into
! void copyOverFromArray( ElementIndex, FrameworkEntity **, CountCref );
***************
*** 250,255 ****
private:
FrameworkEntity **theEntities;
! Count theCount;
! Count theRemaining;
};
--- 264,269 ----
private:
FrameworkEntity **theEntities;
! Counter theCount;
! Counter theRemaining;
};
Index: Collection.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Collection.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** Collection.hpp 2001/03/01 03:20:16 1.3
--- Collection.hpp 2001/04/03 03:00:14 1.4
***************
*** 42,45 ****
--- 42,46 ----
DECLARE_CLASS( MetaClass );
DECLARE_CLASS( Collection );
+ DECLARE_TYPE( Long, ElementIndex );
/*!
***************
*** 102,122 ****
//
! virtual Count getSize( void ) const = 0;
virtual bool isEmpty( void ) const = 0;
virtual void addAll( CollectionCref )
! throw (BoundsException,IncompatibleClassException) = 0;
! virtual void addAll( Index, CollectionCref )
! throw (BoundsException,IncompatibleClassException) = 0;
virtual void put( FrameworkEntityPtr ) = 0;
virtual bool containsElement( FrameworkEntityPtr ) const
! throw (NullPointerException) = 0;
virtual bool containsType( MetaClassPtr ) const
! throw (NullPointerException) = 0;
/** @name Accessors
--- 103,132 ----
//
! virtual Counter getSize( void ) const = 0;
virtual bool isEmpty( void ) const = 0;
+ virtual ElementIndex indexOf( FrameworkEntityCptr ) const
+ throw (NullPointerException) = 0;
+
+ virtual FrameworkEntityPtr getElementAt( ElementIndex ) const
+ throw (BoundsException) = 0;
+
virtual void addAll( CollectionCref )
! throw (BoundsException,IncompatibleClassException) = 0;
! virtual void addAll( ElementIndex, CollectionCref )
! throw (BoundsException,IncompatibleClassException) = 0;
virtual void put( FrameworkEntityPtr ) = 0;
+ virtual FrameworkEntityPtr remove( FrameworkEntityPtr )
+ throw (NullPointerException) = 0;
+
virtual bool containsElement( FrameworkEntityPtr ) const
! throw (NullPointerException) = 0;
virtual bool containsType( MetaClassPtr ) const
! throw (NullPointerException) = 0;
/** @name Accessors
Index: Concept.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/Concept.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** Concept.hpp 2001/03/31 22:21:45 1.3
--- Concept.hpp 2001/04/03 03:00:14 1.4
***************
*** 83,100 ****
//
! virtual AttributePtr getAttributeFromKey( FrameworkEntityPtr );
! virtual SetCollectionPtr getPropertyKeys( void );
//
// Mutators
//
! virtual void addAttribute( AttributePtr );
! virtual void removeAttribute( AttributePtr );
! virtual void removeKey( FrameworkEntityPtr );
//
--- 83,111 ----
//
! /// Given a key, find the value associated with it
! virtual AttributePtr getAttributeFromKey( FrameworkEntityPtr )
! throw ();
+ /// Extract the keys from the concepts properties
+ virtual SetCollectionPtr getPropertyKeys( void ) throw ();
+
+
//
// Mutators
//
+
+ /// Add a new attribute, possibly replacing existing
+
+ virtual void addAttribute( AttributePtr ) throw ();
+
+ /// Remove an existing attribute
! virtual void removeAttribute( AttributePtr ) throw ();
! /// Remove an attribute given it's key
! virtual void removeKey( FrameworkEntityPtr ) throw ();
//
Index: SetCollection.hpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/clfw/SetCollection.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** SetCollection.hpp 2001/03/01 16:34:28 1.3
--- SetCollection.hpp 2001/04/03 03:00:14 1.4
***************
*** 27,31 ****
#if !defined(__ARRAY_HPP)
! #include <Array.hpp>
#endif
--- 27,31 ----
#if !defined(__ARRAY_HPP)
! #include <clfw/Array.hpp>
#endif
|
|
From: Frank V. C. <fr...@us...> - 2001-04-03 03:00:19
|
Update of /cvsroot/corelinux/clfw/src/testdrivers/exf1
In directory usw-pr-cvs1:/tmp/cvs-serv13149/src/testdrivers/exf1
Modified Files:
examp1.cpp
Log Message:
115287 Enhanced concept type ready for serious testing
Index: examp1.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/testdrivers/exf1/examp1.cpp,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -r1.33 -r1.34
*** examp1.cpp 2001/03/31 22:21:45 1.33
--- examp1.cpp 2001/04/03 03:00:14 1.34
***************
*** 95,102 ****
#endif
- #if !defined(__ATTRIBUTE_HPP)
- #include <clfw/Attribute.hpp>
- #endif
-
#if !defined(__METACLASS_HPP)
#include <clfw/MetaClass.hpp>
--- 95,98 ----
***************
*** 129,134 ****
void dumpMetaTypeInformation( MetaTypePtr );
void dumpTypeInformation( FrameworkEntityPtr );
- void testAttributes( void );
- void dumpAttribute( AttributePtr );
void testDispatch( void );
--- 125,128 ----
***************
*** 341,417 ****
aType->setOid( aId );
- testAttributes();
-
dumpTypeInformation( aType );
- UnsignedInteger ui1( 1 );
- UnsignedInteger ui2( 2 );
- UnsignedInteger ui3( 3 );
- UnsignedInteger ui4( 4 );
- UnsignedInteger ui5( 5 );
- UnsignedInteger ui6( 6 );
- UnsignedInteger ui7( 7 );
-
- SetCollection aSet1;
- SetCollection aSet2;
- Array aRay;
-
- aSet1 += &ui1;
- aSet1 += &ui2;
- aSet1 += &ui3;
-
- aSet2 += &ui4;
- aSet2 += &ui5;
- aSet2 += &ui6;
-
- aRay += &ui1;
- aRay += &ui5;
- aRay += &ui7;
- aRay += &ui7;
-
- cout << endl << "Sets display" << endl;
-
- Count maxCnt = aSet1.getSize();
-
- for( Count x = 0; x < maxCnt; ++x )
- {
- UnsignedInteger *anInt = UnsignedInteger::castDown( aSet1.getElementAt( x ) );
- cout << "Set1:Element at [" << x << "] = " << anInt->getValue() << endl;
- }
-
- maxCnt = aSet2.getSize();
-
- cout << endl ;
-
- for( Count x = 0; x < maxCnt; ++x )
- {
- UnsignedInteger *anInt = UnsignedInteger::castDown( aSet2.getElementAt( x ) );
- cout << "Set2:Element at [" << x << "] = " << anInt->getValue() << endl;
- }
-
- aSet1 += aSet2;
-
- maxCnt = aSet1.getSize();
-
- cout << endl ;
-
- for( Count x = 0; x < maxCnt; ++x )
- {
- UnsignedInteger *anInt = UnsignedInteger::castDown( aSet1.getElementAt( x ) );
- cout << "Set1:Element at [" << x << "] = " << anInt->getValue() << endl;
- }
-
- aSet1 += aRay;
- maxCnt = aSet1.getSize();
-
- cout << endl ;
-
- for( Count x = 0; x < maxCnt; ++x )
- {
- UnsignedInteger *anInt = UnsignedInteger::castDown( aSet1.getElementAt( x ) );
- cout << "Set1:Element at [" << x << "] = " << anInt->getValue() << endl;
- }
-
//
// Dispatch the method
--- 335,341 ----
***************
*** 652,688 ****
}
- void testAttributes( void )
- {
- AttributePtr a1 = Attribute::create();
- AttributePtr a2 = Attribute::create();
- UnsignedShortIntegerPtr aV1( new UnsignedShortInteger(8) );
- UnsignedShortIntegerPtr aV2( new UnsignedShortInteger(9) );
-
- a1->setKey( new FrameworkString("a1"));
- a1->setValue( aV1 );
-
- a2->setKey( new FrameworkString("a2"));
- a2->setValue(aV2);
-
- cout << endl;
- cout << "Compare att 1 = " << (a1->equals(a2) ? "true" : "false" ) << endl;
-
- a1->setKey(a2->getKey());
- cout << "Compare att 2 = " << (a1->equals(a2) ? "true" : "false" ) << endl;
-
- a1->setValue(a2->getValue());
- cout << "Compare att 3 = " << (a1->equals(a2) ? "true" : "false" ) << endl;
-
- Attribute::destroy( a1 );
- Attribute::destroy( a2 );
- delete aV1;
- delete aV2;
-
- }
-
- void dumpAttribute( AttributePtr anAttr )
- {
- dumpTypeInformation( anAttr->getValue() );
- }
//
// Dump info on types
--- 576,579 ----
|
|
From: Frank V. C. <fr...@us...> - 2001-04-03 03:00:19
|
Update of /cvsroot/corelinux/clfw/src/libs/clfw
In directory usw-pr-cvs1:/tmp/cvs-serv13149/src/libs/clfw
Modified Files:
Array.cpp Concept.cpp
Log Message:
115287 Enhanced concept type ready for serious testing
Index: Array.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/clfw/Array.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** Array.cpp 2001/03/01 16:34:28 1.6
--- Array.cpp 2001/04/03 03:00:14 1.7
***************
*** 117,121 ****
//
! Count Array::getSize( void ) const
{
return theCount;
--- 117,121 ----
//
! Counter Array::getSize( void ) const
{
return theCount;
***************
*** 131,138 ****
}
//
! // Get indexed entity methods
//
! FrameworkEntityPtr Array::operator []( Index offset ) const
throw (BoundsException)
{
--- 131,138 ----
}
//
! // Get ElementIndexed entity methods
//
! FrameworkEntityPtr Array::operator []( ElementIndex offset ) const
throw (BoundsException)
{
***************
*** 151,158 ****
//
! // Get indexed entity
//
! FrameworkEntityPtr Array::getElementAt( Index offset ) const
throw (BoundsException)
{
--- 151,178 ----
//
! // Return the index of an entity if it matches up with
! // an existing element. Return -1 otherwise
//
! ElementIndex Array::indexOf( FrameworkEntityCptr aPtr ) const
! throw (NullPointerException)
! {
! if( aPtr == NULLPTR )
! {
! throw NullPointerException( LOCATION );
! }
! else
! {
! ; // do nothing
! }
! GUARD;
! return this->getMemberIndex( aPtr );
! }
!
! //
! // Get ElementIndexed entity
! //
!
! FrameworkEntityPtr Array::getElementAt( ElementIndex offset ) const
throw (BoundsException)
{
***************
*** 164,168 ****
//
! MetaClassPtr Array::getElementClassAt( Index offset ) const
throw (BoundsException)
{
--- 184,188 ----
//
! MetaClassPtr Array::getElementClassAt( ElementIndex offset ) const
throw (BoundsException)
{
***************
*** 211,215 ****
GUARD;
! for( Count x = 0; ( x < theCount ) && ( found == false ); ++x )
{
found = *(MetaSpace::getClassForType(theEntities[x]->getType())) ==
--- 231,235 ----
GUARD;
! for( Counter x = 0; ( x < theCount ) && ( found == false ); ++x )
{
found = *(MetaSpace::getClassForType(theEntities[x]->getType())) ==
***************
*** 272,276 ****
//
! void Array::putAt( Index offset, FrameworkEntityPtr anEntity )
throw (NullPointerException,BoundsException)
{
--- 292,296 ----
//
! void Array::putAt( ElementIndex offset, FrameworkEntityPtr anEntity )
throw (NullPointerException,BoundsException)
{
***************
*** 294,301 ****
//
// Index removal of entity
//
! FrameworkEntityPtr Array::removeAt( Index offset )
throw (BoundsException)
{
--- 314,351 ----
//
+ // Remove entity if exist given a test object
+ //
+
+ FrameworkEntityPtr Array::remove( FrameworkEntityPtr aPtr )
+ throw (NullPointerException)
+ {
+ FrameworkEntityPtr aRetPtr( NULLPTR );
+
+ if( aPtr == NULLPTR )
+ {
+ throw NullPointerException( LOCATION );
+ }
+ else
+ {
+ Counter x = this->getMemberIndex( aPtr );
+
+ if( x >= 0 )
+ {
+ aRetPtr = (*this)[x];
+ this->removeAt( x );
+ }
+ else
+ {
+ ; // do nothing
+ }
+ }
+ return aRetPtr;
+ }
+
+ //
// Index removal of entity
//
! FrameworkEntityPtr Array::removeAt( ElementIndex offset )
throw (BoundsException)
{
***************
*** 317,321 ****
}
! /// Remove first entity in array
FrameworkEntityPtr Array::removeAtFront( void )
--- 367,371 ----
}
! // Remove first entity in array
FrameworkEntityPtr Array::removeAtFront( void )
***************
*** 495,499 ****
//
! void Array::addAll( Index offset, CollectionCref aCollection )
throw (BoundsException,IncompatibleClassException)
{
--- 545,549 ----
//
! void Array::addAll( ElementIndex offset, CollectionCref aCollection )
throw (BoundsException,IncompatibleClassException)
{
***************
*** 552,555 ****
--- 602,627 ----
}
+ // Walk the walk and return reasoning information
+
+ ElementIndex Array::getMemberIndex( FrameworkEntityCptr aPtr ) const
+ {
+ ElementIndex index(-1);
+ bool found( false );
+
+ for( Counter x = 0 ; ( x < theCount ) && ( found == false ); ++x )
+ {
+ if( ( found = theEntities[x]->equals( aPtr ) ) == true )
+ {
+ index = x;
+ }
+ else
+ {
+ ; // do nothing
+ }
+ }
+
+ return index;
+ }
+
// Walk the walk looking for match
***************
*** 558,562 ****
bool found( false );
! for( Count x = 0; ( x < theCount ) && ( found == false ); ++x )
{
found = theEntities[x]->equals( aPtr );
--- 630,634 ----
bool found( false );
! for( Counter x = 0; ( x < theCount ) && ( found == false ); ++x )
{
found = theEntities[x]->equals( aPtr );
***************
*** 568,572 ****
// Consume
! void Array::increaseOccupancy( Count additions )
{
theCount += additions;
--- 640,644 ----
// Consume
! void Array::increaseOccupancy( Counter additions )
{
theCount += additions;
***************
*** 576,580 ****
// Relieve
! void Array::decreaseOccupancy( Count removals )
{
theCount -= removals;
--- 648,652 ----
// Relieve
! void Array::decreaseOccupancy( Counter removals )
{
theCount -= removals;
***************
*** 586,590 ****
//
! bool Array::checkBoundsForAdd( Count increment )
{
bool canDo( true );
--- 658,662 ----
//
! bool Array::checkBoundsForAdd( Counter increment )
{
bool canDo( true );
***************
*** 592,596 ****
if( theRemaining == 0 || increment > theRemaining )
{
! UnsignedIntegerCref aR = getSizeRestrictionAsReference();
if( aR.getValue() != 0 &&
--- 664,668 ----
if( theRemaining == 0 || increment > theRemaining )
{
! IntegerCref aR = getSizeRestrictionAsReference();
if( aR.getValue() != 0 &&
***************
*** 618,630 ****
//
! void Array::increaseArraySize( Count increment )
{
if( increment > theRemaining )
{
! Count growth = (theCount+increment)+theCount/2;
FrameworkEntity **newArray =
(FrameworkEntity **) new FrameworkEntityPtr[growth];
! for( Count x=0; x<theCount ; ++x )
{
newArray[x] = theEntities[x];
--- 690,702 ----
//
! void Array::increaseArraySize( Counter increment )
{
if( increment > theRemaining )
{
! Counter growth = (theCount+increment)+theCount/2;
FrameworkEntity **newArray =
(FrameworkEntity **) new FrameworkEntityPtr[growth];
! for( Counter x=0; x<theCount ; ++x )
{
newArray[x] = theEntities[x];
***************
*** 653,657 ****
//
! void Array::shiftForInsert( Index position, Count increment )
{
size_t sizeMove = (theCount - position)*sizeof(FrameworkEntityPtr);
--- 725,729 ----
//
! void Array::shiftForInsert( ElementIndex position, Count increment )
{
size_t sizeMove = (theCount - position)*sizeof(FrameworkEntityPtr);
***************
*** 668,672 ****
//
! void Array::shiftForRemove( Index position, Count increment )
{
size_t sizeMove = (theCount - increment)*sizeof(FrameworkEntityPtr);
--- 740,744 ----
//
! void Array::shiftForRemove( ElementIndex position, Count increment )
{
size_t sizeMove = (theCount - increment)*sizeof(FrameworkEntityPtr);
***************
*** 685,689 ****
void Array::copyOverFromArray
(
! Index startPos,
FrameworkEntity **aSrc,
CountCref maxCount
--- 757,761 ----
void Array::copyOverFromArray
(
! ElementIndex startPos,
FrameworkEntity **aSrc,
CountCref maxCount
***************
*** 738,742 ****
// We define our property data descriptor
! DEFINE_CLASSINSTANCE_DESCRIPTOR(Array, UnsignedInteger,UnsignedInteger, SizeRestriction );
// We construct the values reference
--- 810,814 ----
// We define our property data descriptor
! DEFINE_CLASSINSTANCE_DESCRIPTOR(Array, Integer,Integer, SizeRestriction );
// We construct the values reference
Index: Concept.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/libs/clfw/Concept.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** Concept.cpp 2001/03/31 22:21:45 1.3
--- Concept.cpp 2001/04/03 03:00:14 1.4
***************
*** 39,43 ****
Concept::Concept( void )
:
! Aggregate()
{
}
--- 39,44 ----
Concept::Concept( void )
:
! Aggregate(),
! theProperties( NULLPTR )
{
}
***************
*** 49,53 ****
Concept::Concept( ConceptCref aType )
:
! Aggregate( aType )
{
; // do nothing
--- 50,55 ----
Concept::Concept( ConceptCref aType )
:
! Aggregate( aType ),
! theProperties( NULLPTR )
{
; // do nothing
***************
*** 81,106 ****
}
! AttributePtr Concept::getAttributeFromKey( FrameworkEntityPtr )
{
! return AttributePtr( NULLPTR );
}
SetCollectionPtr Concept::getPropertyKeys( void )
{
return SetCollectionPtr( NULLPTR );
}
! void Concept::addAttribute( AttributePtr )
{
!
! }
! void Concept::removeAttribute( AttributePtr )
! {
!
! }
! void Concept::removeKey( FrameworkEntityPtr )
! {
!
}
--- 83,175 ----
}
! //
! // Retrieve an attribute given a key entity
! //
!
! AttributePtr Concept::getAttributeFromKey( FrameworkEntityPtr aPtr )
! throw ()
{
! AttributePtr aRetPtr( NULLPTR );
!
! if( theProperties == NULLPTR || aPtr == NULLPTR )
! {
! throw NullPointerException(LOCATION);
! }
! else
! {
! ElementIndex aIndx(-1);
! Attribute aFake;
! aFake.setKey( aPtr );
! if( ( aIndx = theProperties->indexOf( &aFake ) ) != -1 )
! {
! FrameworkEntityPtr aBasePtr( theProperties->getElementAt(aIndx) );
! if( aBasePtr->getType()->isTypeOf( Attribute::getTypeDescriptor() ) )
! {
! aRetPtr = Attribute::castDown( aBasePtr );
! }
! else
! {
! throw IncompatibleClassException( LOCATION );
! }
! }
!
! }
! return aRetPtr;
}
SetCollectionPtr Concept::getPropertyKeys( void )
+ throw ()
{
+ if( theProperties == NULLPTR )
+ {
+ throw NullPointerException(LOCATION);
+ }
+ else
+ {
+
+ }
return SetCollectionPtr( NULLPTR );
}
! void Concept::addAttribute( AttributePtr aPtr )
! throw ()
{
! if( theProperties == NULLPTR || aPtr == NULLPTR )
! {
! throw NullPointerException(LOCATION);
! }
! else
! {
! theProperties->put( aPtr );
! }
! }
!
! void Concept::removeAttribute( AttributePtr aPtr )
! throw ()
! {
! if( theProperties == NULLPTR || aPtr == NULLPTR )
! {
! throw NullPointerException(LOCATION);
! }
! else
! {
! theProperties->remove(aPtr);
! }
! }
!
! void Concept::removeKey( FrameworkEntityPtr aPtr )
! throw ()
! {
! if( theProperties == NULLPTR || aPtr == NULLPTR )
! {
! throw NullPointerException(LOCATION);
! }
! else
! {
! Attribute aFake;
! aFake.setKey( aPtr );
! theProperties->remove(&aFake);
! }
}
|
|
From: Frank V. C. <fr...@us...> - 2001-04-01 13:57:53
|
Update of /cvsroot/corelinux/models In directory usw-pr-cvs1:/tmp/cvs-serv23516 Modified Files: 115287-Persist.mdr 115287-Persist.xml.zip Log Message: Adding detailed models Index: 115287-Persist.mdr =================================================================== RCS file: /cvsroot/corelinux/models/115287-Persist.mdr,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -r1.9 -r1.10 *** 115287-Persist.mdr 2001/03/30 12:36:35 1.9 --- 115287-Persist.mdr 2001/04/01 13:57:49 1.10 *************** *** 50,54 **** ) (RTProjectGroupObject ! mID "ID0000000004f5" mName "Code engineering sets" ) --- 50,54 ---- ) (RTProjectGroupObject ! mID "ID000000000573" mName "Code engineering sets" ) Index: 115287-Persist.xml.zip =================================================================== RCS file: /cvsroot/corelinux/models/115287-Persist.xml.zip,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 Binary files /tmp/cvsAQOQ57 and /tmp/cvskhmE77 differ |
|
From: Frank V. C. <fr...@us...> - 2001-03-31 22:21:49
|
Update of /cvsroot/corelinux/clfw In directory usw-pr-cvs1:/tmp/cvs-serv25128 Modified Files: ChangeLog Log Message: 115287 - Continued infrastructure work Index: ChangeLog =================================================================== RCS file: /cvsroot/corelinux/clfw/ChangeLog,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -r1.19 -r1.20 *** ChangeLog 2001/03/30 11:48:37 1.19 --- ChangeLog 2001/03/31 22:21:45 1.20 *************** *** 1,2 **** --- 1,7 ---- + 2001-03-31 Frank V. Castellucci <fr...@ca...> + + * Feature 115287 - Added FrameworkString, and adjusted Attribute + so has Key=Value not Name=Value. Key can be user defined (FrameworkEntity natch). + 2001-03-30 Frank V. Castellucci <fr...@ca...> |
|
From: Frank V. C. <fr...@us...> - 2001-03-31 22:21:49
|
Update of /cvsroot/corelinux/clfw/src/testdrivers/exf1
In directory usw-pr-cvs1:/tmp/cvs-serv25128/src/testdrivers/exf1
Modified Files:
examp1.cpp
Log Message:
115287 - Continued infrastructure work
Index: examp1.cpp
===================================================================
RCS file: /cvsroot/corelinux/clfw/src/testdrivers/exf1/examp1.cpp,v
retrieving revision 1.32
retrieving revision 1.33
diff -C2 -r1.32 -r1.33
*** examp1.cpp 2001/03/31 14:05:00 1.32
--- examp1.cpp 2001/03/31 22:21:45 1.33
***************
*** 91,94 ****
--- 91,98 ----
#endif
+ #if !defined(__FRAMEWORKSTRING_HPP)
+ #include <clfw/FrameworkString.hpp>
+ #endif
+
#if !defined(__ATTRIBUTE_HPP)
#include <clfw/Attribute.hpp>
***************
*** 655,662 ****
UnsignedShortIntegerPtr aV2( new UnsignedShortInteger(9) );
! a1->setName("a1");
a1->setValue( aV1 );
! a2->setName("a2");
a2->setValue(aV2);
--- 659,666 ----
UnsignedShortIntegerPtr aV2( new UnsignedShortInteger(9) );
! a1->setKey( new FrameworkString("a1"));
a1->setValue( aV1 );
! a2->setKey( new FrameworkString("a2"));
a2->setValue(aV2);
***************
*** 664,668 ****
cout << "Compare att 1 = " << (a1->equals(a2) ? "true" : "false" ) << endl;
! a1->setName(a2->getName());
cout << "Compare att 2 = " << (a1->equals(a2) ? "true" : "false" ) << endl;
--- 668,672 ----
cout << "Compare att 1 = " << (a1->equals(a2) ? "true" : "false" ) << endl;
! a1->setKey(a2->getKey());
cout << "Compare att 2 = " << (a1->equals(a2) ? "true" : "false" ) << endl;
|