Commit graph

261 commits

Author SHA1 Message Date
David Ayers
c4bf6fba06 * EOAccess/EOAccessFault.h/m: Minor cleanups for autogsdoc.
* EOAccess/EOAdaptor.m: Ditto.
	* EOAccess/EOAdaptorChannel.h/m: Ditto.
	* EOAccess/EOAdaptorContext.h: Ditto.
	* EOAccess/EODatabase.h/m: Ditto.
	* EOAccess/EODatabaseChannel.m: Ditto.
	* EOAccess/EODatabaseContext.h/m: Ditto.
	* EOAccess/EODatabaseDataSource.h: Ditto.
	* EOAccess/EODatabaseOperation.h: Ditto.
	* EOAccess/EOEntity.h/m: Ditto.
	* EOAccess/EOModel.h/m: Ditto.
	* EOAccess/EORelationship.h: Ditto.
	* EOAccess/EOSchemaGeneration.h: Ditto.
	* EOAccess/EOUtilities.h/m: Ditto.

	* EOAccess/EOSQLExpression.h/m: Minor cleanups for autogsdoc.
	(EOSchemaGeneration): Move implementation from here to ...
	* EOAccess/EOSchemaGeneration.m: ... new file for autogsdoc.
	* EOAccess/GNUmakefile: Add EOSchemaGeneration.m.

	* EOAccess/EOUtilities.m (EOObjectStoreCoordinator EOModelGroup):
	Move implementation from here to ...
	* EOAccess/EOModelGroup.m: ... to here for autogsdoc.

	* common.make: (GDL2_AGSDOC_FLAGS): Add extern declarations.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@24302 72102866-910b-0410-8b05-ffd578937521
2007-01-01 11:52:38 +00:00
David Ayers
4e1e4eea27 * EOControl/GNUmakefile: Simplify documentation declarations.
* EOAccess/GNUmakefile: Ditto.
	* EOInterface/GNUmakefile: Ditto.
	* Tools/GNUmakefile: Ditto.

	* common.make (ADDITIONAL_LIB_DIRS): Move handling from here...
	* variable-processing.make: ... to new file.
	* EOControl/GNUmakefile: Use variable-processing.make.
	Include common.make early.
	* EOAccess/GNUmakefile: Ditto.
	* EOInterface/GNUmakefile: Ditto.
	* Tools/GNUmakefile: Ditto. 
	* DBModeler/GNUmakefile: Ditto.
	* EOModeler/GNUmakefile: Ditto.
	* GDL2Palette/GNUmakefile: Ditto.
	
	* EOControl/EOFetchSpecification.h/m: Cleanup for documentation
	generation.
	* EOControl/EOGenericRecord.m: Ditto.
	* EOControl/EOClassDescription.h/m: Ditto.	
	* EOControl/EONSAddOns.m: Ditto.
	* EOControl/EOObjectStore.h: Ditto.
	* EOControl/EOEditingContext.h: Ditto.
	* EOControl/EODataSource.m: Ditto.
	* EOControl/EOKeyValueArchiver.h/m: Ditto.
	* EOControl/EOFault.h/m: Ditto.
	* EOControl/EOObserver.h: Ditto.
	* EOControl/EOEventCenter.m: Ditto.
	* EOControl/EOMultiReaderLock.m: Ditto.
	* EOControl/EOKeyGlobalID.h/m: Ditto.
	* EOControl/EOObserver.m: Ditto.
	* EOControl/EOEvent.m: Ditto.
	* EOControl/EOObjectStoreCoordinator.h: Ditto.
	* EOControl/EODeprecated.h: Ditto.
	* EOControl/EOUndoManager.m: Ditto.
	* EOControl/EOKeyValueCoding.h/m: Ditto.
	* EOControl/EOQualifier.h: Ditto.
	
	* EOControl/EOClassDescription.h/m (editingContext): Remove
	duplicate declartion and definition (see EOEditingContext.h/m)
	* EOControl/EOFetchSpecification.h (EOPrefetchingRelationshipHintKey)
	(EOFetchLimitHintKey, EOPromptsAfterFetchLimitHintKey): Remove
	deprecated declarations.
	
	* EOAccess/EOAttribute.m: Cleanup for documentation.
	* EOAccess/EOAttribute.m (newValueForBytes:length:encoding:):
	Avoid creating intermediate NSData object.

	* EOControl/EOControl.gsdoc: Added Documentation.

	* EOControl/EOUndoManager.h: Remove content of deprecated header
	and add warning.
	
	* common.make (GDL2_AGSDOC_FLAGS): Add global GDL2 documenation
	flags.
	* config.h.in (RCSID): Avoid reserved names by relying
	in static declarations and avoid recursive call.

	* EOAdaptors/PostgreSQLAdaptor/PostgreSQLAdaptor.m
	(assignExternalInfoForAttribute:) Move implementation to...
	(assignExternalTypeForAttribute:) ...here.

	* Version: Update variable names.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@24297 72102866-910b-0410-8b05-ffd578937521
2006-12-30 17:41:02 +00:00
Matt Rice
11c2e9260a * EOAccess/EOEntity.m (-dealloc): Only set parents to nil
properties which have been fully loaded.
        * EOAdaptors/PostgreSQL/LoginPanel/GNUmakefile: Remove references to
        libgnustep-db2control/access
        * DBModeler/MainModelEditor.m: Set the windows title.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@24253 72102866-910b-0410-8b05-ffd578937521
2006-12-26 16:41:37 +00:00
Matt Rice
a34631c202 * EOAccess/EOEntity.m: Break retain cycle for parent/sub entities.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23956 72102866-910b-0410-8b05-ffd578937521
2006-10-23 18:00:09 +00:00
Matt Rice
c3bb66bcc3 * EOAccess/EOEntity.m (-dealloc): Add missing calls to release,
reorganize.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23955 72102866-910b-0410-8b05-ffd578937521
2006-10-23 17:39:24 +00:00
Matt Rice
9e08693c96 * EOAccess/EOModel.m (-dealloc): Set entities model to nil.
* EOAccess/EOEntityPriv.h: Add functions for maintining list of
        relationships and their destination entities.
        * EOAccess/EOEntity.m: Implement new functions.
        (-dealloc:): Set attributes entities, and relationships source 
	and destinations entities to nil.
        (+initialize:): Initialize static map table.
        * EOAccess/EORelationship.m: Call functions to maintain 
	destination entities.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23954 72102866-910b-0410-8b05-ffd578937521
2006-10-23 15:29:27 +00:00
Matt Rice
a1605b6f72 * EOAccess: Revert previous changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23949 72102866-910b-0410-8b05-ffd578937521
2006-10-23 11:39:48 +00:00
Matt Rice
f9f1fdb6d3 * EOAccess/EOPrivate.h: Add notification constants.
* EOAccess/EOAttribute.m: Observe EOEntity's notification.
        * EOAccess/EORelationship.m: Observe EOEntity's notification.
        * EOAccess/EOModel.m: Post notification when deallocating.
        * EOAccess/EOEntity.m: Post notification when deallocating, and
        observe EOModels notification.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23946 72102866-910b-0410-8b05-ffd578937521
2006-10-22 20:16:31 +00:00
Matt Rice
da74a77858 * EOAccess/EOAttribute.m: Remove usage of GCObject, and its
subclasses.
        * EOAccess/EOModelGroup.h: Ditto.
        * EOAccess/EOStoredProcedure.m: Ditto.
        * EOAccess/EOModelGroup.m: Ditto.
        * EOAccess/EOExpressionArray.h: Ditto.
        * EOAccess/EORelationship.h: Ditto.
        * EOAccess/EOExpressionArray.m: Ditto.
        * EOAccess/EOEntity.h: Ditto.
        * EOAccess/EOEntity.m: Ditto.
        * EOAccess/EOJoin.h: Ditto.
        * EOAccess/EOModel.h: Ditto.
        * EOAccess/EOAttribute.h: Ditto.
        * EOAccess/EOAttributePriv.h: Ditto.
        * EOAccess/EOJoin.m: Ditto.
        * EOAccess/EORelationship.m: Ditto, and don't retain source and
        * EOAccess/EOStoredProcedure.h: Ditto, and don't retain model.
        * EOAccess/EOModel.m: Ditto.
        (-addStoredProcedure:): Fix error when using non-mutable objects.
        (-dealloc): Add missing ivars.
        destination entities.
        * EOAccess/GNUmakefile: Remove slash on last header file.
        * EOControl/EOPrivate.m: Update comment.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23874 72102866-910b-0410-8b05-ffd578937521
2006-10-15 12:23:42 +00:00
David Ayers
e7fa41c41e * EOAccess/EOAdaptor.m (databaseEncoding): Use NSStringEncoding
enum symbols instead of literal values.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23869 72102866-910b-0410-8b05-ffd578937521
2006-10-14 09:05:37 +00:00
David Ayers
7fe1dba6fd Fix another typo :-/.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23864 72102866-910b-0410-8b05-ffd578937521
2006-10-13 06:15:46 +00:00
David Ayers
10601cb01d Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23863 72102866-910b-0410-8b05-ffd578937521
2006-10-13 04:58:11 +00:00
David Ayers
43502e1698 * EOAccess/EOAdaptor.m (databaseEncoding): Reimplement to not
rely on GSEncodingName.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23862 72102866-910b-0410-8b05-ffd578937521
2006-10-13 04:54:09 +00:00
Nicola Pero
cf007a832d Do not set GNUSTEP_INSTALLATION_DIR
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23830 72102866-910b-0410-8b05-ffd578937521
2006-10-09 23:09:04 +00:00
Matt Rice
fa9b96612d * EOAccess/EOEntity.m (-awakeWithPropertyList:): Setup the
connection to the parent entity.
        (-encodeIntoPropertyList:): Encode the parent entity name.
        (-init): Initialize the _subEntities ivar.
        (-addSubEntity:): Pass correct argument.
        * EOAccess/EOModel.m (-encodeTableOfContentsIntoPropertyList:):
        encode the parent entity name.
        (-_addEntityWithPropertyList): Call -awakeWithPropertyList:



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23740 72102866-910b-0410-8b05-ffd578937521
2006-10-03 15:19:33 +00:00
Matt Rice
a7f90ca359 * EOAccess/EOEntityPriv.h: Rename setParentEntity: to
_setParentEntity:.
        * EOAccess/EOEntity.m (-addSubEntity:): Ditto.
        (-removeSubEntity:): Ditto, and check that self is the parent before
        setting to nil.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23707 72102866-910b-0410-8b05-ffd578937521
2006-10-02 07:29:29 +00:00
Matt Rice
f9d210a522 * EOAccess/EOEntity.m (-addSubEntity:): Remove the child as a
sub-entity of its previous parent.
        * DBModeler/Inspectors/AdvancedEntityInspector.[h,m,gorm]:
        add ability to set parent entity.
        * GDL2Palette/KeyWrapper.h: Add QueryType.
        * GDL2Palette/ConnectionInspector.m: add/remove comments.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23696 72102866-910b-0410-8b05-ffd578937521
2006-10-01 17:18:04 +00:00
Matt Rice
e181d5707e * EOAccess/EODatabase.m (-snapshots): Return an autoreleased copy.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23656 72102866-910b-0410-8b05-ffd578937521
2006-09-28 17:01:29 +00:00
Matt Rice
0412fd6a40 * EOAccess/EOSQLExpression.m
(+createTableStatementsForEntityGroup:)
        (+dropTableStatementsForEntityGroup:)
        (+primaryKeySupportStatementsForEntityGroup:)
        (+createTableStatementsForEntityGroup:): Return an empty array for
        abstract entities.
        * EOAdaptors/PostgreSQLAdaptor/PostgreSQLExpression.m
        (+dropTableStatementsForEntityGroup:): Ditto.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23653 72102866-910b-0410-8b05-ffd578937521
