Commit graph

90 commits

Author SHA1 Message Date
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