2006-09-28 15:25:30 +00:00
Matt Rice
4394a323d0 * EOAccess/EOModel.m (writeToFile:): Use the default permissions
on .eomodeld files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23537 72102866-910b-0410-8b05-ffd578937521
2006-09-16 21:34:10 +00:00
David Ayers
081f2c530d * EOAccess/EOAttribute.[hm]: Add documentation.
(_valueTypeChar): Replace char type with ...
	(_valueTypeCharacter): ... unichar type.
	([_valueTypeCharacter): Add comment about caching issue.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23531 72102866-910b-0410-8b05-ffd578937521
2006-09-16 03:27:17 +00:00
Matt Rice
726d42c448 * configure: Regenerate.
* common.make: New file.
        * config.make.in: Remove.
        * GNUmakefile: Ditto.
        * GNUmakefile.in: New file, merges config.make.in and 
GNUmakefile.
        * configure.ac: Remove config.make.in, add GNUmakefile.in.
        * EOInterface/Makefile.preamble
        * EOInterface/GNUmakefile
        * EOAccess/Makefile.preamble
        * EOAccess/GNUmakefile
        * EOControl/GNUmakefile
        * EOControl/Makefile.preamble
        * DBModeler/GNUmakefile
        * Tools/Makefile.preamble
        * EOAdaptors/Postgres95/Makefile.preamble
        * GDL2Palette/GNUmakefile
        * gdl2.make.in
        * EOModeler/GNUmakefile
        * EOModeler/Makefile.preamble: Change to compile as native 
libraries.
        * DBModeler/Inspectors/AttributeInspector.gorm/data.info:
        * DBModeler/Inspectors/AttributeInspector.gorm/data.classes:
        * DBModeler/Inspectors/AttributeInspector.gorm/objects.gorm: 
Implement
        interface.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23513 72102866-910b-0410-8b05-ffd578937521
2006-09-14 21:11:01 +00:00
David Ayers
7331d77528 * EOAdaptors/Postgres95/GNUmakefile.in:
Install into GNUSTEP_SYSTEM_ROOT by default.

	* * Update email addresses for Mirko Viviani and David Ayers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23510 72102866-910b-0410-8b05-ffd578937521
2006-09-14 16:06:21 +00:00
David Ayers
7bd929705b * EOInterface/EOInterface.gsdoc: New file.
* EOInterface/GNUmakefile: Update variables to build documentation.
	* EOAccess/EOAccess.gsdoc: Specify title.
	* EOControl/EOControl.gsdoc: Ditto.
	* GDL2.gsdoc: Use sections allowed by DTD.  Remove reference to
	MulleEOInterface.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23474 72102866-910b-0410-8b05-ffd578937521
2006-09-12 20:39:43 +00:00
David Ayers
ad43813eb0 * EOAccess/EOSQLExpression.h (deleteStatementWithQualifier:entity:)
* EOAccess/EOSQLExpressionPriv.h (_aliasForRelationshipPath:)
	(_flattenRelPath:entity:, _aliasForRelatedAttribute:relationshipPath:)
	* EOAccess/EOSQLExpression.m (insertStatementForRow:entity:)
	(updateStatementForRow:qualifier:entity:)
	(deleteStatementWithQualifier:entity:)
	(selectStatementForAttributes🔒fetchSpecification:entity:)
	(_aliasForRelationshipPath:)
	* EOAccess/EORelationship.h (intermediateEntity)
	(_foreignKeyForSourceRow:)
	* EOAccess/EORelationship.m (_foreignKeyForSourceRow:, _leftSideKeyMap)
	* EOAccess/EODatabaseContext.h (databaseOperationForObject:)
	(databaseOperationForGlobalID:, recordDatabaseOperation:)
	(_openChannelWithLoginPanel:)
	* EOAccess/EODatabaseContextPriv.h (primaryKeyForObject:)
	(_currentCommittedSnapshotForObject:)
	* EOAccess/EOEntityPriv.h (_keyMapForRelationshipPath:)
	(_keyMapForIdenticalKeyRelationshipPath:, _mapAttribute:)
	(_relationshipPathIsToMany: valueForSQLExpression:)
	(_parsePropertyName:, classPropertyAttributeNames)
	(classPropertyToManyRelationshipNames)
	(classPropertyToOneRelationshipNames, dbSnapshotKeys)
	* EOAccess/EOUtilities.m (rawRowsForEntityNamed:qualifierFormat:)
	(rawRowsMatchingValue:forKey:entityNamed:)
	(rawRowsMatchingValues:entityNamed:, rawRowsWithSQL:modelNamed:)
	(rawRowsWithStoredProcedureNamed:arguments:)
	(executeStoredProcedureNamed:arguments:, databaseContextForModelNamed:)
	(primaryKeyForObject:)
	(destinationKeyForSourceObject:relationshipNamed:)
	* EOAccess/EOEntity.m
	(_mapAttribute:toDestinationAttributeInLastComponentOfRelationshipPath:)
	* EOAccess/EOAdaptor.h (adaptorWithModel:,adaptorWithName:)
	* EOAccess/EOModel.h (_classDescriptionNeeded:,_entityForClass:)
	(_addEntityWithPropertyList:)
	* EOAdaptors/Postgres95/Postgres95Channel.h
	(_evaluateExpression:withAttributes:)
	* EOControl/EOMutableKnownKeyDictionary.h/m (arrayMappingForKeys:)
	(subsetMappingForSourceDictionaryInitializer:sourceKeys:destinationKeys:)
	(subsetMappingForSourceDictionaryInitializer:)
	(setObject:forKey:, removeObjectForKey:, indexForKey:, objectForKey:)
	* EOControl/EOEditingContext.m (handleErrors:,setSharedEditingContext:)
	(faultForRawRow:entityNamed:)
	* GDL2Palette/KeyWrapper.h (setKey:, _key):
	* EOModeler/EOModelerEditor.h (selectionWithinViewedObject)
	* EOModeler/EOModelerEditor.m (initWithDocument:)
	(initWithParentEditor:)
	Correct method signatures.  Add necessary forward @class declations.

	* EOInterface/EOMasterDetailAssociation.m (establishConnection):
	* DBModeler/ModelerTableEmbedibleEditor.m
	(addDefaultTableColumnsForTableView:displayGroup:)
	* DBModeler/DefaultColumnProvider.m (setupTitleForColumn:named:)
	Cast types to avoid compiler warnings.

	* EOControl/EOCheapArray.m (dealloc): Supress compiler warning.
	* EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.m (dealloc)
	* EOModeler/EOModelerEditor.m (dealloc):
	* DBModeler/ModelerAttributeEditor.m (dealloc): Add missing call
	to super.
	* DBModeler/Preferences.m (sharedPreferences): Fix implementation for
	new compiler semantics.
	* EOControl/EOMultiReaderLock.m (init): Correct NSConditionLock
	initialization.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23472 72102866-910b-0410-8b05-ffd578937521
2006-09-12 19:36:24 +00:00
Matt Rice
c19aa897d7 * EOAccess/EOEntity.m (-relationships): Fix whitespace from previous
commit.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22684 72102866-910b-0410-8b05-ffd578937521
2006-03-19 18:39:38 +00:00
Matt Rice
fbedef852f * EOControl/EODetailDataSource.m (-editingContext): Return the master
data sources editing context.
* EOControl/EOGlobalID.m (-description): Correct conversion specification.
* EOAccess/EOModel.m (-referencesToProperty:): Implement.
* EOAccess/EORelationship.m (-referencesProperty:): Fix bug in or when
	sending messages to nil.
	(-validateName:): Return nil if the name is the properties current name.
* EOAccess/EOModel.m (-validateName:): Ditto.
* EOAccess/EOEntity.m (-validateName:): Ditto.
        (-relationships): Handle partially converted relationships array.
        (-addAttribute:): Remove unnecessary cast.
        (-addRelationship:): Ditto.
        (-removeAttribute): Remove property from the class properties and
        primary key attributes arrays.
        (-removeRelationship:): Remove property from the class properties
        array.
        (-_setIsEdited:): Rebuild _relationshipsByName.
* EOAdaptors/Postgres95/Postgres95SQLExpression.m: Fix warning.
* EOAdaptors/Postgres95/Postgres95Values.m: Remove c99 usage.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22681 72102866-910b-0410-8b05-ffd578937521
2006-03-19 18:03:50 +00:00
David Ayers
6240fa79a7 * EOAccess/EOAttribute.m: Translate comment to avoid
non-ASCII encoding.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22177 72102866-910b-0410-8b05-ffd578937521
2005-12-18 13:47:07 +00:00
Manuel Guesdon
1ae3f10933 * EOAccess/EOSQLQualifier.m: change in EOAndQualifier and
EOOrQualifier -schemaBasedQualifierWithRootEntity to allow
nil schemaBasedQualifier.
fix in EOKeyValueQualifier -schemaBasedQualifierWithRootEntity:
to handle key like rel1.rel2.rel3 (see Testsuite
EOKeyValueQualifier01.m)
* EOAccess/EOSQLExpression.m: added NSAssert in
-sqlStringForKeyValueQualifier:
* EOAccess/EORelationship.m: added NSAssert in setDefinition:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21682 72102866-910b-0410-8b05-ffd578937521
2005-08-25 18:32:44 +00:00
Manuel Guesdon
d6d1029a3e * EOControl/EOGenericRecord.m: fix -willChange call (don't call
it for takeStoredValue:forKey and for -setXX method).
* EOControl/EOClassDescription.m: check if value is not
already set before adding/setting it in
_setObject:forBothSidesOfRelationshipWithKey: and
addObject:toBothSidesOfRelationshipWithKey:
* EOAccess/EOAttribute.m: log in -validateValue:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21669 72102866-910b-0410-8b05-ffd578937521
2005-08-23 14:40:44 +00:00
David Ayers
41b2d38380 * EOAccess/EODatabaseContext.m ([-dealloc], [-rollbackChanges])
([-_cleanUpAfterSave]): Guard against missing hash table.
	([-registerLockedObjectWithGlobalID:]): Reformat.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21653 72102866-910b-0410-8b05-ffd578937521
2005-08-17 21:11:40 +00:00
David Ayers
9647f11503 * COPYING.LIB: Update to LGPL 2.1.
* configure: Regenerate.
	* Update FSF Address and Copyright years.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21645 72102866-910b-0410-8b05-ffd578937521
2005-08-17 08:07:57 +00:00
Matt Rice
22a14f5447 * EOAccess/EOAdaptorContext.h/m (-channels:): New method.
* EOAccess/EOSQLExpression.m
        (-_administrativeDatabaseStatementsForSelector:forEntityGroup:):
        Comment out login panel.
        * EOAccess/EOUtilities.m: Dont declare EOMoreThanOneException and
        NSObjectNotAvailableException as static.
        * EOControl/EOPrivate.h: Declare new class GDL2NonRetainingMutableArray
        and -registerAssociationForDeallocHack method.
        * EOControl/EOPrivate.m: New class GDL2NonRetainingMutableArray.
        * EOControl/EOEditingContext.m:
        (EOEditingContext -initWithParentObjectStore:): initialize _editors
        ivar with a non retaining array.
        (-dealloc): Remove the editing context as an observer for registered
        objects.
        (-[NSObject(DeallocHack) dealloc]): for associations, remove the
        association and object from the private hash table.
        (-[NSObject(DeallocHack) registerAssociationForDeallocHack]): New
        method.
        * EOControl/EOObserver.m (EOObserverCenter): Replace GSIArray usage
        with GDL2NonRetainingMutableArray.
        (+addObserver:forObject:, +removeObserver:forObject:): Ditto.
        (+initialize, +notifyObserversObjectWillChange:): Ditto.
        (+observersForObject:, +observerForObject:): Ditto.
        (+addOmniscientObserver:, +removeOmniscientObserver:): Ditto.
        (EOObserverProxy -initWithTarget:action:priority:): Don't retain
        target.
        (EOObserverProxy -dealloc:): Discard pending notifications.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21404 72102866-910b-0410-8b05-ffd578937521
2005-07-04 06:17:18 +00:00
Matt Rice
4ba78b33b4 * dev-apps/test/Testsuite/gdl2/GDL2Testing.h: Include ObjectTesting.h instead of stuff.h.
* dev-apps/test/Testsuite/gdl2/EOModel/test05.m: New test for -removeEntity:.

* dev-libs/gdl2/EOAccess/EOEntity.m (-_setModel:): Accept nil argument, comment.
* dev-libs/gdl2/EOAccess/EOModel.m (-removeEntity:): Comment.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21321 72102866-910b-0410-8b05-ffd578937521
2005-06-17 14:46:37 +00:00
Matt Rice
56ba650c5c * EOAccess/Makefile.preamble: Change link flag to use FND_LIBS
variable
        defined in base.make
        * EOControl/Makefile.preamble: Ditto.
        * EOAccess/EODatabaseDataSource.m (-entity): Look for entity with
the
        fetch specifications entity name in a model group.
        (-databaseContext): Return a registered database context.
        * EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.m: Cast
before
        calling -initWithIdentifier to remove warning with gcc 3.4
        * EOControl/EOEditingContext.m
(-encodeWithCoder:,-initWithCoder:):
        initial implementation of methods.
        * EOControl/EOClassDescription.m (-snapshot): cast 'value' to get
        thwart warnings.
        * EOControl/EOFault.m (-superClass): Implement as returning a
class.
        * Tools/gsdoc-model.m: Include headers alphabetically, include
        NSCalendarDate.h to thwart warning.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21221 72102866-910b-0410-8b05-ffd578937521
2005-05-12 19:13:34 +00:00
Manuel Guesdon
2e0f2da446 fixed test error in EOAttribute -newValueForBytes:length:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21156 72102866-910b-0410-8b05-ffd578937521
2005-04-24 14:18:59 +00:00
Manuel Guesdon
9c4a91f7ce Fixes inEOAttribute.m and EOKeyValueARchiver.m
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21153 72102866-910b-0410-8b05-ffd578937521
2005-04-24 11:28:15 +00:00
David Ayers
d7ba99629e Fix bug reported by: jim _at_ uchicago dot edu.
* EOAccess/EOEntity.m (-primaryKeyRootName): Recurse to
	through primaryKeyRootName of parent entity.
        * EOAdaptors/Postgres95/Postgres95Channel.m
        (primaryKeyForNewRowWithEntity:): Use primaryKeyRootName to
        construct sequence name.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21126 72102866-910b-0410-8b05-ffd578937521
2005-04-19 14:14:37 +00:00
Manuel Guesdon
9d8277892a Implemeted things in EOKeyValueArchiver, put back David changes in
-adaptorValueByConvertingAttributeValue in EOAttribute.m


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21125 72102866-910b-0410-8b05-ffd578937521
2005-04-19 10:44:49 +00:00
David Ayers
c1baf1e562 * EOAccess/EORelationship.m (validateValue:): Document.
Remove unnecessary comments and code.  Handle EONulls.
        (+initialize): Implement.
        (+relationshipWithPropertyList:owner:): Move to top.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20840 72102866-910b-0410-8b05-ffd578937521
2005-03-03 17:36:16 +00:00
David Ayers
1f9afe4934 * EOAccess/EODatabaseContext.m (-forgetSnapshotForGlobalID:):
Handle deleted globalIDs correctly.
        (-forgetSnapshotsForGlobalIDs:): Ditto.
        (-_commitTransaction, -_beginTransaction): Ditto.
        (-_rollbackTransaction): Implement.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20836 72102866-910b-0410-8b05-ffd578937521
2005-03-03 14:00:42 +00:00
David Ayers
6a28dfbc6e * EOAccess/EOEntity.m (initWithPropertyList:owner:):
Reformatting for GNU coding standards.
        (-attributes): Fix memory leak.  Use global class cache.
        Handle partially converted attributes array.
        (-_attributeNameChangedFrom:to:): New privat method.
        * EOAccess/EOEntityPriv.h (-_attributeNameChangedFrom:to:):
        Declare new private method.
        * EOAccess/EOAttribute.m (setName:): Call
        -[EOEntity _attributeNameChangedFrom:to:] if attribute is in
        an EOEntity.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20835 72102866-910b-0410-8b05-ffd578937521
2005-03-03 12:17:57 +00:00
David Ayers
627c340174 * EOAccess/EOModel.m (setName:): Remove from group before
changing name and readd afterwards.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20831 72102866-910b-0410-8b05-ffd578937521
2005-03-02 15:34:57 +00:00
David Ayers
da6a07ec81 * EOControl/EOKeyValueCoding.h/m: (-setNilValueForKey:):
Override NSObject's category to invoke
        -unableToSetNullForKey:.

        * EOControl/EOSortOrdering.m: Include EONull.h instead of
        NSNull.h.

        * EOAccess/EODatabaseChannel.m: Update formatting,


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20830 72102866-910b-0410-8b05-ffd578937521
2005-03-02 14:10:36 +00:00
David Ayers
86b1325708 * EOAccess/EOAttribute.m, EOAccess/EODatabaseContext.m,
* EOAccess/EOEntity.m, EOAccess/EOSQLExpression.m
        * EOAccess/EOPrivate.h, EOAccess/EOPrivate.m,
        * EOAccess/EOSQLQualifier.m, EOAccess/EOUtilities.m
        * EOControl/EOClassDescription.m, EOControl/EOEditingContext.m
        * EOControl/EOGenericRecord.m, EOControl/EOKeyGlobalID.m
        * EOControl/EOKeyValueCoding.m,
        * EOControl/EOKeyValueQualifier.m
        * EOControl/EOMutableKnownKeyDictionary.m,
        * EOControl/EOPrivate.h, EOControl/EOPrivate.m
        Unify GDL2 identifiers with GDL2_ prefix.  Replace
        GDL2NSClass_alloc with GDL2_alloc(NSClass).  Replace
        GDL2NSClassWith* calls with
        AUTORELEASE([GDL2_alloc(NSCLass) initWith* calls]).
        Rename GDL2PrivInit to GDL2_PrivateInit.
        (GDL2_NSArray, GDL2_NSMutableArray_allocWithZoneIMP)
        (GDL2_NSMutableDictionary_allocWithZoneIMP): New globals.
        (GDL2_alloc): New macro.
        (GDL2NSString_alloc, GDL2NSDecimalNumber_alloc)
        (GDL2NSNumber_alloc, GDL2NSCalendarDate_alloc, GDL2NSData_alloc)
        (GDL2DataWithBytesAndLength, GDL2MutableArrayWithCapacity)
        (GDL2MutableArrayWithArray, GDL2MutableArray, GDL2Array)
        (GDL2MutableDictionaryWithCapacity): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20779 72102866-910b-0410-8b05-ffd578937521
2005-02-22 16:14:03 +00:00
David Ayers
e4bdd8f5dc * EOAccess/EOAdaptor.m (-hasOpenChannels): Make safe for
unsigned.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20774 72102866-910b-0410-8b05-ffd578937521
2005-02-22 12:52:46 +00:00
David Ayers
8b5a93e44e * EOAccess/EOAdaptor.m: Consistently use unsigned for array
index variables.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20767 72102866-910b-0410-8b05-ffd578937521
2005-02-20 20:58:28 +00:00
David Ayers
2fb344f062 * EOAccess/EOPrivate.h, EOAccess/EOPrivate.m,
* EOAccess/EODatabaseContext.m, EOAccess/EOSQLExpression.m,
        * EOControl/EOEditingContext.m, EOControl/EOKeyValueCoding.m,
        * EOControl/EOMutableKnownKeyDictionary.m,
        * EOControl/EOPrivate.h, EOControl/EOPrivate.m: Remove global
        selector cache.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20766 72102866-910b-0410-8b05-ffd578937521
2005-02-20 20:33:09 +00:00
David Ayers
944432d46e Add file missing from last commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20762 72102866-910b-0410-8b05-ffd578937521
2005-02-20 13:57:23 +00:00
David Ayers
0d24407fcf * EOControl/EOPriv.h/m: Split into...
* EOControl/EOPrivat.h/m: ... and ...
        * EOAccess/EOPrivat.h/m: ... files.
        * EOAccess/EOAdaptorChannel.m: Include new privat header.
        * EOAccess/EOAttribute.m, EOAccess/EODatabase.m,
        * EOAccess/EODatabaseChannel.m, EOAccess/EOEntity.m,
        * EOAccess/EORelationship.m, EOAccess/EOSQLExpression.m,
        * EOAccess/EOSQLQualifier.m, EOAccess/EOUtilities.m: Ditto.
        (+initialize): Call new private function.
        * EOAccess/EODatabaseContext.m: Ditto.
        (EODatabaseContext_snapshotForGlobalIDWithImpPtr)
        (EODatabaseContext_globalIDForObjectWithImpPtr): Move to
        EOPrivate.m.
        * EOAccess/EODatabaseContextPriv.h:
        (EODatabaseContext_snapshotForGlobalIDWithImpPtr)
        (EODatabaseContext_globalIDForObjectWithImpPtr): Move to
        EOPrivate.h.
        * EOAccess/GNUmakefile: Compile EOPrivate.m.

        * EOControl/EOClassDescription.m, EOControl/EOGenericRecord.m
        * EOControl/EOKeyGlobalID.m, EOControl/EOKeyValueCoding.m
        * EOControl/EOKeyValueQualifier.m, EOControl/EONSAddOns.m
        * EOControl/EOSortOrdering.m: Include new private header.
        * EOControl/EOEditingContext.h/m: Ditto.
        (EOEditingContext_objectForGlobalIDWithImpPtr)
        (EOEditingContext_recordObjectGlobalIDWithImpPtr): Move to
        EOPrivate.h/m.
        * EOControl/EOMutableKnownKeyDictionary.h/m: Include new
        private header.
        (EOMKKD_objectForKeyWithImpPtr, EOMKKD_setObjectForKeyWithImpPtr)
        (EOMKKD_removeObjectForKeyWithImpPtr, EOMKKD_hasKeyWithImpPtr)
        (EOMKKD_indexForKeyWithImpPtr)
        (EOMKKDInitializer_indexForKeyWithImpPtr): Move to EOPrivate.m
        * EOControl/EOFault.m: (+isFault:): Update comment.
        * EOControl/GNUmakefile: Build EOPrivate.m instead of EOPriv.m.
        Do not install private header.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20759 72102866-910b-0410-8b05-ffd578937521
2005-02-20 10:52:57 +00:00
David Ayers
ef8e948417 * EOAccess/EOAccessFault.m: Include NSThread.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20758 72102866-910b-0410-8b05-ffd578937521
2005-02-20 10:24:36 +00:00
Matt Rice
74a8e976bf Call -willChange: to support EOObserving in EOModel, EOEntity, EOAttribute,
EORelationship, EOStoredProcedure.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20745 72102866-910b-0410-8b05-ffd578937521
2005-02-18 16:46:38 +00:00
David Ayers
6b4ef319c9 * EOAccess/EODatabaseContext.m:
(recordChangesInEditingContext): Remove shadowing of local
	variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20739 72102866-910b-0410-8b05-ffd578937521
2005-02-17 12:19:38 +00:00
David Ayers
af63fd32b5 * EOAccess/EODatabaseContext.m:
(-_currentCommittedSnapshotForObject:): Fix crash in logging.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20738 72102866-910b-0410-8b05-ffd578937521
2005-02-17 09:52:14 +00:00
David Ayers
cd0f130fc7 * EOAccess/EOEntity.m: Remove unnecessary include.
(-setClassProperties:, -setPrimaryKeyAttributes:)
        (-setAttributesUsedForLocking:): Remove unnecessary casts.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20737 72102866-910b-0410-8b05-ffd578937521
2005-02-17 09:41:09 +00:00
David Ayers
11fac539ea * EOAccess/EOAccessFault.m ([EOAccessFaultHandler-init])
([EOAccessFaultHandler-dealloc])
        ([EOAccessArrayFaultHandler-dealloc]): Use GSCurrentThread
        instead of objc_thread_id.
        (-completeInitializationOfObject): Correct comment.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20735 72102866-910b-0410-8b05-ffd578937521
2005-02-16 15:48:17 +00:00
David Ayers
901432dbe0 * EOAccess/EOAttribute.h/m (EOAdaptorUnknownType): Remove.
(protoOverride): Increase range.
        (isAttributeValueInitialized): New flag.
        (extraRefCount): Make standalone instance variable.
        (setValueClassName:): Use isAttributeValueInitialized flag
        instead of EOAdaptorUnknownType.
        (adaptorValueType): Use isAttributeValueInitialized flag
        instead of EOAdaptorUnknownType.
        * EOAdaptors/Postgres95/Postgres95Values.m
        (newValueForBytes:length:attribute:): Remove reference to
        EOAdaptorUnknownType.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20723 72102866-910b-0410-8b05-ffd578937521
2005-02-15 21:29:24 +00:00
David Ayers
75f86142d0 * EOAccess/EOModel.m (writeToFile:): Clairfy documentation
about setting receivers name and path.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20708 72102866-910b-0410-8b05-ffd578937521
2005-02-14 12:11:49 +00:00
Manuel Guesdon
8f9ee35c5c Optimizations :
2005-02-13  Manuel Guesdon  <mguesdon@orange-concept.com>
 * EOControl/EOClassDescription.m:
  o use IMPs
  o avoid NSString build in -addObject:toPropertyWithKey:
  o avoid NSString build in -removeObject:fromPropertyWithKey:
 * EOAccess/EODatabaseContext.m:
  o added and use EODatabaseContext_globalIDForObjectWithImpPtr
  o use IMPs
 * EOAccess/EOEntity.m:
  o use IMPs
 * EOAccess/EOAttribute.m:
  o use IMPs
  o optimized -validateValue
 * EOAccess/EODatabaseContextPriv.h:
  o added EODatabaseContext_globalIDForObjectWithImpPtr
 * EOControl/EOPriv.[hm]:
  o added more helpers
 * EOControl/EOEditingContext.m:
  o use IMPs
 * EOControl/EOGenericRecord.m:
  o use IMPs in descriptions
 * EOAdaptors/Postgres95Values.m:
  o use GDL2StringDefaultCStringEncoding() in
  +newValueForCharactersType:length:attribute:
 * EOAdaptors/Postgres95Channel.m:
  o IMP optimizations
 * EOAdaptors/Postgres95Adaptor.m:
  o IMP optimizations


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20700 72102866-910b-0410-8b05-ffd578937521
2005-02-13 13:04:19 +00:00
Manuel Guesdon
bd72217067 COmmit Part 2
* EOAccess/EOAdaptor.m:
  o optimization in 'for' loops
* EOAccess/EODatabase.m:
  o include <EOCOntrol/EOPriv.h>
  o replaced isNilOrEONull() by _isNilOrEONull()
* EOAccess/EODatabaseContext.h:
  o added _snapshotForGlobalIDIMP
* EOAccess/EODatabaseContext.m:
  o commented  NSEmitTODO in
  -objectsForSourceGlobalID:relationshipName:editingContext:
  o added beter exception format in
  qualifierForLockingAttributes:primaryKeyAttributes:entity:snapshot:
  o fix compiler warning in -relayPrimaryKey:object:entity:
  o logs
  o optimizations in -objectsWithFetchSpecification:editingContext:
  o replaced isNilOrEONull() by _isNilOrEONull()
  o replace [EOFault isFault:] by _isFault()
  o use _snapshotForGlobalIDIMP
  o IMP usage optimization
* EOAccess/EOAttribute.[hm]:
  o added EOAdaptorUnknownType
  o added _adaptorValueType and avoid recomputing it each time
  o added _valueTypeChar to avoid string comparaisons
  o use EOPriv classes declarations
  o Temporary reverted David changes in
  -adaptorValueByConvertingAttributeValue
* EOAccess/EOAttributePriv.h:
  o added _valueTypeChar to avoid string comparaisons
* EOAccess/EOEntityPriv.h:
  o moved -attributeForPath: and -relationshipForPath: to
  EOEntityGDL2Additions category
* EOAccess/EOEntity.h:
  o moved private -attributeForPath: and -relationshipForPath: to
  EOEntityGDL2Additions category
* EOAccess/EOEntity.m:
  o better exception in classProperties
  o fix compiler warning in -setClassProperties:,
  -setPrimaryKeyAttributes:,
	-setAttributesUsedForLocking:
	o moved -attributeForPath: and -relationshipForPath: to
	EOEntityGDL2Additions category
	o include <EOCOntrol/EOPriv.h>
	o replaced [EONull null] by GDL2EONull
* EOAccess/EOSQLExpression.m:
  o optimization in -tableListWithRootEntity:
  o optimization in -formatSQLString:format:
  o optimization in +sqlPatternFromShellPattern:
  o optimization in +sqlPatternFromShellPattern:withEscapeCharacter:
  o fix in -sqlStringForKeyValueQualifier:
  o added log in -sqlStringForKeyValueQualifier: for not handled
  readFormat
  o added log -addInsertListAttribute:value: for not handled
  writeFormat
  o added log -addUpdateListAttribute:value: for not handled
  writeFormat
  o changed  EOFLOGObjectFnStart to EOFLOGObjectFnStartCond
  o changed  EOFLOGObjectFnStop to EOFLOGObjectFnStopCond
  o include <EOCOntrol/EOPriv.h>
  o replaced [EONull null] by GDL2EONull
* EOAccess/EOSQLQualifier.m:
  o implemented EOKeyComparisonQualifier
  -schemaBasedQualifierWithRootEntity
* EOAccess/EOUtilities.m:
  o include <EOCOntrol/EOPriv.h>
  o replaced [EONull null] by GDL2EONull
* EOControl/EOPriv.[hm]:
  o added. Contains various classes/selectors/IMPs
* EOControl/EOClassDescription.m:
  o handle EONull case in -propagateDeleteForObject:editingContext:,
    -addObject:toPropertyWithKey:, -snapshot,
    -removeObject:fromPropertyWithKey:,
	_setObject:forBothSidesOfRelationshipWithKey:,
	addObject:toBothSidesOfRelationshipWithKey:,
		-removeObject:fromBothSidesOfRelationshipWithKey:
		o fix compiler warning in
		-dictionaryForInstanceProperties, -shallowCopy,
		-updateFromSnapshot:, -snapshot
		o include <EOCOntrol/EOPriv.h>
		o replaced [EONull null] by GDL2EONull
		o replaced isNilOrEONull() by _isNilOrEONull()
		o fix in -validateForSave
		o rewritten -validateValue:forKey: selector build
* EOControl/EOEditingContext.h:
  o added -hasUnprocessedChanges
* EOControl/EOEditingContext.m:
  o added -hasUnprocessedChanges
  o added NS_DURING,... to catch exceptions
  o replace [EOFault isFault:] by _isFault()
  o IMP usage optimization
* EOControl/EOKeyGlobalID.m:
  o replaced isNilOrEONull() by _isNilOrEONull()
  o include <EOCOntrol/EOPriv.h>
* EOControl/EOGenericRecord.m:
  o partially rewritten -description
  o include <EOCOntrol/EOPriv.h>
  o replaced isNilOrEONull() by _isNilOrEONull()
  o replace [EOFault isFault:] by _isFault()
  o changed variable name type of
  _infoForInstanceVariableNamed:retType:retSize:retOffset:
  o rewritten valueForKey:,... to use cString NSKeyValueCoding
* EOControl/EOKeyValueCoding.m:
  o changed NSAssert in NSArray -valueForKey:
  o optimization in NSDictionary -takeValue:forKeyPath:isSmart:
  o optimization in NSDictionary -takeStoredValue:forKeyPath:
  o include <EOCOntrol/EOPriv.h>
  o replaced [EONull null] by GDL2EONull
  o include <EOCOntrol/EOPriv.h>
* EOControl/EOKeyValueQualifier.m:
  o fixes for EONull/nil in -evaluateWithObject:
  o replaced [EONull null] by GDL2EONull
  o include <EOCOntrol/EOPriv.h>
* EOControl/EOSortOrdering.m:
  o include <EOCOntrol/EOPriv.h>
  o replaced [EONull null] by GDL2EONull
* EOAdaptors/Postgres95SQLExpression.m:
  o float formatting in +formatValue:forAttribute:
  o added -externalNameQuoteCharacter
  o added +sqlPatternFromShellPattern:
  o added +sqlPatternFromShellPattern:withEscapeCharacter:
  o replaced isNilOrEONull() by _isNilOrEONull()
* EOAdaptors/Postgres95Channel.m:
  o logs
* EOAdaptors/Postgres95Values.m:
  o logs
  o fix in +setPostgres95Format:
  o fix calendard format to handle timezone (%z)
  o optimizations
* EOControl/EOMutableKnownKeyDictionary.m
  o removed EOMKKDArrayMapping
  +dictionaryFromDictionary:subsetMapping:
  o include <EOCOntrol/EOPriv.h>
  o replaced isNilOrEONull() by _isNilOrEONull()
* EOControl/EONSAddOns.[hm]:
  o added NSString(ShellPattern)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20688 72102866-910b-0410-8b05-ffd578937521
2005-02-11 17:37:23 +00:00
David Ayers
6d1dc39232 * EOAccess/EOModel.m (-writeToFile:): Make sure all objects
are loaded before making backup.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20678 72102866-910b-0410-8b05-ffd578937521
2005-02-09 13:26:08 +00:00
David Ayers
8a224e3e37 * EOAccess/EOModel.m (-init): Initialize _storedProcedures.
(-storedProcedureNames): Simplify.
        (-storedProcedureNamed:): Reimplement.
        (-storedProcedures): Simplify.
        (-writeToFile:): Call _setPath: after preliminary testing.
        Write stored procedures.
        (-initWithTableOfContentsPropertyList:path:): Reimplement
        stored procedure handling.
        (-encodeTableOfContentsIntoPropertyList:): Handle stored
        procedures.
        (-encodeIntoPropertyList:): Fix encoding title for stored
        procedures.
        (-addStoredProcedure:, -removeStoredProcedure:) Make more
        thread safe.
        (-loadAllModelObjects): Implement.
        * EOAccess/EOStoredProcedure.m (-initWithPropertyList:): Call
        awakeWithPropertyList: to finish initialization.
        (-encodeIntoPropertyList:): Implement.
        (-description): Implement.
        (-_setIsEdited): Implement.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20676 72102866-910b-0410-8b05-ffd578937521
2005-02-09 11:39:42 +00:00
Matt Rice
8eff5c7764 * EOControl/EOObjectStore.m: Assign correct key names for EOUpdatedKey,
EOInsertedKey, EODeletedKey, EOInvalidatedKey.
        * EOAccess/EODatabaseContext.m (-_objectsChanged:, -commitChanges): Use
        EOUpdatedKey, EOInsertedKey, EODeletedKey, EOInvalidatedKey, instead
        of hard coded keys.
        * EOControl/EOEditingContext.m (-didSaveChanges, pendingInfo): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20674 72102866-910b-0410-8b05-ffd578937521
2005-02-08 14:02:32 +00:00
David Ayers
af3705ad45 * EOAccess/EODatabaseDataSource.m (-insertObject): Do not
insert object into the editing context.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20654 72102866-910b-0410-8b05-ffd578937521
2005-02-03 17:18:34 +00:00
David Ayers
ff4b08e06d * EOAccess/EODatabaseContext.h/m:(_numLocked): Removed.
(_lockedObjects): Use hash table instead of plain memory.
        (-_registerDatabaseContext:) Only attempt to retrieve entities
        with valid names.
        (-dealloc): Update _lockedObjects usage.
        (-lockObjectWithGlobalID:editingContext:): Inialize local variable.
        Fire fault if necessary to obtain snapshot and raise upon
        failure.
        (-registerLockedObjectWithGlobalID:): Use new hash table.
        (-isObjectLockedWithGlobalID:): Ditto.
        (-_cleanUpAfterSave): Ditto.
        (-invalidateAllObjects): Call -invalidateResultCache and make
        more gdb friendly.
        (-invalidateObjectsWithGlobalIDs:): Call
        forgetSnapshotsForGlobalIDs: on self instead of the _database.
        (-commitChanges): Execute the commit if a transaction is open
        to insure held locks are freed server side.
        (-snapshotForGlobalID): Move implementation to ...
        (-snapshotForGlobalID:after:): ... here and call this version
        in the _database.
        (-forgetSnapshotsForGlobalIDs:): Implement.
        (-forgetAllLocks): Ditto.
        (-forgetLocksForObjectsWithGlobalIDs:) Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20653 72102866-910b-0410-8b05-ffd578937521
2005-02-03 17:13:16 +00:00
Matt Rice
ffb09fb47b * EOAccess/EOEntity.m (-setName:): Validate the new name and remove
the checks from here.
  (-validateName): Don't check if an attribute or a relationship with
the name exist.  Check if an entity of the same name exists.
Return an exception with a valid reason in all cases.
* EOAccess/EOAttribute.m (validateName): Return an exception with a
valid reason in all cases.  Don't check if a relationship with the
name exists.
* EOAccess/EOAttribute.m (validateName): Return an exception with a
valid reason in all cases.  Don't check if a attribute with the
 name exists.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20652 72102866-910b-0410-8b05-ffd578937521
2005-02-03 13:09:50 +00:00
David Ayers
7ce3d33814 * EOAccess/EODatabase.h/m:(EODistantPastTimeInterval): Added
global variable.
        (snapshotForGlobalID:after:): Implemented.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20642 72102866-910b-0410-8b05-ffd578937521
2005-02-01 17:23:05 +00:00
David Ayers
06b7c0bf3c * EOAccess/EOUtilities.m (NSObjectNotAvailableException):
Reactivate correct exception name.  Correct a few whitespace
        issues.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20618 72102866-910b-0410-8b05-ffd578937521
2005-01-26 14:11:31 +00:00
David Ayers
b3e33138f3 * EOAccess/EOEntity.m (-initWithPropertyList:owner:): Correct
test for file existance and reformat.
        * EOControl/EOFetchSpecification.h/m
        (-fetchSpecificationByApplyingBindings:) Remove obsolete
        method.
        (-fetchSpecificationWithQualifierBindings:) Implement.
        * EOControl/EOQualifier.m (initWithKeyValueUnarchiver:):
        Implement.
        (-encodeWithKeyValueArchiver:): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20617 72102866-910b-0410-8b05-ffd578937521
2005-01-26 13:38:47 +00:00
David Ayers
2f6232368a * EOAccess/EOModelGroup.m ([+globalModelGroup]): Search for
.eomodel files as well and call -addModelWithFile: with full
        path.
        * EOAccess/EOModel.m ([-initWithContentsOfFile:]): Add assert
        if file could not be read.

        * EOControl/EOKeyGlobalID.m ([-hash]): Improve quality of hash
        values.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20294 72102866-910b-0410-8b05-ffd578937521
2004-11-04 11:08:10 +00:00
David Ayers
aad84f842f * EOAccess/EOAdaptorContext.h: Only use ASCII characters.
* EOAccess/EOSQLQualifier.m: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20285 72102866-910b-0410-8b05-ffd578937521
2004-11-03 12:03:14 +00:00
David Ayers
e9534fd2dc * GDL2.gsdoc: New file for documentation project.
* GNUmakefile: Build documentation project.
        * EOAccess/gdl2.gsdoc: Rename to ...
        * EOAccess/EOAccess.gsdoc: ... new name.
        * EOControl/gdl2control.gsdoc: Rename to ...
        * EOControl/EOControl.gsdoc: ... new name.
        * EOAccess/GNUmakefile: Update documentation project name.
        * EOControl/GNUmakefile: Ditto.
        * README: Remove reference to potentially obsolete name.

        * Tools/eomodeltemplate.gsdoc: Update encoding, DTD reference
	and minor reformatting.
        * Tools/gdl2gsdoc.gsdoc: Update DTD reference and add myself
	as coauthor.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20280 72102866-910b-0410-8b05-ffd578937521
2004-11-02 16:17:32 +00:00
David Ayers
d590199f26 * EOAccess/EODatabaseContext.h/m:
(EOStoredProcedureNameHintKey, EOCustomQueryExpressionHintKey):
        Define missing keys.
        * EOControl/EODeprecated.h: (EOPrefetchingRelationshipHintKey)
        (EOFetchLimitHintKey, EOPromptAfterFetchLimitHintKey): Ditto.
        * EOControl/EOFetchSpecification.m:
        (EOPrefetchingRelationshipHintKey, EOFetchLimitHintKey)
        (EOPromptAfterFetchLimitHintKey): Ditto.  Use globally defined
        keys instead of local strings.
        * EOAccess/EODatabaseChannel.m
        (_selectWithFetchSpecification:editingContext:) Use globally
        defined keys instead of local strings.

        * EOControl/EOQualifier.m (+[stringForOperatorSelector:]):
        Return selector name instead of nil if not given a standard
        EOQualifierOperator selector.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20279 72102866-910b-0410-8b05-ffd578937521
2004-11-02 10:43:58 +00:00
David Ayers
9517b6b6fd Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20205 72102866-910b-0410-8b05-ffd578937521
2004-10-07 14:13:05 +00:00
David Ayers
f4fd4ec9a6 * EOAccess/EOAttribute.m (encodeIntoPropertyList:): Encode
numeric values as stings for WO45 EOModel format compatibility.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20202 72102866-910b-0410-8b05-ffd578937521
2004-10-06 22:45:21 +00:00
David Ayers
432a2d5ce4 * EOAccess/EOEntity.m ([EOEntityClassDescription
awakeObject:fromInsertionInEditingContext:]): Only process
        class properties.  Remove inactive code.  Document.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20166 72102866-910b-0410-8b05-ffd578937521
2004-09-28 11:09:18 +00:00
David Ayers
ffb14dffe8 * EOAccess/EOEntity.m (-[setName:]): Skip the uniqueing if the
name is the same.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20152 72102866-910b-0410-8b05-ffd578937521
2004-09-26 21:30:02 +00:00
David Ayers
1b24b40493 * EOAccess/EOEntity.m (-[setName:],-[setExternalName:])
(-[setExternalQuery:],-[setClassName:],-[setDocComment]): Use
        ASSIGNCOPY instead of ASSIGN to deal with mutable strings.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20121 72102866-910b-0410-8b05-ffd578937521
2004-09-24 10:02:05 +00:00
David Ayers
4590ef7618 * EOAccess/EOAttribute.m (-[copyWithZone:]): Override
implementation of GCObject as it isn't safe to copy
        EOAttributes.
        * EOAccess/EOEntity.m (-[addAttribute:]); Use NSAsserts to check
        integrity of parameters.  Insure that attribute is not used by
        other entity or stored procedure.
        (-[_setModel:]): Rename from -setModel:.  Assert that entity
        is not used by another model.
        * EOAccess/EOEntityPriv.h (-[_setModel:]): Rename from
        -setModel:.
        * EOAccess/EOModel.m (-[_addEntity:]): Use -_setModel: instead
        of -setModel:.
        (-[removeEntity:]): Ditto.
        (-[addEntity:)): Use NSAssert to insure that entity name is
        unique and that the entity is not being used by other mode.  Use
        -_setModel: instead of -setModel:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20032 72102866-910b-0410-8b05-ffd578937521
2004-09-08 13:05:25 +00:00
David Ayers
fd7890a4cf * EOAccess/EOModel.m: Include EOKeyValueCoding.h.
(-[_addEntity:]): Set model via public API.
	* EOAccess/EOEntityPriv.h (-[_setModel:]): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20027 72102866-910b-0410-8b05-ffd578937521
2004-09-07 17:20:29 +00:00
David Ayers
d1f12d438c * EOAccess/EORelationship.m
(-[setDefinition:]): Allow definition to unset.
        (-[setEntity:]): Mark both old and new entity as edited.

        * EOAccess/EOStoredProcedure.m
        (-[initWithPropertyList:]): Make return type explicit.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20024 72102866-910b-0410-8b05-ffd578937521
2004-09-07 16:21:07 +00:00
David Ayers
87b002d68d * EOAccess/EOModel.m (-[_updateCache]): New method.
* EOAccess/EOEntity.m
        (-[EOModel _updateCache]): Declare private EOModel method.
        (-[setName:]): Insure model updates its cache.
        (-[setModel]): Set instance variable directly without
        retaining it.
        (-[_setModel]): Remove.
        (-[gcDecrementRefCountOfContainedObjects]): Do not decrement
        backward reference to owning model.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20023 72102866-910b-0410-8b05-ffd578937521
2004-09-07 16:14:23 +00:00
David Ayers
329eccc59c * EOAccess/EOAttribute.h
* EOAccess/EOAttribute.m (_parent, -[setParent:]): Do not
        retain backward reference.
        (-[setName:): Mark as editited if parent is an entity.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20022 72102866-910b-0410-8b05-ffd578937521
2004-09-07 15:57:21 +00:00
David Ayers
dae87e4bec * EOAccess/EOAccessFault.m: Include privat headers locally.
* EOAccess/EOAdaptor.m: Ditto.
	* EOAccess/EOAdaptorChannel.m: Ditto.
	* EOAccess/EOAdaptorContext.m: Ditto.
	* EOAccess/EOAttribute.m: Ditto.
	* EOAccess/EODatabaseChannel.m: Ditto.
	* EOAccess/EODatabaseContext.m: Ditto.
	* EOAccess/EODatabaseOperation.m: Ditto.
	* EOAccess/EOModel.m: Ditto.
	* EOAccess/EORelationship.m: Ditto.
	* EOAccess/EOSQLExpression.m: Ditto.
	* EOAccess/EOSQLQualifier.m: Ditto.

	* EOAccess/EOEntity.h: Remove declarations of privat methods.
	Reorder declaraions.
	(+[entity], +[entityWithPropertyList:owner:]): Deprecate.
	(-[sharedObjectFetchSpecificationNames]): New method.
	(-[setSharedObjectFetchSpecificationsByName:]: Ditto.
	(-[addSharedObjectFetchSpecificationByName:]: Ditto.
	(-[removeSharedObjectFetchSpecificationByName:]: Ditto.
	* EOAccess/EOEntityPriv.h: Add declarations of privat methods.
	Reorder declarations.
	* EOAccess/EOEntity.m: Reorder implementations according to
	headers.  Include privat headers locally.
	(+[entity], +[entityWithPropertyList:owner:]): Deprecate.
	(-[sharedObjectFetchSpecificationNames]): New method.
	(-[setSharedObjectFetchSpecificationsByName:]: Ditto.
	(-[addSharedObjectFetchSpecificationByName:]: Ditto.
	(-[removeSharedObjectFetchSpecificationByName:]: Ditto.

	* EOAccess/EOEntity.m: Adapt usage of deprecated -[entity...]
	and privat methods.
	* EOAccess/EOModel.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95SQLExpression.m: Ditto.

	* TODO: Add comment.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19772 72102866-910b-0410-8b05-ffd578937521
2004-07-23 18:33:29 +00:00
David Ayers
d664f86ff8 * EOAccess/EODatabaseContext.m: Replace EOFLOGObjectLevel and
EOFLOGObjectLevelArgs with NSDebugMLLog.  Remove some
	superfluos
	NSLogs and replace others woth NSDebugMLLogs.  Reformat.
	* EOAccess/EOEntity.m ([EOEntity primaryKeyForGlobalID:]):
	Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19343 72102866-910b-0410-8b05-ffd578937521
2004-05-15 23:58:06 +00:00
David Ayers
c06964b2af * EOAccess/EOAttribute.m: Insert missing breaks.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19340 72102866-910b-0410-8b05-ffd578937521
2004-05-15 17:57:54 +00:00
David Ayers
145fb1dfac * EOAccess/EOAttribute.m
([EOAttribute initialize]): Implement class caching.
	([EOAttribute *]): Use cached classes.
	([EOAttribute adaptorValueByConvertingAttributeValue:]):
	Only convert attributes when necessary.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19336 72102866-910b-0410-8b05-ffd578937521
2004-05-15 12:52:48 +00:00
David Ayers
d50838d4a0 * EOAccess/EOModel.m ([EOModel entityNamed:]): Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19286 72102866-910b-0410-8b05-ffd578937521
2004-05-12 09:18:21 +00:00
David Ayers
4e4535b912 * EOAccess/EOAdaptor.m ([EOAdaptor availableAdaptorNames]):
Return unique names if multiple Adaptors are found.  Document.
        Reported by Matt Rice <ratmice@yahoo.com>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19173 72102866-910b-0410-8b05-ffd578937521
2004-04-23 10:28:16 +00:00
Mirko Viviani
4a11c997f2 rewrite
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19147 72102866-910b-0410-8b05-ffd578937521
2004-04-18 20:07:50 +00:00
David Ayers
ab13b0f5a9 * EOAccess/EODatabase.m ([EODatabase dealloc]): Use DESTROY
in favor of release.
	* EOAccess/EOExpressionArray.m ([EOExpressionArray dealloc]):
	Ditto.
	* EOAdaptors/Postgres95/Postgres95Adaptor.m
	([Postgres95Adaptor dealloc]): Ditto.

	* EOControl/EOCheapArray.h ([EOCheapArray dealloc]) Remove
	declaration.
	* EOControl/EOKeyValueArchiver.m
	([EOKeyValueArchivingContainer dealloc]): Ditto.
	* EOControl/EOMutableKnownKeyDictionary.h
	([EOMKKDInitializer dealloc]),
	([EOMKKDKeyEnumerator dealloc]),
	([EOMKKDSubsetMapping dealloc]),
	([EOMKKDArrayMapping dealloc]),
	([EOMutableKnownKeyDictionary dealloc]) Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19137 72102866-910b-0410-8b05-ffd578937521
2004-04-17 12:41:32 +00:00
David Ayers
6ae713bf89 * */*.h: Format declarations consistently. Add -*-objc-*
shabang line.  Replace remaining extern declarations with
	GDL2*_EXPORT.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19134 72102866-910b-0410-8b05-ffd578937521
2004-04-17 11:30:47 +00:00
David Ayers
6d8f87b9a5 * EOAccess/EOModel.m ([EOModel writeToFile:]) Set path (and
name implicitly) of the receiver.  Create backup file when
        necessary after removing the potentially existing backup file.
        Raise NSInvalidArgumentExceptions upon failures.  Add support
        for .eomodel files.  Document.
        ([EOModel _verifyBuiltEntityObject:named:]): Add support for
        .eomodel files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19129 72102866-910b-0410-8b05-ffd578937521
2004-04-16 13:10:43 +00:00
David Ayers
f2aa536535 * TODO: Start tracking major TODO's until formal auditing is
available.

        * EOAccess/EODatabase.m
        * EOControl/EOGlobalID.h: Added documentation about
        EOGlobalIDChangedNotification semantics.

        * EOControl/EOSortOrdering.m: Removed superfluous define.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19110 72102866-910b-0410-8b05-ffd578937521
2004-04-15 10:33:35 +00:00
David Ayers
fa497e1524 * EOAccess/EOModelGroup.m ([EOModelGroup globalModelGroup]):
Create single global model group and cache it to allow
	persistant manual adding of models.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18961 72102866-910b-0410-8b05-ffd578937521
2004-03-29 19:00:45 +00:00
David Ayers
a601888682 * *.[hm] Use GNUSTEP in favor of NeXT_Foundation_LIBRARY
as requested by Marcus Mueller <znek@mulle-kybernetik.com>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18856 72102866-910b-0410-8b05-ffd578937521
2004-03-19 16:41:21 +00:00
David Ayers
bad9d9d571 * EOAccess/EOAdaptor.m
([EOAdaptor dropDatabaseWithAdministrativeConnectionDictionary:
	administrativeConnectionDictionary:]): Correct documentation.
	([EOAdaptor administrativeConnectionDictionaryForAdaptor:]):
	Documented.

	* EOAdaptors/Postgres95/GNUmakefile.in: Added LoginPanel subproject.
	* EOAdaptors/Postgres95/Postgres95Adaptor.m
	([Postgres95Adaptor assertConnectionDictionaryIsValid]): Added
	test to insure channel is open befor attempting to close.
	([Postgres95Adaptor createPGconn]): Added exception to raise.
	* EOAdaptors/Postgres95/Postgres95Channel.m
	([Postgres95/Postgres95Channel describeDatabaseNames]): Implemented
	new method.
	([Postgres95 userNameIsAdministrative]): Ditto.

	* EOAdaptors/Postgres95/LoginPanel/GNUmakefile: New file.
	* EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.h/m: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18782 72102866-910b-0410-8b05-ffd578937521
2004-03-06 11:12:49 +00:00
David Ayers
61eadbd04a * EOControl/EODebug.h: Include missing header for non-*-gnu-*.
* EOAccess/EOAdaptor
        ([EOAdaptor _performAdministativeStatementsForSelect:
        connectionDictionary:administrativeConnectionDictionary]):
        Add cast to silence warning.
        * EOControl/EOCheapArray.m ([EOCheapArray autorelease]):
        Replace objc_thread_id with GSCurrentThread.
        ([EOCheapArray release]): Ditto.
        ([EOCheapArray retainCount]): Ditto.
        ([EOCheapArray retain]): Ditto.
        ([EOCheapArray dealloc]): Ditto.
        ([EOCheapArray shallowCopy]): Ditto.
        * EOControl/EOFault.m: Include missing header.
        ([EOFault dealloc]): Replace objc_thread_id with GSCurrentThread.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18676 72102866-910b-0410-8b05-ffd578937521
2004-02-26 14:18:04 +00:00
David Ayers
e721e1b781 * EOAccess/EOSQLExpression.m
([EOSQLExpression foreignKeyConstraintStatementsForRelationship:]):
        Create constraint even though no inversRelationship exists.
        ([EOSQLExpression foreignKeyConstraintStatementsForEntityGroup:]):
        Create constraints for all entities in the group which have no
        parent entity.
        ([EOSQLExpression foreignKeyConstraintStatementsForEntityGroups:]):
        Reformat for source level debuging.
        ([EOSQLExpression tableListWithRootEntity:]): Honor
        EOAdaptorQuotesExternalNames.
        ([EOSQLExpression createTableStatementsForEntityGroup:]): Ditto.
        ([EOSQLExpression dropTableStatementsForEntityGroup:]): Ditto.
        ([EOSQLExpression primaryKeyConstraintStatementsForEntityGroup:]):
        Ditto.
        ([EOSQLExpression primaryKeySupportStatementsForEntityGroup]):
        Ditto.
        ([EOSQLExpression dropPrimaryKeySupportStatementsForEntityGroup:]):
        Ditto.
        ([EOSQLExpression prepareConstraintStatementForRelationship:
        sourceColumns:destinationColumns:]): Ditto.
        * EOAdaptors/Postgres95/Postgres95SQLExpression.h/m
        ([Postgres95SQLExpression externalNameQuoteCharacter]): Remove.
        ([Postgres95SQLExpression
        createDatabaseStatementsForConnectionDictionary:
        administrativeConnectionDictionary]): Honor
        EOAdaptorQuotesExternalNames.
        ([Postgres95SQLExpression
        dropDatabaseStatementsForConnectionDictionary:
        administrativeConnectionDictionary:]): Ditto.
        ([Postgres95SQLExpression dropTableStatementsForEntityGroup:]):
        Ditto.
        ([Postgres95SQLExpression tableListWithRootEntity:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18661 72102866-910b-0410-8b05-ffd578937521
2004-02-25 12:52:59 +00:00
David Ayers
278882edb5 EOAccess/EOModel.m ([EOModel beautifyNames]): Remove log and
reformat comments.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18657 72102866-910b-0410-8b05-ffd578937521
2004-02-25 12:01:09 +00:00
David Ayers
6ff09530e4 * EOAccess/EOAdaptor.m ([EOAdaptor sharedInstancePanel]):
Only register panel if it was actually created.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18640 72102866-910b-0410-8b05-ffd578937521
2004-02-23 21:33:00 +00:00
David Ayers
281ebea9b2 * EOAccess/EOAdaptor.m ([EOAdaptor sharedLoginPanelInstance]):
Maintain instances on a per class basis as reported by Matt Rice.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18639 72102866-910b-0410-8b05-ffd578937521
2004-02-23 19:57:14 +00:00
David Ayers
6154adebfd * EOAccess/EOAdaptor.h/m: New globals for GDL2 specific
administrative key handling.
	([EOAdaptor sharedLoginPanelInstance]): Implemented.
	* EOAccess/EOSQLExpression.m ([EOSQLExpression
	_administrativeDatabaseStatementsForSelector:forEntityGroup:],
	[EOSQLExpression _dropDatabaseStatementsForEntityGroups:],
	[EOSQLExpression _createDatabaseStatementsForEntityGroups:]):
	Implemented new private support methods.
	([EOSQLExpression schemaCreationStatementsForEntities:options:]):
	Added support for EODropDatabaseKey and EOCreateDatabaseKey.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18638 72102866-910b-0410-8b05-ffd578937521
2004-02-22 17:05:48 +00:00
David Ayers
b25a3800a1 * EOControl/Makefile.postamble: Remove obsolete dependency and
target.  Add dependancy and targets for target specific
        config.h file.
        * EOAccess/Makefile.preamble: Add include option for target
        specific config.h file.
        * EOAdaptors/Postgres95/Makefile.preamble.in: Ditto.
        * EOModeler/Makefile.preamble: Ditto.
        * Tools/Makefile.preamble: Ditto.
        * EOAccess/Makefile.postamble: Comment empty target.

        * EOControl/EODebug.m (EOFLogC_): Log thread in a portable
        fashion.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18628 72102866-910b-0410-8b05-ffd578937521
2004-02-19 13:45:07 +00:00
David Ayers
9bf2d34c65 * EOAccess/EOAdaptor.h
([EOLoginPanel administrativeConnectionDictionaryForAdaptor]):
        Correct spelling.
        ([EOLoginPanel runPanelForAdaptor:validate:]): Move to
        EODeprecated.h.
        ([EOLoginPanel runPanelForAdaptor:validate:allowsCreation:]):
        Declared.
        * EOAccess/EOAdaptor.m:
        ([EOAdaptor adaptorWithModel:]): Reformat.
        ([EOAdaptor adaptorWithName:]): Do not append EOAdaptor
        redundantly.
        ([EOAdaptor _performAdministativeStatementsForSelector:
        connectionDictionary:administrativeConnectionDictionary:]):
        Implemented.
        ([EOAdaptor
        createDatabaseWithAdministrativeConnectionDictionary:]):
        Documented and implemented.
        ([EOAdaptor
        dropDatabaseWithAdministrativeConnectionDictionary]):
        Ditto.
        ([EOAdaptor runLoginPanelAndValidateConnectionDictionary]):
        Ditto.
        ([EOAdaptor runLoginPanel]): Ditto.
        ([EOAdaptor assignExternalInfoForAttribute:]): Ditto.
        ([EOAdaptor assignExternalInfoForEntity]): Ditto.
        ([EOAdaptor assignExternalInfoForEntireModel:]): Ditto.
        ([EOAdaptor internalTypeForExternalType:model:]): Documented.
        ([EOAdaptor externalTypesWithModel]): Ditto.
        ([EOAdaptor assignExternalTypeForAttribute]): Ditto.
        ([EOLoginPanel runPanelForAdaptor:validate:allowsCreation:]):
        Implemented.
        ([EOLoginPanel runPanelForAdaptor:validate:]): Deprecated.
        * EOAccess/EODeprecated.h
        ([EOLoginPanel runPanelForAdaptor:validate:]): Deprecated.
        * EOAdaptors/Postgres95/Postgres95Adaptor.m
        ([Postgres95Adaptor
        createDatabaseWithAdministrativeConnectionDictionary:]):
        Removed.
        ([Postgres95Adaptor
        dropDatabaseWithAdministrativeConnectionDictionary:]): Ditto.
        * EOAdaptors/Postgres95/Postgres95SQLExpression.m
        ([Postgres95SQLExpression
        createDatabaseStatementsForConnectionDictionary:
        administrativeConnectionDictionary:]): Implemented.
        ([Postgres95SQLExpression
        dropDatabaseStatementsForConnectionDictionary:
        administrativeConnectionDictionary:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18589 72102866-910b-0410-8b05-ffd578937521
2004-02-12 17:09:37 +00:00
David Ayers
ea5a66f93c * EOAccess/EOAdaptor.m ([EOAdaptor adaptorWithName:]): Use
NSSearchPathForDirectoriesInDomains() instead of GNUstep
	specific environment variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18518 72102866-910b-0410-8b05-ffd578937521
2004-02-01 11:23:44 +00:00
David Ayers
b2d0d8c7f5 * EOAccess/EOAccessFault.m: Add #includes for non *-gnu-*.
* EOAccess/EOAdaptorOperation.m: Ditto.
	* EOAccess/EOAttribute.m: Ditto.
	* EOAccess/EODatabaseDataSource.m: Ditto.
	* EOAccess/EODatabaseOperation.m: Ditto.
	* EOAccess/EOEntity.m: Ditto.
	* EOAccess/EOExpressionArray.m: Ditto.
	* EOAccess/EOJoin.m: Ditto.
	* EOAccess/EORelationship.m: Ditto.
	* EOAccess/EOSQLExpression.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95Adaptor.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95Channel.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95Context.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95SQLExpression.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95Values.m: Ditto.
	* EOControl/EOCheapArray.m: Ditto.
	* EOControl/EODetailDataSource.m: Ditto.
	* EOControl/EOGenericRecord.m: Ditto.
	* EOControl/EOKeyComparisonQualifier.m: Ditto.
	* EOControl/EOKeyGlobalID.m: Ditto.
	* EOControl/EOKeyValueQualifier.m: Ditto.
	* EOControl/EOMutableKnownKeyDictionary.m: Ditto.
	* EOControl/EONSAddOns.m: Ditto.

	* Tools/EOModel+GSDoc.m: Remove usage of -version.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18513 72102866-910b-0410-8b05-ffd578937521
2004-01-31 13:57:38 +00:00
David Ayers
f62dee1f23 * GNUmakefile: Build EOControl before EOAccess.
* EOAccess/GNUmakefile: Remove LIBRARIES_DEPEND_UPON handling.
        * EOControl/GNUmakefile: Ditto.
        * EOModeler/GNUmakefile: Ditto.
        * Tools/GNUmakefile: Ditto.
        * EOAccess/Makefile.preamble: Correct LIBRARIES_DEPEND_UPON
        handling.
        * EOControl/Makefile.preamble: Ditto.
        * EOModeler/Makefile.preamble: Ditto.
        * Tools/Makefile.preamble: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18509 72102866-910b-0410-8b05-ffd578937521
2004-01-30 14:02:24 +00:00
David Ayers
dbab457576 * EOAccess/GNUmakefile: Fix whitespace.
* Tools/GNUmakefile: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18501 72102866-910b-0410-8b05-ffd578937521
2004-01-29 13:37:33 +00:00
David Ayers
53d93cb550 * EOAccess/EOAdaptor.m: Include GNUstep-specific headers for
non-GNUstep systems.
        * EOAccess/EOAdaptorChannel.m: Ditto.
        * EOAccess/EOAdaptorContext.m: Ditto.
        * EOAccess/EOAttribute.m: Ditto.
        * EOAccess/EODatabaseChannel.m: Ditto.
        * EOAccess/EODatabaseDataSource.m: Ditto.
        * EOAccess/EOEntity.m: Ditto.
        * EOAccess/EOModel.m: Ditto.
        * EOAccess/EOModelGroup.m: Ditto.
        * EOAccess/EORelationship.m: Ditto.
        * EOAccess/EOSQLQualifier.m: Ditto.
        * EOAccess/EOUtilities.m: Ditto.
        * EOControl/EOAndQualifier.m: Ditto.
        * EOControl/EOClassDescription.m: Ditto.
        * EOControl/EODataSource.m: Ditto.
        * EOControl/EOEditingContext.m: Ditto.
        * EOControl/EOFault.m: Ditto.
        * EOControl/EOFaultHandler.m: Ditto.
        * EOControl/EOFetchSpecification.m: Ditto.
        * EOControl/EOKeyValueArchiver.m: Ditto.
        * EOControl/EOKeyValueQualifier.m: Ditto.
        * EOControl/EOMutableKnownKeyDictionary.m: Ditto.
        * EOControl/EONSAddOns.m: Ditto.
        * EOControl/EOObjectStore.m: Ditto.
        * EOControl/EOObjectStoreCoordinator.m: Ditto.
        * EOControl/EOObserver.m: Ditto.
        * EOControl/EOOrQualifier.m: Ditto.
        * EOControl/EOQualifier.m: Ditto.
        * EOControl/EOUndoManager.m: Ditto.
        * EOModeler/EOModelExtensions.m: Ditto.

        * EOAccess/EOModel.h/m (+/-[EOModel version]) Remove.
        ([EOModel init]): Handle version internally.
        ([EOModel encodeTableOfContentsIntoPropertyList:]): Ditto.
        ([EOModel encodeIntoPropertyList:]): Ditto.
        * EOAccess/EODatabaseContext.m ([EODatabaseContext dealloc]):
        Use NSCountHashTable instead of NSCountMapTable on hash table.
        * EOAccess/EOAttribute.m ([EOAttribute
        newValueForBytes:length:]):
        Added casts to avoid warnings.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18500 72102866-910b-0410-8b05-ffd578937521
2004-01-29 13:23:22 +00:00
David Ayers
bf26078ed5 * EOAccess/GNUmakefile: Test FOUNDATION_LIB to determine
whether
        to link -base or -baseadd.
        * EOControl/GNUmakefile: Ditto.
        * EOModeler/GNUmakefile: Ditto.
        * Tools/GNUmakefile: Ditto.  Update title.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18499 72102866-910b-0410-8b05-ffd578937521
2004-01-29 09:26:40 +00:00
David Ayers
ce6dc1bf92 * EOAccess/EOSQLQualifier.m
o fix in  EOOrQualifier -sqlStringForSQLExpression:
	    use sqlExpression -sqlStringForDisjoinedQualifiers:
	    (problem was missing () around expression)
	* EOControl/EOAndQualifier.m:
	  o implemented -_addBindingsToDictionary:
	  o implemented -qualifierWithBindings:requiresAllVariables:
	  o implemented -validateKeysWithRootClassDescription:
	* EOControl/EOKeyValueQualifier.m:
	  o implemented -validateKeysWithRootClassDescription:
	  o implemented -initWithKeyValueUnarchiver:
	  o removed duplicate -initWithKeyValueUnarchiver: and
	    -encodeWithKeyValueArchiver
	  o implemented -_addBindingsToDictionary:
	  o implemented -qualifierWithBindings:requiresAllVariables:
	* EOControl/EOOrQualifier.m:
	  o implemented -_addBindingsToDictionary:
	  o implemented -qualifierWithBindings:requiresAllVariables:
	  o implemented -validateKeysWithRootClassDescription:
	* EOControl/EONotQualifier.m:
	  o implemented -_addBindingsToDictionary:
	  o implemented -validateKeysWithRootClassDescription:
	  o implemented -qualifierWithBindings:requiresAllVariables:
	* EOControl/EOQualifier.m:
	  o implemented _validateKey:withRootClassDescription:
	  o implemented -validateKeysWithRootClassDescription:
	  o implemented -bindingKeys
	  o implemented -keyPathForBindingKey:
	  o added EOQualifierVariableSubstitutionException;


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18226 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:56:06 +00:00
David Ayers
565696cba9 * EOAccess/EOSQLExpression.m/.h:
o renamed _useAliases to _flags.useAliases
	  o added _flags.hasOuterJoin
	  o call qualifier -sqlStringForSQLExpression:
	    instead of switching on qualifier class
	    in -sqlStringForArrayOfQualifiers:operation:
	  o asserts
	  o fill _contextStack
	  o added outer joins checks in -_flattenRelPath:entity:
	    (Used in Postgresql)
	* EOAdaptors/Postgres95/Postgres95SQLExpression.m:
	  o subclass joinExpression to avoid building join
	    expression (it's now build in -tableListWithRootEntity
	  o sublass -tableListWithRootEntity to add joins in it.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18225 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:50:52 +00:00
David Ayers
5f1314ddfc * EOAccess/EOEntity.m/.h:
o added _instanceDictionaryInitializer.
	    Permit to have a restricted dictionary initializer
	    (i.e. propertyDictionaryInitializer minus instance
	     object ivars).
	  o added NSObject
	    +_instanceDictionaryInitializerExcludedPropertyNames
	  o more information in log/exception in _parseRelationshipPath
	  o added -_instanceDictionaryInitializer
	  o added - _dictionaryForInstanceProperties
	  o added -_classForInstances
	* EOAccess/EOModel.m:
	  o added asserts
	  o clean warnings
	* EOAccess/EORelationship.m:
	  o asserts
	  o fix in -isReciprocalToRelationship:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18224 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:47:32 +00:00
David Ayers
ff38b6fc00 * EOAccess/EODatabaseContext.m:
o in -prepareForSaveWithCoordinator:editingContext:
	    Try harder to find primary key (for linked objects
	    with more than one attribute for PK)
	* EOAccess/EODatabaseContextPriv.h
	  o added -_primaryKeyForObject:raiseException:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18223 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:41:42 +00:00
David Ayers
1035b7a2ed * EOAccess/EOAttribute.m:
o introducing new number types:
	  ('u' for long long / int8 and 'U' for unsigned long long)
	* EOAdaptors/Postgres95/Postgres95Adaptor.m:
	  o added int8, bigint
	* EOAdaptors/Postgres95/Postgres95Channel.m:
	  o handling bigint
	  o fixed types for int2 and int8
	* EOAdaptors/Postgres95/Postgres95Values.m:
	  o added missing number types
	  o introducing new number types:
	  ('u' for long long / int8 and 'U' for unsigned long long)
	* EOControl/EONSAddOns.h/m
	  o added number accessors for NSString
	  o added NSObject
	  -performSelector:withObject:withObject:withObject:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18221 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:30:57 +00:00
David Ayers
6b82f558c1 * EOControl/EOFetchSpecification.m
(-[EOFetchSpecification fetchSpecificationNamed:entityNamed:]}:
	Implemented upon bug report by Philip Moetteli.
	* EOAccess/EOAttributePriv.h (-[EOAttribute _valueClass]):
	Declare new private method.
	* EOAccess/EOAttribute.m: Remove declaration of unsused static
	variable.  Format documentation.
	(-[EOAttribute serverTimeZone]): Remove duplicate
	implementation which is always overriden by the category
	and correct the category implementation.
	(-[EOAttribute valueClassName]): Minor optimisation.
	(-[EOAttribute externalType]): Ditto.
	(-[EOAttribute valueType]): Ditto.
	(-[EOAttribute newValueForBytes:length:]): Use -_valueClass
	method to insure correct valueClass usage.  Bug reported
	by Philip Moetteli.
	(-[EOAttribute newValueForBytes:length:encoding:]): Ditto.
	(-[EOAttribute adaptorValueType]): Ditto.
	(-[EOAttribute validateValue:]): Ditto.  Use -width method to
	insure correct usage of width with respect to prototypes.
	(-[EOAttribute _valueClass]): New private method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17960 72102866-910b-0410-8b05-ffd578937521
2003-10-23 15:06:51 +00:00
David Ayers
0135ad09da * *.h/m: Updated to new header layout.
* Tools/eoutil.m:  Added missing include.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17539 72102866-910b-0410-8b05-ffd578937521
2003-08-25 20:01:59 +00:00
David Ayers
9238fc1a32 * *.m: Include GNUstep.h if GNUSTEP is not defined for OS X.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17191 72102866-910b-0410-8b05-ffd578937521
2003-07-11 19:04:05 +00:00
Manuel Guesdon
cca381a47b 2003-06-26 Manuel Guesdon <mguesdon@orange-concept.com>
* config.h.in:
		o added EMIT_TODO control
	* EOAccess/EOAccessFault.m:
		o commented debug logs
	* EOAccess/EODatabaseContext.m:
		o more information in asserts
		o asserts
		o fix in -relayPrimaryKey:object:entity: for
			nil 1:1 relationship value
		o add -forgetSnapshotForGlobalID call in -refaultObject:withGlobalID:editingContext:
		o add -forgetSnapshotForGlobalID database call in  -forgetSnapshotForGlobalID:
	* EOAccess/EOEntity.m:
		o logs
		o fix in -awakeObject:fromInsertionInEditingContext: to avoid
			setting already present values
		o reverted code in -awakeObject:fromInsertionInEditingContext:
			My (old) tests show that we create 1: object not on
			mandatory property but on propagatesPrimaryKey one
			if someone has an example of EOF creating an object
			here without propagatesPrimaryKey, please send it to me.
	* EOAccess/EOModelGroup.m:
		o don't autorelease return model group in -globalModelGroup as it will crash. I haven't find why :-(
		o logs

	* EOAccess/EOSQLExpression.m:
			o fix bug in -assembleSelectStatementWithAttributes🔒qualifier:
				fetchOrder:selectString:columnList:tableList:
				whereClause:joinClause:orderByClause:lockClause:
			by  adding () around where and join clause
					o add detail in sqlStringForSelector:value: exception
	* EOAdaptors/Postgres95/PostPostgres95Channel.m:
		o add more information on exceptions
	* EOAdaptors/Postgres95/Postgres95SQLExpression.m:
		o fix escaping string in -formatValue:forAttribute:
		o fix bug in -assembleSelectStatementWithAttributes🔒qualifier:
				fetchOrder:selectString:columnList:tableList:
				whereClause:joinClause:orderByClause:lockClause:
			by  adding () around where and join clause
	* EOAdaptors/Postgres95/Postgres95Value.m:
		o Change log in +newValueForDateType:length:attribute:
	* EOControl/EOCheapArray.m
		o removed some logs
	* EOAccess/EOClassDescription.m:
		o fix in -validateForUpdate
		o logs
	* EOControl/Debug.h:
		o donditional define of NSEmitTODO()
	* EOControl/EODetailDataSource.h/.m:
		o added -setDetailKey:
	* EOControl/EOEditingContext.m
		o logs
	* EOControl/EOFetchSpecification.m
		o logs
	* EOControl/EOKeyValueCoding.m:
		o fix in computeSum, computeAverage
	* EOControl/EOQualifier.m
		o logs
	* EOControl/EOSortOrdering.m
		o use valueForKeyPath: instead of valueForKey: to allow sort on related objects
	* EOControl/EOUndoManager.h
		o protection of include


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17037 72102866-910b-0410-8b05-ffd578937521
2003-06-26 08:20:30 +00:00
David Ayers
341fc72ae8 * EOAccess/EOAttribute.m ([EOAttribute -encodeIntoPropertyList:]):
Encode missing aattributes as reported by Dirk Lattermann.  Also
	corrected encoding of parameterDirection.
	([EOAttribute initWithPropertyList:owner:]): Corrected parsing of
	parameterDirection to account for WO 4.5 compatibility and
	previous encodings.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16740 72102866-910b-0410-8b05-ffd578937521
2003-05-16 20:21:56 +00:00
David Ayers
89d7e88574 * EOAccess/EODatabaseDataSource.m ([EODatabaseDataSource
-initWithEditingContext:entityName:fetchSpecificationName:]):
	Create default fetch specification if we cannot obtain one from
	the entity by name as reported by Dirk Lattermann.
	* EOAccess/EOEntity.h/m
	([EOEntity -addFetchSpecification:withName:]): Corrected name and
	initialization as reported by Dirk Lattermann.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16729 72102866-910b-0410-8b05-ffd578937521
2003-05-14 21:33:01 +00:00
David Ayers
d0da1840a1 * EOAccess/EODatabaseContext.m
([EODatabaseContext -dealloc]): Corrected debug logs.
        ([EODatabaseContext +databaseContextWithDatabase:]): Use
        AUTORELEASE instead of autorelease.
        ([EODatabaseContext -initWithDatabase:]): Ditto.
        ([EODatabaseContext
        -objectsWithFetchSpecification:editingContext:]): Ditto.
        ([EODatabaseContext
        -_dbOperationWithGlobalID:object:entity:operator:]): Ditto.
        ([EODatabaseContext -recordChangesInEditingContext]): Ditto.
        ([EODatabaseContext
        -relayAttributesInRelationship:sourceObject:destinationObject:]):
        Ditto.
        ([EODatabaseContext
        -createAdaptorOperationsForDatabaseOperation:attributes:]):
        Ditto.
        ([EODatabaseContext -_fireFault:]): Ditto.
        ([EODatabaseContext -_batchToOne:withHandler:]): Ditto.
        ([EODatabaseContext -_commitTransaction]): Ditto.
        ([EODatabaseContext -handleDroppedConnection]): Use
        RELEASE instead of release.
        ([EODatabaseContext -databaseOperationForObject:]): Ditto.
        ([EODatabaseContext -_fireArrayFault:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16673 72102866-910b-0410-8b05-ffd578937521
2003-05-08 11:44:45 +00:00
David Ayers
1838637ee3 * EOAccess/EOEntity.m: Replaced autorelease with AUTORELEASE.
([EOEntity -addRelationship:]): Update _relationshipByName cache.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16638 72102866-910b-0410-8b05-ffd578937521
2003-05-05 16:24:17 +00:00
David Ayers
566354cac6 * EOAccess/EODatabaseContext.m ([EODatabaseContext -setDelegate:]):
Fixed assignment in while loop as reported by Stephane Corthesy.
	* EOControl/EOAndQualifier.m
	([EOAndQualifier +qualifierWithQualifiers:]),
	([EOAndQualifier -initWithQualifiers:]): Use GS_USEIDLIST to
	optimize vararg list to array conversion.
	* EOControl/EOOrQualifier.m
	([EOOrQualifier +qualifierWithQualifiers:]),
	([EOOrQualifier -initWithQualifiers:]): Ditto.
	* EOControl/EOClassDescription.m
	([EOClassDescription +classDelegate]): Make access to static
	variable thread safe.
	* EOControl/EOEdtitingContext.m: Added declarations to avoid
	compiler warnings.

2003-05-02  Stephane Corthesy  <stephane at sente dot ch>

	* EOControl/EOControl.h: Added inclusion of EOArrayDataSource.h.
	* EOControl/EOEdtitingContext.m: Added declaration of
	+[EOEditingContext(EOEditingContextPrivate)
	_observeUndoManagerNotifications] to avoid compiler warnings.
	* EOControl/EONSAddOns.m ([NSObject
	-resultsOfPerformingSelector:withEachObjectInArray:defaultResult:]):
	Added cast to avoid compiler warning.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16613 72102866-910b-0410-8b05-ffd578937521
2003-05-02 17:00:23 +00:00
David Ayers
ab880caf05 * EOAccess/EOSQLExpression.m: Import GSCategories.h only for
NeXT_Foundation_Library.
	* EOControl/EOKeyValueCoding.m: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16612 72102866-910b-0410-8b05-ffd578937521
2003-05-02 13:53:05 +00:00
David Ayers
94b2abaf0e * GNUmakefile: Remove setting of GNUSTEP_MAKEFILES.
* EOAccess/GNUmakefile: Ditto.
	* EOAdaptors/GNUmakefile.in: Ditto.
	* EOAdaptors/Postgres95/GNUmakefile.in: Ditto.
	* EOControl/GNUmakefile: Ditto.
	* EOModeler/GNUmakefile: Ditto.
	* Tools/GNUmakefile: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16606 72102866-910b-0410-8b05-ffd578937521
2003-05-02 12:23:27 +00:00
Mirko Viviani
19ea7ea1fc * EOAccess/EOAttribute.m ([EOAttribute -awakeWithPropertyList:]): set
the prototype.
([EOAttribute -encodeIntoPropertyList:]): likewise.
([EOAttribute -serverTimeZone]): return the value from the prototype.
([EOAttribute -columnName]): likewise.
([EOAttribute -readFormat]): likewise.
([EOAttribute -writeFormat]): likewise.
([EOAttribute -scale]): likewise.
([EOAttribute -precision]): likewise.
([EOAttribute -width]): likewise.
([EOAttribute -allowsNull]): likewise.
([EOAttribute -isReadOnly]): likewise.
([EOAttribute -valueClassName]): likewise.
([EOAttribute -externalType]): likewise.
([EOAttribute -valueType]): likewise.

* EOAccess/EOAttribute.h: removed ivar _prototypeName.

* EOAccess/EOModel.m ([EOModel -prototypeAttributeNamed:]): implemented.

* EOAccess/EOAdaptor.m|.h ([EOAdaptor -prototypeAttributes]): renamed
from +prototypes and implemented.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16483 72102866-910b-0410-8b05-ffd578937521
2003-04-18 19:01:06 +00:00
Mirko Viviani
1443198f62 * EOAccess/EOAdaptorContext.h: include EODefines.h and NSString.h
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16475 72102866-910b-0410-8b05-ffd578937521
2003-04-15 16:25:20 +00:00
David Ayers
f12819aa9b * EOControl/EODeprecated.h: Replaces EODepricated.h.
The original post was correct.  Sorry!
	* EOAccess/EODeprecated.h:  Ditto.
	* EOAccess/GNUmakefile: Ditto.
	* EOControl/EOUndoManager: Ditto.

	* EOControl/EOClassDescription: Added some comments.  Tidied line
	breakage.
	([EOClassDescription +delegete]): Moved to category named Deprecated.
	([EOClassDescription +setDelegate:]): Ditto.
	([EOClassDescription -displayNameForKey:]): Use AUTORELEASE macro.
	([NSObject -snapshot]): Ditto.
	([NSObject -updateFromSnapshot]): Ditto.
	([NSObject -addObject:toPropertyWithKey:]): Ditto.
	([NSObject -removeObject:fromPropertyWithKey:]): Ditto.
	([NSException +validateExceptionWithFormat:]): Ditto.
	([NSException +aggregateExceptionWithExceptions:]): Ditto.
	([NSException -exceptionAddingEntriesToUserInfo:]): Ditto.
	* EOControl/EOKeyValueCoding.h/m:
	([NSObject unableToSetNullForKey:]): Implemented.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16321 72102866-910b-0410-8b05-ffd578937521
2003-04-01 21:40:14 +00:00
David Ayers
f3e520ee9a 2003-03-30 David Ayers <d.ayers@inode.at>
* *.h/m, *.h/m):
	Used #include instead of depricated #import.  Avoid including
	entire library headers.  Use export macro where applicable.

	* EOControl/GNUmakefile: Removed EOKeyValueCodingBase.m/h and
	EOUndoMananger.h.  Added EOArrayDataSource.m/h, EODefines.h
	and EODepricated.h.
	* EOControl/EODefines.h: Updated for GDL2 & gnustep-make.
	* EOControl/EODebug.h: Updated.
	* EOControl/EODepricated.h: Updated for current state of GDL2.
	([NSObject +flushClassKeyBindings]): Added declaration.
	([EOClassDescription +setDelegate:]): Added declaration.
	([EOClassDescription +delegate]): Added declaration.
	(EOUndoManager): Moved declaration of interface here.
	* EOControl/EOKeyValueCoding.m
	([EOClassDescription +flushClassKeyBindings]): Added empty
	implementation.
	([NSObject takeStoredValuesFromDictionary:]): Cache EONull
	instance and use it instead of isKindOfClass:.
	* EOControl/EOEditingContext.m
	([EOEditingContext +initialize]): Tidied.
	([EOEditingContest -deleteObject]): Use NSUndoManager instead of
	EOUndoManager.
	* EOControl/EOQualifier.m
	([NSArray -filteredArrayUsingQualifier:]): Added minor
	optimization tweak.
	* EOControl/EOClassDescription.m: Removed inactive commented
	code.  Added private declerations of EOAccess methods to avoid
	compiler warnings.
	([EOClassDescription +initialize]): Tidied.
	([EOClassDescription -classDescriptionForClass:]): Use
	GSObjCName() instead of objc runtime routines.
	* EOControl/EOFault.m: Exchanged direct usages of ObjC runtime
	routines with NS/GSObjCRuntime abstraction API.
	([EOFault +superclass]): Ditto.
	([EOFault +targetClassForFault:]): Ditto.
	([EOFault -respondsToSelector:]): Ditto.
	([EOFault +initialize]): Cache static class variable.
	([EOFault +isKindOfClass]): Use static class variable.
	([EOFault +handlerForFault:]): Ditto.
	([EOFault +targetClassForFault:]): Ditto.
	([EOFault -dealloc]): Ditto.
	* EOControl/EOGenericRecord.m:
	([EOGenericRecord +initialize]): Tidied.
	* EOControl/EOKeyComparisonQualifier.m: Tidied documentation.
	* EOControl/EOKeyValueQualifier.m: Ditto.
	* EOControl/EONSAddOns.h/m: Added declarations to surpress
	compiler warnings.
	([NSObject -eoCompareOnName:]): Adjusted casts to surpress
	compiler warnings.
	(GSUseStrictWO451Compatibility): Added function.
	(GDL2GlobalLock, GDL2GlobalRecursive): Ditto.
	* EOControl/EONull: Remove implementations for foundation
	libraries without key value coding and fully rely on NSNull.
	Added assertions in all intance methods as instances should never
	be created.
	([EONull +allocWithZone:]) Corrected method name so it will
	actually be used.
	* EOControl/EOSortOrdering.m
	([NSArray sortedArrayUsingKeyOrderArray:]): Tidied.
	([NSMutableArray sortUsingKeyOrderArray:]): Ditto.
	([EONull compareAscending:]): Sync with referencs implementation.
	([EONull compareDescending:]): Ditto.
	([EONull compareCaseInsensitiveAscending:]): Ditto.
	([EONull compareCaseInsensitiveDescending:]): Ditto.

	* EOAccess/EOAdaptor.h: Added comment about API compatibility.
	* EOAccess/EOAdaptor.m ([EOAdaptor -contexts]): Return array of
	adaptor contexts rather tham GC-wrapper objects containing adaptor
	contexts.
	([EOAdaptor -databaseEncoding]): Use GSEncodingName() instead of
	GetEncodingName().
	* EOAccess/EODatabaseContext.m
	([EODatabaseContext -_turnFault:gid:editingContext:isComplete:]):
	Use GSObjCClass() instead of trying to access isa by dereferencing
	from id with incorrect member.
	* EOAccess/EOModel.m ([EOModel -entityNames]): Sort returned array
	to insure comparable output.
	* EOAccess/EOSQLExpression.m
	([EOSQLExpression sqlStringForArrayOfQualifiers:operation:]):
	Added cast to surpress compiler warning.
	* EOAccess/EOUtilities.m
	([EOObjectStoreCoordinator setModelGroup:]): Ditto.
	* EOAccess/EORelationship.h ([EORelationship -docComment]):
	Added declaration.
	* EOAccess/GNUmakefile: Added EODefines.h and EODepricated.h.

	* Tools/*.m: Use RCS_ID macro.
	* Tools/EOAttribute+GSDoc.h:
	([EOAttribute gsdocContentWithTagName:idPtr:]): Corrected Typo.
	* Tools/EOModel+GSDoc.h/m:
	([EOModel gsdocContentSplittedByEntities:idPtr:]): Ditto.
	* Tools/EORelationship+GSDoc.m:
	([EORelationship gsdocContentWithTagName:idPtr:]): Change variable
	type to supress compiler warnings.
	* Tools/eoutil.m (dump): Initialize variables to supress compiler
	warnings.
	* Tools/gsdoc-model.m: Include GSCategories.h to supress compiler
	warnings.
	(main): Added cast to supress compiler warning.  Fixed typo in
	method invocation.

2003-03-25  Stephane Corthesy  <stephane@sente.ch>

	* EOControl/EODefines.h: Added new file for export/win32 support.
	* EOControl/EODepricated.h: Added new file for depricated features.
	* EOControl/EOControl.h: Added EOArrayDataSource.h and EODefines.h.
	* EOControl/EOArrayDataSource.h/m: Added new files.  Some methods
	(<NSCoding> and qualifier bindings) are empty stubs.
	* EOControl/EODebug.h: Use export macro instead of explicit extern for
	function and symbol declarations.
	* EOControl/EOGlobalID.h: Ditto.
	* EOControl/EONull.h: Ditto.
	* EOControl/EOObjectStore.h: Ditto.
	* EOControl/EOOrQualifier.m: Replaced autorelease by AUTORELEASE
	and fixed typo.
	* EOControl/EOQualifier.m
	([NSArray -filteredArrayUsingQualifier:]): Implemented.
	* EOControl/EONSAddOns.m: Use volatile in some exception handlers
	(man longjmp for more info).
	* EOControl/EOSortOrdering.h/m
	([EOSortOrdering -copyWithZone:]): Implemented <NSCopying>.
	([EOSortOrdering -encodeWithKeyValueArchiver:]): Implemented.

	* EOAccess/EODefines.h: Added new file for export/win32 support.
	* EOAccess/EODepricated.h: Added new file for depricated features.
	* EOAccess/EOAccess.h: Added EODefines.h.
	* EOAccess/EOSQLExpression.h/m: Fixed typo for
	EOPrimaryKeyConstraintKey.
	* EOAccess/EOExpressionArray.h/m: Use volatile for variables usein
	in exception handlers. (man longjmp for more info)
	* EOAccess/EODatabase.h: Use export macro instead of explicit
	extern for function and symbol declarations.
	* EOAccess/EOEntity.h: Ditto.
	* EOAccess/EOModel.h: Ditto.
	* EOAccess/EOSchemaGeneration.h: Ditto.
	* EOAccess/EOSQLExpression.h: Ditto.
	* EOAccess/EOUtilities.h: Ditto.
	* Tools/eoutil.m (dump): Implemented use of -postinstall option.
	Corrected bug when getting adaptor's expression class.  Renamed
	symbol EOPrimaryKeyContraintsKey into EOPrimaryKeyConstraintsKey.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16298 72102866-910b-0410-8b05-ffd578937521
2003-03-31 00:24:15 +00:00
Manuel Guesdon
613ff0a827 2003-03-21 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EODatabaseContext.m:
		o added assert in _primaryKeyForObject:
		o in -recordChangesInEditingContext test
			nil/eonull on relationshipCommitedSnapshotValue and
			relationshipSnapshotValue instead of only nil testing
		o in -recordChangesInEditingContext fix for value changing
			testing when commitedSnapshotValue is nil/EONull

	* EOAccess/EOEntity.m:
		o logs
		o fix in inverseRelationshipClassPropertyNames to test on
			destination entity property names
	* EOControl/EOClassDescription.m:
		o logs
	* EOControl/GNUmakefile:
		o added EONSAddOns.h
	* EOCOntrol/EOKeyValueCoding.m:
		o fixes in NSArray -computeXXForKey:
	* EOAccess/EOSQLExpression.m:
		o assert in -sqlStringForKeyValueQualifier:
		o -sqlStringForArrayOfQualifiers:operation:
			hanlde different qualifier cases using isKindOfClass:
			may probably be improved
		o logs
	* EOControl/EOEditingContext.m:
		o fix in unprocessedInfo (invert/change swap).
	* EOControl/EOQualifier.m
		o -qualifierWithQualifierFormat:varargList:
			raise exception if operator is unknwon
	* EOControl/EOMutableKnownKeyDictionary.m:
		o add precision in exception message
	* EOAccess/EORelationship.m:
		o more info in some logs
		o fix in -_sourceRowToForeignKeyMapping for foreign keys
			which are not in primaryKey.
	* EOControl/EODatabaseOperation.m:
		o in -setDatabaseOperator: Don't Delete a not inserted object
	* EOControl/EOAccessFault.m:
		o logs
		o EOAccessFaultHandler: -dealloc fix: call super dealloc
		o implement faultWillFire: This fix a hard memory problem
	* EOControl/EOFault.m:
		o -dealloc: fix possible infinite loop
		o logs
	* EOCheapCopyArray.m:
		o ucomment retain/release/...
		o fix shallowCopy for memory management.
			This was causing hard memory trouble


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16217 72102866-910b-0410-8b05-ffd578937521
2003-03-21 20:41:07 +00:00
David Ayers
04b282d802 * config/postgres.m4: Updated CPPFLAGS and LIBS to account for
distributions default installations.
	* configure: Regenerated.

	* Tools/EOAttribute+GSDoc.m ([EOAttribute -gsdocContentWithPtr:]):
	Removed superfluous semicolon in method definition.

	* EOAccess/EODatabaseContext.m: Fixed minor typo in comment.

	* EOAccess/EOEntity.m ([EOEntity -description]): Return the
	description of the encoded property list.
	([EOEntity -debugDescription]): Implements original description
	method.
	([EOEntity -classProperties]): Added cast to supress compiler
	warning.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16142 72102866-910b-0410-8b05-ffd578937521
2003-03-06 22:26:45 +00:00
Mirko Viviani
7401bb52f9 * EOAccess/EOUtilities.h: added EOObjectStoreCoordinator.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16065 72102866-910b-0410-8b05-ffd578937521
2003-02-24 18:21:45 +00:00
David Ayers
63fe01e58e 2003-02-06 David Ayers <d.ayers@inode.at>
* EOAccess/EOModel.m
	([EOModel -encodeTableOfContentsIntoPropertyList:]),
	([EOModel -initWithPropertyList:owner:]),
	([EOModel -encodeIntoPropertyList:]), ([EOModel -addEntity:]),
	([EOModel -removeEntity:]), ([EOModel -beautifyNames]),
	([EOModel -setCreateMutableObjects:]):
	Do not access _entities until cache is triggered.
	* EOAccess/EOModel.m
	([EOModel +findPathForModelNamed:]),
	([EOModel -gcDecrementRefCountOfContainedObjects]),
	([EOModel -storedProcedures]), ([EOModel -initWithContentsOfFile:]),
	([EOModel -initWithTableOfContentsPropertyList:path:]),
	([EOModel -initWithPropertyList:owner:]),
	([EOModel -_classDescriptionNeeded:]), ([EOModel -_entityForClass:]),
	([EOModel -_addEntityWithPropertyList:]), ([EOModel -_addEntity:]),
	([EOModel -_verifyBuiltEntityObject:named:]):
	replaced NSDebugMLLog with EOFLOGObject/ClassLevelArgs.
	* EOAccess/EOModel.m ([EOModel -description]), ([EOModel
	-addEntity]), ([EOModel removeEntity]): Make temporary objects
	autoreleased versions instead explicit release handling.

	* EOAccess/EOAdaptor.m ([EOAdaptor +adaptorWithName:]):
	reinserted accessing adaptor class by principal class of bundle as
	fallback in case EOAdaptorClassName isn't found.  Raise an
	exception if the provided class is not a subclass of EOAdaptor.
	* EOAccess/EOAdaptor.m ([EOAdaptor +adaptorWithName:]),
	([EOAdaptor -fetchedValueForValue:attribute]),
	([EOAdaptor -fetchedValueForStringValue:attribute]):
	replaced NSLog/NSDebugMLLog with EOFLOGObject/ClassLevelArgs.
	* EOAccess/EOAdaptor.m ([EOAdaptor +adaptorWithModel:]),
	([EOAdaptor +adaptorWithName:]),
	([EOAdaptor +availableAdaptorNames]):
	replaced autorelease with AUTORELEASE().

	* EOAdaptors/Postgres95Adaptor/Info.plist: Added
	EOAdaptorClassName entry.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15900 72102866-910b-0410-8b05-ffd578937521
2003-02-06 21:18:29 +00:00
Mirko Viviani
75e5869bb6 Changes for OSX and fixes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15865 72102866-910b-0410-8b05-ffd578937521
2003-02-03 14:53:03 +00:00
Mirko Viviani
0339a722ef * EOControl/EOGenericRecord.m ([EOGenericRecord +initialize]): import
NSAutoreleasePool.
* EOControl/EOGlobalID.m ([EOGlobalID +initialize]): removed dependency
from EOAccess.
* EOControl/EOFetchSpecification.m ([EOFetchSpecification
+initialize]): likewise.
([EOFetchSpecification +fetchSpecificationNamed:entityNamed:]): readded
since it is replaced by the category in EOUtilitites !


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15856 72102866-910b-0410-8b05-ffd578937521
2003-02-02 08:07:30 +00:00
Manuel Guesdon
16461488fd 2003-01-31 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EOAdaptorChannel.m:
		o replaced NSDebugMLLog by EOFLOGObjectLevel/EOFLOGObjectLevelArgs
	* EOAccess/EOAttribute.m:
		o replaced NSDebugMLLog by EOFLOGObjectLevel/EOFLOGObjectLevelArgs
	* EOAccess/EODatabaseChannel.m:
		o replaced NSDebugMLLog by EOFLOGObjectLevel/EOFLOGObjectLevelArgs
		o Move registration for EODatabaseChannelNeddedNotification
			from +load to +initialize. (David Ayers <d.ayers@inode.at>)
	* EOAccess/EODatabaseContext.m:
		o Move registration for EODatabaseChannelNeddedNotification
			from +load to +initialize. (David Ayers <d.ayers@inode.at>)
	* EOAccess/EOEntity.m:
		o in - (void) _setIsEdited, autorelease instead of destroy
	* EOAccess/EORelationship.m
		o -validateValue: don't raise not implemented exception
		o initialize variables in -foreignKeyInDestination
	* EOAccess/EOSQLExpression.m:
		o added NSAsserts
		o use anyRelationshipNamed: instead of relationshipNamed: to
			find hidden relationships
	* EOControl/EOClassDescription.m
		o -displayNameForKey: use -stringWithCapacity instead
			of +alloc -initWithCapacity (missing autorelease)
		o -validationExceptionWithFormat: initialize variables
		o -aggregateExceptionWithExceptions: initialize variables
		o -aggregateExceptionWithExceptions: autorelease copied value
		o -exceptionAddingEntriesToUserInfo: initialize variables
		o -exceptionAddingEntriesToUserInfo: autorelease copied userInfo
		o -snapshot autorelease copied value
		o -updateFromSnapshot: autorelease copied value
	* EOControl/EOFetchSpecification.h:
		o added +fetchSpecificationWithEntityName:qualifier:sortOrderings:usesDistinct:isDeep:hints:
		o added +fetchSpecificationWithEntityName:qualifier:sortOrderings:usesDistinct:
	* EOControl/EOFetchSpecification.m:
		o added +fetchSpecificationWithEntityName:qualifier:sortOrderings:usesDistinct:isDeep:hints:
		o added +fetchSpecificationWithEntityName:qualifier:sortOrderings:usesDistinct:
		o removed +fetchSpecificationNamed:entityNamed: (implemented in EOUtilities)
		o Insure that EODatabaseContext is initialized early. (David Ayers <d.ayers@inode.at>)
	* EOControl/EOGenericRecord.m
		o in -eoFormatSizeDictionary: handle /0
		o in +eoCalculateAllSizeWith: don't de-fault objects
		o in +eoCalculateAllSizeWith: manage a local autorelease pool
	* EOControl/EOKeyValueCoding.h:
		o added -smartTakeValue:forKey:
		o -smartTakeValue:forKeyPath:
		o -storedValuesForKeyPaths:
	* EOControl/EOGlobalID.m:
		o Insure that EODatabaseContext is initialized early. (David Ayers <d.ayers@inode.at>)
	* EOControl/EOQualifier.m:
		o +operatorSelectorForString:]): Parse 'doesContain' instead of
			'contains' (David Ayers <d.ayers@inode.at>)
	* EOControl/EODebug.m:
		o include NSDebug.h


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15845 72102866-910b-0410-8b05-ffd578937521
2003-02-01 15:19:56 +00:00
Mirko Viviani
0121e588e2 * EOAccess/EOUtilities.m|.h ([EOObjectStoreCoordinator -modelGroup]),
([EOObjectStoreCoordinator -setModelGroup:]): moved from EOControl/
EOObjectStoreCoordinator.m

* EOAccess/EOUtilities.m|.h ([EOFetchSpecification
+fetchSpecificationNamed:entityNamed:]): moved from EOControl/
EOFetchSpecification.m

* EOControl/EOFetchSpecification.m ([EOFetchSpecification
+fetchSpecificationNamed:entityNamed:]): return nil.

* EOAccess/EOAccessFault.m|.h ([EOFault -databaseContext]): moved from
EOControl/EOFault.m

* EOControl/EOEditingContext.m ([EOEditingContext -tryToSaveChanges]),
([EOEditingContext -saveChanges:]): use respondsToSelector:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15431 72102866-910b-0410-8b05-ffd578937521
2002-12-31 16:25:21 +00:00
Mirko Viviani
3e08b99be1 Added missing debug includes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15410 72102866-910b-0410-8b05-ffd578937521
2002-12-30 23:00:10 +00:00
Mirko Viviani
b738a6145b * EOAdaptors/Postgres95/Postgres95Channel.m ([Postgres95Channel
-describeTableNames]): implemented.

* EOAccess/EOSQLExpression.h: added missing declaration.
* EOAccess/EORelationship.m ([EORelationship -removeJoin:]): added cast.
* EOAccess/EOModel.m ([EOModel -dealloc]): removes observer correctly.
* EOAccess/EODatabaseContext.h: added missing declaration.
* EOControl/EOFetchSpecification.m ([EOFetchSpecification
-copyWithZone:]): fixed cast.
([EOFetchSpecification -hints]): added cast.
* EOControl/EOClassDescription.m  ([NSException
+validationExceptionWithFormat:]), ([NSException
+aggregateExceptionWithExceptions:]),
([NSException -exceptionAddingEntriesToUserInfo:]): renamed local
variables.
* rearranged header inclusion in all sources.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15409 72102866-910b-0410-8b05-ffd578937521
2002-12-30 22:10:43 +00:00
Mirko Viviani
c8f5362d9f * EOAccess/EODatabaseContext.m ([EODatabaseContext -initializeObject:
row:entity:editingContext:]): set nil instead of EONull

* EOControl/EONull.m: included config.h


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15370 72102866-910b-0410-8b05-ffd578937521
2002-12-29 15:13:21 +00:00
Mirko Viviani
66cc30154c * EOAccess/EOEntity.m ([EOEntityClassDescription
-inverseForRelationshipKey:]): Fixed to return a relationship name that
is a class property.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15308 72102866-910b-0410-8b05-ffd578937521
2002-12-17 21:33:59 +00:00
Mirko Viviani
0d78e7210c * EOAccess/EORelationship.m ([EORelationship
-foreignKeyInDestination]): use destinationEntity to search for pk.

* EOAccess/EODatabaseContext.m ([EODatabaseContext
-_buildPrimaryKeyGeneratorListForEditingContext:]): check if the
relationship propagates the pk to an entity pk.
([EODatabaseContext -relayAttributesInRelationship:sourceObject:
destinationObject:]): record updates for relationship with fk and the
ones that propatates pk.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15295 72102866-910b-0410-8b05-ffd578937521
2002-12-14 08:10:44 +00:00
Mirko Viviani
4ff95c2a36 * EOAccess/EOEntity.m ([EOEntity -classDescriptionForInstances]):
retain newly created classDescription.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15267 72102866-910b-0410-8b05-ffd578937521
2002-12-08 17:59:43 +00:00
Mirko Viviani
ddeded95c1 * EOAccess/EOAdaptor.m ([EOAdaptor -isValidQualifierType:model:]):
implemented.

* EOControl/GNUmakefile (libgnustep-db2control_HEADER_FILES): removed
GCObject.h

* EOAccess/EODatabaseContext.m:
* EOAccess/EORelationship.m:
* EOAccess/EOEntity.m:
* EOControl/EOMutableKnownKeyDictionary.m:
* EOControl/EOEditingContext.m: replaced EOFLOGObjectLevelArgs with
EOFLOGObjectLevel in absence of args. (fixed problems with gcc 2.95)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15266 72102866-910b-0410-8b05-ffd578937521
2002-12-08 10:07:26 +00:00
Mirko Viviani
1e33b5cb1d * EOAccess/EOEntity.m ([EOEntity -isPrimaryKeyValidInObject:]): check for NSNull
objects.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15265 72102866-910b-0410-8b05-ffd578937521
2002-12-07 09:16:16 +00:00
Mirko Viviani
7d34221668 * EOAccess/EOUtilities.h: added prototype.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15264 72102866-910b-0410-8b05-ffd578937521
2002-12-06 20:09:34 +00:00
Mirko Viviani
24e6611c47 * EOAccess/EODatabaseContext.m ([EODatabaseContext
+_registerDatabaseContext:]): added a warning  if the specified model
is not found.
* EOAdaptors/Postgres95/Makefile.preamble.in (LIBRARIES_DEPEND_UPON):
added postgres libs here.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15258 72102866-910b-0410-8b05-ffd578937521
2002-12-05 14:46:56 +00:00
Mirko Viviani
c3416d5bb6 * EOAccess/EOEntity.m ([EOEntity -initWithPropertyList:owner:]): read
<entityName>.fspec only if exists.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@15243 72102866-910b-0410-8b05-ffd578937521
2002-12-04 17:49:17 +00:00