2004-02-14 02:02:15 +00:00
2003-02-14 Matt Rice <ratmice@yahoo.com>
* EOAdaptors/Postgres95/Postgres95Channel.m
([Postgres95Channel describeModelWithTableNames:]): Implemented.
2004-02-12 09:59:17 +00:00
2003-02-12 David Ayers <d.ayers@inode.at>
2004-02-12 17:09:37 +00:00
* 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.
2004-02-12 11:07:49 +00:00
* EOControl/EOClassDescription.m
([EOClassDescription initialize]): Use local
GSLazyRecursiveLock instead of old locking mechanism.
([EOClassDescription classDelegate]): Ditto.
* EOControl/EOGenericRecord.m: Use GSLazyRecursiveLock
instead of NSRecursiveLock.
* EOControl/EONSAddOns.h/m (GDL2GlobalLock,
GDL2GlobalRecursiveLock) Remove.
(GDL2GlobalLockVendor) Ditto.
(GSUseStrictWO451Compatibility): Use local GSLazyRecursiveLock
instead of old locking mechanism.
* EOControl/EOFault.m: Remove superfluous include.
2004-02-12 10:28:09 +00:00
* EOControl/EOKeyValueQualifier.m
([EOKeyValueQualifier initWithKey:operatorSelector:value:]):
Use EONull instance if value is nil.
([EOKeyValueQualifier evaluateWithObject:]): Use EONull
instance if object is nil.
* EOControl/EOQualifier.m (getKey): Always interpret
'attName = nil' qualifiers as EOKeyValueQualifiers.
2004-02-12 09:59:17 +00:00
* EOControl/EODebug.h/m(EOFLogAssertGood_): Remove dependancy
on superfluous category.
([NSObject isa]): Remove category.
2004-02-01 11:23:44 +00:00
2003-02-01 David Ayers <d.ayers@inode.at>
* EOAccess/EOAdaptor.m ([EOAdaptor adaptorWithName:]): Use
NSSearchPathForDirectoriesInDomains() instead of GNUstep
specific environment variable.
2004-01-31 14:08:17 +00:00
2003-01-31 David Ayers <d.ayers@inode.at>
2004-01-31 13:57:38 +00:00
* 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.
2004-01-30 14:02:24 +00:00
2003-01-30 David Ayers <d.ayers@inode.at>
* 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.
2004-01-30 22:32:35 +00:00
Add -lgnustep-baseadd as ADDITIONAL_TOOL_LIBS for non-*-gnu-*.
2004-01-30 14:02:24 +00:00
2004-01-29 09:26:40 +00:00
2003-01-29 David Ayers <d.ayers@inode.at>
* EOAccess/GNUmakefile: Test FOUNDATION_LIB to determine whether
to link -base or -baseadd.
* EOControl/GNUmakefile: Ditto.
* EOModeler/GNUmakefile: Ditto.
* Tools/GNUmakefile: Ditto. Update title.
2004-01-29 13:23:22 +00:00
* 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.
2004-01-29 09:26:40 +00:00
2003-11-28 22:50:52 +00:00
2003-11-28 Manuel Guesdon <mguesdon@orange-concept.com>
2003-11-28 22:30:57 +00:00
* 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)
2003-11-28 22:47:32 +00:00
* EOControl/EONSAddOns.m/.h
2003-11-28 22:30:57 +00:00
o added number accessors for NSString
o added NSObject
-performSelector:withObject:withObject:withObject:
2003-11-28 22:41:42 +00:00
* 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:
2003-11-28 22:47:32 +00:00
* 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:
2003-11-28 22:50:52 +00:00
* 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.
2003-11-28 22:56:06 +00:00
* 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;
2003-11-28 23:00:05 +00:00
* EOControl/EOClassDescription.m/h:
o added -dictionaryForProperties
o added EOEntityClassDescription -dictionaryForProperties
wich use entity -_dictionaryForProperties
* EOControl/EOGenericRecord.m/h:
o use EOClassDescription -dictionaryForProperties
instead of building itself it's dictionary so we can
always use the same EOMKKDInitializer to save (lots of)
memory.
2003-11-28 23:02:20 +00:00
* EOControl/EOEditingContext.m/.h:
o added -setLevelsOfUndo: (for GNustepWeb)
* EOControl/EOFetchSpecification.m/.h:
o implemented -encodeWithKeyValueArchiver:
* EOControl/EOKeyValueArchiver.m:
o cleaned
2003-11-28 22:30:57 +00:00
2003-10-24 16:30:49 +00:00
2003-10-24 David Ayers <d.ayers@inode.at>
* EOControl/EONSAddOns.h (GDL2_BUFFER): Added experimental macro.
* EOControl/EOQualifier.m (_isLike): New static function to
implement -isLike: and -isCaseInsensitiveLike:.
(-[NSString isLike:]): Implemented.
(-[NSString isCaseInsensitiveLike:]): Ditto.
(-[NSArray filteredArrayUsingQualifier:]): Adapted to use
experimental GDL2_BUFFER macro.
2003-10-23 10:51:49 +00:00
2003-10-23 David Ayers <d.ayers@inode.at>
* EOControl/EOFetchSpecification.m
(-[EOFetchSpecification fetchSpecificationNamed:entityNamed:]}:
Implemented upon bug report by Philip Moetteli.
2003-10-23 15:06:51 +00:00
* 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.
2003-10-23 10:51:49 +00:00
2003-09-29 19:23:58 +00:00
2003-09-29 Philip Moetteli <Philip.Moetteli@tele2.ch>
* EOControl/EOClassDescription.m
(+[EOClassDescription initialize]): Initialize model group
after callback tables are initilized.
2003-09-10 13:35:32 +00:00
2003-09-10 David Ayers <d.ayers@inode.at>
* EOControl/EOFault.m
(+[EOFault respondsToSelector:]): Use GSObjCRuntime functions and
correct casts.
(-[EOFault respondsToSelector:]): Correct casts.
* EOControl/EOKeyComparisonQualifier.m
* EOControl/EOKeyValueCoding.m
* EOControl/EOKeyValueQualifier.m
* EOControl/EOQualifier.m
* EOControl/EOSortOrdering.m
(-[NSObject compare:]): Add declaration to prepare for removal
of declaration from -base.
(-[EOKeyComparisonQualifier evaluateWithObject:]): Adapt vraiables
and casts to use correct prototype.
(-[EOKeyValueQualifier evaluateWithObject:]): Ditto
(-[NSArray computeMaxForKey:]): Ditto.
(-[NSArray computeMinForKey:]): Ditto.
2003-08-25 20:01:59 +00:00
2003-08-25 Matt Rice <ratmice@yahoo.com>
* *.h/m: Updated to new header layout.
* Tools/eoutil.m: Added missing include.
2003-08-24 23:28:26 +00:00
2003-08-23 David Ayers <d.ayers@inode.at>
* EOControl/EOKeyValueCoding.h/m: Rewritten and documented.
Declared and documented EOKeyValueCoding categories currently
implemented by gnustep-base/Foundation in NSKeyValueCoding.
Removed FOUNDATION_HAS_KVC conditionals as gnustep-base/Foundation
implement NSKeyValueCoding.
(-[NSObject takeStoredValuesFromDictionary:]): Added declaration
reportedly missing in Apple's headers to compelte EOKeyValueCoding
declarations.
Most implementations rewritten.
* EOControl/EONull.h/m: Define EONull to NSNull to allow pointer
equality checks. Implement EONull as NSNull subclass that returns
the NSNull instance. Remove old assertions.
2003-07-11 19:04:05 +00:00
2003-07-11 David Ayers <d.ayers@inode.at>
* *.m: Include GNUstep.h if GNUSTEP is not defined for OS X.
2003-06-26 08:20:30 +00:00
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:lock: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:lock: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
2003-06-24 16:27:01 +00:00
2003-06-23 David Ayers <d.ayers@inode.at>
* EOControl/EONSAddOns.h/m:
([NSString -parsedFirstVersionSubstring]): New method.
* EOAdaptors/Postgres95/Postgres95Adaptor.h/m: Added include of
pg_config.h to access PG_VERSION. Added databaseVersion to list
of meaningful connectionDictionary keys.
(postgresClientVersion): New function.
* EOAdaptors/Postgres95/Postgres95Channel.h/m: Added instance
variable to hold the version of the database server.
(pgResultDictionary): New static function for debuging.
([Postgres95Channel -_readServerVersion]): New method to set Server
Version.
([Postgres95Channel -openChannel]): Call _readServerVersion method.
([Postgres95Channel -describeTableNames]): Adapt select statement
according to database version.
* Postgres95/Postgres95SQLExpression.m:
([Postgres95SQLExpression +dropTableStatementsForEntityGroup:]):
Adapt select statement according to database version supplied in
connectionDictionary of the entites model.
2003-06-22 16:36:40 +00:00
2003-06-22 David Ayers <d.ayers@inode.at>
2003-06-22 08:47:24 +00:00
* EOControl/EOFault.m ([EOFault -respondsToSelector:]): Adapt to
current GSObjCRuntime API.
* EOControl/EOUndoManager.h: Correct includes.
2003-06-22 16:36:40 +00:00
* EOAdaptors/Postgres95/Postgres95Channel.m
([Postgres95Channel -describeTableNames]): Removed incorrect code
left by copy and paste action. Reported by Markus Hitter
2003-06-24 16:27:01 +00:00
<mah@jumping.de>.
2003-06-22 08:47:24 +00:00
2003-06-01 17:28:00 +00:00
2003-06-01 David Ayers <d.ayers@inode.at>
* gdl2.make.in: Set GDL2 as auxiliary preprocessor flag.
2003-05-22 14:06:35 +00:00
2003-05-22 David Ayers <d.ayers@inode.at>
2003-05-22 15:35:15 +00:00
* config/postgres.m4: Added /usr/include/postgresql to include
search path.
2003-05-22 14:06:35 +00:00
* EOControl/EOClassDescription.m
([EOClassDescription +classDescriptionForClass:): Replaced
deprecated GSObjCName() with GSNameFromClass().
* EOControl/EOQualifier.m
([EOQualifier +qualifierWithQualifierFormat:varargList:]): Replaced
deprecated GSObjCSelectorName() with GSNameFromSelector().
2003-05-20 14:58:19 +00:00
2003-05-20 David Ayers <d.ayers@inode.at>
* EOControl/EOFault.m ([EOFault respondsToSelector:]): Temporarily
add private declaration of GSObjCGetMethod() until the replacement
is in place.
2003-05-16 20:21:56 +00:00
2003-05-16 David Ayers <d.ayers@inode.at>
* 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.
2003-05-14 David Ayers <d.ayers@inode.at>
2003-05-14 21:33:01 +00:00
* 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.
2003-05-16 20:21:56 +00:00
2003-05-08 David Ayers <d.ayers@inode.at>
2003-05-08 11:44:45 +00:00
2003-05-08 13:06:34 +00:00
* EOControl/EOObjectStoreCoordinator.m ([EOObjectStoreCoordinator
+initialize]): Insure EODatabaseContext is setup to receive
notifications.
2003-05-08 12:52:45 +00:00
* EOControl/EOKeyGlobalID.m ([EOKeyGlobalID
+globalIDWithEntityName:keys:keyCount:zone:]): Use AUTORELEASE
instead of autorelease.
2003-05-08 11:55:23 +00:00
* EOControl/EOFault.m ([EOFault +initialize]): Fix initialization
of cached class variable.
2003-05-08 11:44:45 +00:00
* 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.
2003-05-05 16:24:17 +00:00
2003-05-05 David Ayers <d.ayers@inode.at>
* EOAccess/EOEntity.m: Replaced autorelease with AUTORELEASE.
([EOEntity -addRelationship:]): Update _relationshipByName cache.
2003-05-02 10:06:06 +00:00
2003-05-02 David Ayers <d.ayers@inode.at>
* EOControl/EOKeyValueCoding.h: Use base/Foundation
NSUnknownKeyException for EOUnknownKeyException to allow use of
base/Foundation NSKeyValueCoding.
* EOControl/EOKeyValueCoding.m: Add EOTargetObjectUserInfoKey and
EOUnknownUserInfoKey.
([NSObject +flushAllKeyBindings]): Add method.
2003-05-02 12:23:27 +00:00
* 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.
2003-05-02 13:53:05 +00:00
* EOAccess/EOSQLExpression.m: Import GSCategories.h only for
NeXT_Foundation_Library.
* EOControl/EOKeyValueCoding.m: Ditto.
2003-05-02 17:00:23 +00:00
* 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@sente.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.
2003-05-02 10:06:06 +00:00
2003-04-18 19:01:06 +00:00
2003-04-18 Mirko Viviani <mirko@objectlab.org>
* 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.
2003-04-15 16:25:20 +00:00
2003-04-15 Mirko Viviani <mirko@objectlab.org>
* EOAccess/EOAdaptorContext.h: include EODefines.h and NSString.h
2003-04-01 21:40:14 +00:00
2003-04-01 David Ayers <d.ayers@inode.at>
* 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.
2003-03-31 16:02:46 +00:00
2003-03-31 David Ayers <d.ayers@inode.at>
* EOControl/EOFault.m ([EOFault respondsToSelector:]): Replaced
usage of potential future runtime function name with current
function name.
2003-03-31 00:24:15 +00:00
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.
2003-03-21 20:41:07 +00:00
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
2003-03-12 21:35:20 +00:00
2003-03-12 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOClassDescription.m ([EOClassDescription +initialize]):
initialize (if present) the default model group. This helps
+classDescriptionFor* to work correctly.
2003-03-06 22:26:45 +00:00
2003-03-06 David Ayers <d.ayers@inode.at>
* 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.
2003-02-24 18:21:45 +00:00
2003-02-24 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EOUtilities.h: added EOObjectStoreCoordinator.
2003-02-20 13:58:43 +00:00
2003-02-17 David Ayers <d.ayers@inode.at>
* EOControl/EOSortOrdering.m: Added documentation.
Check FOUNDATION_HAS_KVC to determine whether EONull categories
should be applied to NSNull instead.
([EOSortOrdering +sortOrderingWithKey:selector:]): Use AUTORELEASE
instead of -autorelease.
([EOSortOrdering -initWithKey:selector:]): Use ASSIGNCOPY instead
of ASSIGN to set key to insure immutability.
([EOSortOrdering -description]): Implemented.
([NSArray (EOKeyBasedSorting) compareUsingSortOrderings()): New
function.
([NSArray (EOKeyBasedSorting) -sortedArrayUsingKeyOrderArray:]):
Reimplemented using [NSArray -sortedArrayUsingFunction:context:]
with new compareUsingSortOrderings() function.
([NSMutableArray (EOKeyBasedSorting) -sortUsingKeyOrderArray:]):
Reimplemented using [NSMutableArray -sortUsingFunction:context:]
with new compareUsingSortOrderings() function.
([NSMutableArray -_sortUsingKeyOrder:fromIndex:count:]): Removed.
2003-02-13 11:39:01 +00:00
2003-02-13 David Ayers <d.ayers@inode.at>
* EOControl/EOAndQualifier.m: Added documentation.
([EOAndQualifier +qualifierWithQualifiers:]),
([EOAndQualifier -initWithQualifiers:]): Synchronize implementation.
([EOAndQualifier -initWithQualifierArray:]): Change ASSIGN to
ASSIGNCOPY when setting qualifier array (insuring immutability).
([EOAndQualifier -copyWithZone:]): remove (use implementation from
superclass).
* EOControl/EOKeyComparisonQualifier.m: Added documentation.
([EOKeyComparisonQualifier
+qualifierWithLeftKey:operatorSelector:rightKey:]): Use
AUTORELEASE() instead of -autorelease.
([EOKeyComparisonQualifier
-initWithLeftKey:operatorSelector:rightKey:]): Use ASSIGNCOPY
instead of ASSIGN to insure immutable keys. Added comment about
possible selector assertion.
([EOKeyComparisonQualifier -copyWithZone:]): remove (use
implementation from superclass).
([EOKeyComparisonQualifier -evaluateWithObject:]): Try to call the
receivers selector before attempting to fallback on other
mechanisms to evaluate the object. Adjusted local variable names
and fixed fallback Equal, NotEqual and Contains comparisons.
([EOKeyComparisonQualifier -description]): Fall back to
NSStringFromSelector() if +stringForOperatorSelector returns nil.
* EOControl/EOKeyValueQualifier.m: Added documentation
([EOKeyValueQualifier +qualifierWithKey:operatorSelector:value:]): Use
AUTORELEASE() instead of -autorelease.
([EOKeyValueQualifier -initWithKey:operatorSelector:value:]): Use
ASSIGNCOPY instead of ASSIGN to insure immutable key. Added
comment about possible selector assertion.
([EOKeyValueQualifier -copyWithZone:]): remove (use implementation
from superclass).
([EOKeyValueQualifier -evaluateWithObject:]): Try to call the
receivers selector before attempting to fallback on other
mechanisms to evaluate the object. Adjusted local variable names
and fixed fallback Equal, NotEqual and Contains comparisons.
([EOKeyValueQualifier -description]): Fall back to
NSStringFromSelector() if +stringForOperatorSelector returns nil.
* EOControl/EONotQualifier.m: Added documentation.
([EONotQualifier -copyWithZone:]): remove (use implementation from
superclass).
([EONotQualifier -evaluateWithObject:]): Implemented.
* EOControl/EOOrQualifier.m: Added documentation.
([EOOrQualifier +qualifierWithQualifiers:]),
([EOORQualifier -initWithQualifiers:]): Synchronize implementation.
([EOOrQualifier -copyWithZone:]): remove (use implementation from
superclass).
([EOOrQualifier -evaluateWithObject:]): Corrected implementation.
* EOControl/EOQualifier.m: Added documentation
([EOQualifier +initialize]), (getKey()): Replace autorelease with
AUTORELEASE().
([EOQualifier -copyWithZone:]): RETAIN() instead of NSCopyObject().
([EOQualifier +variableWithKey:]): Corrected implementation.
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
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.
2003-02-04 15:17:07 +00:00
2003-02-04 Stephane Corthesy <stephane@sente.ch>
* Tools/eoutil.m: implemented.
* EOAndQualifier.m: replaced autorelease by AUTORELEASE
* EOClassDescription.m: added #include <gnustep/base/objc-gnu2next.h>
and note about subclassing NSClassDescription
* EOEditingContext.m: removed EOAccess inclusion; note that we need to
rewrite -faultForRawRow:entityNamed:editingContext: to break dependency
to EOAccess
* EOFault.m: implemented +doesNotRecognizeSelector:
* EOFaultHandler.m: added #include <objc/objc-class.h> and #include
<objc/Protocol.h>
* EOFetchSpecification.m: added #import <Foundation/NSDictionary.h>
* EOGenericRecord.h: declaration of -valueForKey: and
-takeValue:forKey: needs to be done only when !FOUNDATION_HAS_KVC
* EOGenericRecord.m: removed #import <EOAccess/EOEntity.h> and #import
<EOAccess/EORelationship.h>; added #include <objc/objc-class.h>;
declared +eoCalculateSizeWith:forArray:; corrected +initialize (doesn't
return a value); renamed +removeDestoyedObject: to
+removeDestroyedObject:; modified
-initWithEditingContext:classDescription:globalID: to no longer depend
on EOAccess via EOEntity; some methods need to be implemented only when
!FOUNDATION_HAS_KVC (else they are already correctly implemented in
NSObject), some others only when FOUNDATION_HAS_KVC
(-handleQueryWithUnboundKey: and handleTakeValue:forUnboundKey:); in
-smartTakeValue:forKey:, removed dependency to EOAccess via
EORelationship; corrected problem with macro NSDebugMLog, which should
be replaced by other macro anyway; modified -eoCalculateSizeWith: to no
longer depend on EOAccess via EOEntity
* EOGlobalID.m: added #include <stdio.h> and #include <string.h>; added
cast in +assignGloballyUniqueBytes:
* EOKeyComparisonQualifier.m: added casts
* EOKeyGlobalID.m: replaced retain by RETAIN
* EOKeyValueCoding.h: removed #import
<EOControl/EOKeyValueCodingBase.h>; added - (id)storedValueForKeyPath:
(NSString *)key; declared some methods only when !FOUNDATION_HAS_KVC;
declared hidden methods for MacOS X.
* EOKeyValueCoding.m: added #include <ctype.h>; implemented some
methods only when !FOUNDATION_HAS_KVC; corrected problem with macros
NSDebugMLog/NSWarnLog, which should be replaced by other macro anyway;
declared -[NSMutableDictionary(EOKeyValueCodingPrivate)
takeValue:forKeyPath:isSmart:]; corrected zombie in
-[NSMutableDictionary(EOKeyValueCoding) takeValue:forKeyPath:isSmart:]
* EOKeyValueQualifier: added casts
* EOMutableKnownKeyDictionary.m: added #warning about missing method;
moved method implementation to avoid warning
* EONSAddOns.m: added casts
* EOObjectStoreCoordinator.m: corrected problem with macro NSDebugMLog,
which should be replaced by other macro anyway
* EOQualifier.m: added #include <gnustep/base/GSObjCRuntime.h>;
corrected problem with macro NSDebugLog, which should be replaced by
other macro anyway; replaced retain by RETAIN; in -doesContain:, no
need to test against NSMutableArray class
* EOSortOrdering.m: replaced retain by RETAIN; avoid autoreleased
objects; replaced mutableCopy by initWithArray:copyItems:
2003-02-03 14:53:03 +00:00
2003-02-03 Stephane Corthesy <stephane@sente.ch>
* Postgres95Adaptor.m: made some changes to externalTypeNames (needs
to be reviewed completely!); avoided needless autoreleased object
* Postgres95Channel.m: avoided needless autoreleased object ; added
arg to NSDebugMLLog (should be replaced by other log macro); use
macros RETAIN, AUTORELASE; when invoking PQexec, added ending ";" to
statement (necessary for inserts, at least)
* Postgres95SQLExpression.m: replaced #import <EOAccess/EOAccess.h> by
smaller #imports; commented out use of external type 'datetime'
(obsolete?); corrected bug in +formatValue:forAttribute: (error when
escaping special characters); overloaded
+dropTableStatementsForEntityGroup: to append CASCADE (maybe this
should be done in EOSQLExpression class?), else it is not possible to
drop tables which contain foreign key constraints; overloaded
+prepareConstraintStatementForRelationship:sourceColumns:
destinationColumns: to append DEFERRABLE INITIALLY DEFERRED (maybe this
should be done in EOSQLExpression class?)
* Postgres95Values.h: made Postgres95Values inherit from NSObject, else
ObjC runtime doesn't like it and crashes!
* EOAdaptor.m: added #import <Foundation/NSData.h>; corrected bug when
instantiating adaptor: class name needs to be taken exclusively from
infoDictionary, because a framework's principalClass is indeterminate
(is it?); corrected var type; added empty implementation of
EOLoginPanel class (is the method named
"administraticeConnectionDictionaryForAdaptor:" correct? Shouldn't it
be "administrativeConnectionDictionaryForAdaptor:" ??)
* EOAttribute.m: added #include <string.h>; use -[NSTimeZone name]
instead of -[NSTimeZone timeZoneName] (also on GNUstep?)
* EODatabaseChannel.m: corrected bug with macro NSDebugMLog (which
should be replaced by other macro...); in -fetchObject, added support
for raw rows (works for me, but I'm not sure whether it is totally
correct: _fetchSpecifications ivar is used nowhere!); avoided use of
autoreleased objects; in
-_selectWithFetchSpecification:editingContext:, uncommented last part
to allow support for raw rows.
* EODatabaseContext.h: added #import <Foundation/NSDate.h>
* EODatabaseContext.m: #import <Foundation/NSKeyValueCoding.h> only
when FOUNDATION_HAS_KVC? ; added declaration of -entityForGlobalID:;
replaced some retain by RETAIN; in
objectsWithFetchSpecification:editingContext:, added support for raw
rows (adapted code of non raw rows => needs refactoring); added missing
cast; corrected bug with macro NSDebugMLog (which should be replaced by
other macro...)
* EODatabaseDatasource.m: added #import <Foundation/NSEnumerator.h>;
added declaration of
-_partialInitWithEditingContext:entityName:fetchSpecificationName:
* EOEntity.m: corrected bugs with lazy loading of ivars by using
_flags.updating, in -initWithPropertyList:owner:, and by using methods
instead of direct access to ivars; in -classProperties, corrected
problem with vars containing sometimes strings, sometimes
EOAttribute/EORelationship! (very weird way of lazy initialization...
Should be reviewed); added use of _flags.updating in -relationships and
-attributes; in -isPrimaryKeyValidInObject:, no longer tests against
[NSNull null], because [EONull null] == [NSNull null]; replaced some
retain by RETAIN; in -addAttribute:, -removeAttribute:,
-addRelationship: and -removeRelationship:, corrected nasty bug due to
mutableCopy: now we are independant of mutableCopy implementation (deep
or shallow copy), as implementation changed these last days and might
change again. Added -_setClassName: to allow modification without
calling willChange, when necessary (init); modified _setIsEdited to
test _flags.updating; in -awakeObject:fromInsertionInEditingContext:,
corrected conditions to create relationship (propagatesPrimaryKey has
nothing to do with it, whereas isMandatory is important)
* EOModel.m: added #include <gnustep/base/GSObjCRuntime.h> and #import
<Foundation/NSPathUtilities.h>; changed search strategy for models by
using NSSearchPathForDirectoriesInDomains(); replaced some retain by
RETAIN; avoided use of mutableCopy and copy
* EORelationship.m: replaced some retain by RETAIN; avoided use of
mutableCopy and copy
* EOSQLExpression.m: added declaration of +sqlExpressionWithEntity:;
added +foreignKeyConstraintStatementsForEntityGroup: and
+foreignKeyConstraintStatementsForEntityGroups:; in
+createTableStatementsForEntityGroup:, corrected call to listString; in
+schemaCreationStatementsForEntities:options:, reordered defaults[] to
allow correct SQL generation (you drop first, then create) and
corrected method to invoke for EOForeignKeyConstraintsKey; corrected
-columnTypeStringForAttribute: and -addCreateClauseForAttribute:
* EOSchemaGeneration.h: corrected documentation
* EOStoredProcedure.m: added #import <Foundation/NSEnumerator.h>
* EOUtilities.h: removed duplicate delcaration of -objectsOfClass:
* EOUtilities.m: added #import <EOControl/EOGenericRecord.h>; corrected
bug with macro NSDebugMLog (which should be replaced by other
macro...); corrected type casting; added type casting.
2003-02-02 08:07:30 +00:00
2003-02-02 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* 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 !
2003-02-01 15:19:56 +00:00
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
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
2003-01-21 David Ayers <d.ayers@inode.at>
2003-01-21 18:10:00 +00:00
* EOControl/EOQualifier.m ([EOQualifier +allQualifierOperators]):
([EOQualifier +relationalQualifierOperators]):
([EOQualifier +stringForOperatorSelector:]): fixed array
initialization and renamed 'contains' to 'doesContain'.
2003-01-16 14:48:09 +00:00
2003-01-16 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOObserver.m: Added implementation for EODelayedObserver
and EODelayedObserverQueue.
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
2003-01-16 David Ayers <d.ayers@inode.at>
2003-01-16 14:48:09 +00:00
* EOAdaptors/Postgres95/Postgres95Adaptor.m:
Added import of NSDebug.h/EODebug.h
Removed NSLog of connection information
* EOAdaptors/Postgres95/Postgres95Channel.m
* EOAdaptors/Postgres95/Postgres95Context.m
* EOAdaptors/Postgres95/Postgres95Expression.m
* EOAdaptors/Postgres95/Postgres95Value.m:
Added import of NSDebug.h/EODebug.h
* EOControl/EOControl.h:
Added import of EOUndoManager.h
* EOControl/EOObserver.m:
Added empty implementation for EOObserverProxy
2002-12-31 16:25:21 +00:00
2002-12-31 Mirko Viviani <mirko.viviani@rccr.cremona.it>
2002-12-31 16:34:32 +00:00
* EOControl/EOFault.m ([EOFault -editingContext]): simplified.
Converted NSDebug* to EOFLOGObjectLevel.
2002-12-31 16:25:21 +00:00
* 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
* added missing include, include config.h in all .m files.
* EOControl/EOEditingContext.m ([EOEditingContext -tryToSaveChanges]),
([EOEditingContext -saveChanges:]): use respondsToSelector:
2002-12-30 22:10:43 +00:00
2002-12-30 Markus Hitter <mah@jump-ing.de>
* EOAdaptors/Postgres95/Postgres95Channel.m ([Postgres95Channel
-describeTableNames]): implemented.
2002-12-30 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* 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.
2002-12-29 15:13:21 +00:00
2002-12-29 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EODatabaseContext.m ([EODatabaseContext -initializeObject:
row:entity:editingContext:]): set nil instead of EONull
* EOControl/EONull.m: included config.h
2002-12-17 21:33:59 +00:00
2002-12-17 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EOEntity.m ([EOEntityClassDescription
-inverseForRelationshipKey:]): Fixed to return a relationship name that
is a class property.
2002-12-14 08:10:44 +00:00
2002-12-14 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* 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.
2002-12-08 10:07:26 +00:00
2002-12-08 Mirko Viviani <mirko.viviani@rccr.cremona.it>
2002-12-08 17:59:43 +00:00
* EOAccess/EOEntity.m ([EOEntity -classDescriptionForInstances]):
retain newly created classDescription.
2002-12-08 10:07:26 +00:00
* 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)
2002-12-07 09:16:16 +00:00
2002-12-07 Mirko Viviani <mirko.viviani@rccr.cremona.it>
2002-12-08 10:07:26 +00:00
* EOAccess/EOEntity.m ([EOEntity -isPrimaryKeyValidInObject:]): check
for NSNull objects.
2002-12-07 09:16:16 +00:00
2002-12-06 20:09:34 +00:00
2002-12-06 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EOUtilities.h: added prototype.
2002-12-05 14:46:56 +00:00
2002-12-05 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* 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.
2002-12-04 13:35:09 +00:00
2002-12-04 Mirko Viviani <mirko.viviani@rccr.cremona.it>
2002-12-04 18:07:27 +00:00
* EOModeler/EOModelExtensions.m ([EOEntity -classAttributes]):
([EOEntity -classScalarAttributes]):
([EOEntity -classNonScalarAttributes]):
([EOEntity -classToManyRelationships]):
([EOEntity -classToOneRelationships]): fixed to use class properties.
2002-12-04 17:49:17 +00:00
* EOAccess/EOEntity.m ([EOEntity -initWithPropertyList:owner:]): read
<entityName>.fspec only if exists.
2002-12-04 17:15:18 +00:00
* EOControl/EOKeyValueCoding.m ([NSArray -valueForKeyPath:]):
implemented the case of invoking an aggregate function using a simple
key.
2002-12-04 13:35:09 +00:00
* EOControl/EOGenericRecord.m ([EOGenericRecord
-_infoForInstanceVariableNamed:retType:retSize:retOffset:]): renamed
GSObjCFindInstanceVariable in GSFindInstanceVariable
* config/postgres.m4: check in /usr/local/include and /usr/local/lib
* EOModeler/GNUmakefile: install headers in EOModeler/
2002-12-01 17:58:42 +00:00
2002-12-01 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EODatabase.m
o in -entityForObject: test for EONull or nil instead of just nil
* EOAccess/EODatabaseContext.m:
o in -valuesForKeys:object: test for EONull or nil instead of just nil
* EOControl/EOGenericRecord.m:
o replaced GSObjCFindVariable by GSObjCFindInstanceVariable
o replaced GSObjCGetValue by GSGetValue
o replaced GSObjCSetValue by GSSetValue
* EOAccess/EOSQLExpression.m:
o changed assertion message in -sqlStringForAttributeNamed:
* EOAccess/EOSQLQualifier.m:
o finished EOAndQualifier -schemaBasedQualifierWithRootEntity implementation
o done EOOrQualifier -schemaBasedQualifierWithRootEntity implementation
o modified EOKeyValueQualifier -schemaBasedQualifierWithRootEntity:
to use EONull for EONull value relationship attribute value
so it will make sql like is null instead of = NULL which
doesn't work on Postgresql.
2002-11-30 19:32:50 +00:00
2002-11-30 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EODatabaseContext.m
o logs
o changes in _primaryKeyForObject: to handle
inserted "child" of already existing object case
* EOControl/EODetailDataSource.m:
o implemented -description
2002-11-28 15:02:31 +00:00
2002-11-28 Richard Frith-Macdonald <rfm@gnu.org>
* EOAccess/EOEntity.m: Patch by David Ayers.
2002-11-28 15:34:15 +00:00
* EOAccess/EOExpressionArray.m: Update for latest GSObjCRuntime stuff.
* EOControl/EOGenericRecord.m: ditto
* Tools/Makefile.preamble: Fix library lookup for link
2002-11-28 15:02:31 +00:00
2002-11-27 Richard Frith-Macdonald <rfm@gnu.org>
* gdl2.make.in: simplify libraries ... let which_lib sort them out.
* Tools/GNUmakefile.preamble: ditto
2002-11-27 13:49:27 +00:00
2002-11-27 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EOModel.m:
o fixed typo in -entityNamed:
2002-11-27 06:44:53 +00:00
2002-11-27 Richard Frith-Macdonald <rfm@gnu.org>
* EOAccess/EOModel.h:
* EOAccess/EOModel.m: Appplied David Ayers patch for programmatic
model manipulation. Fixed typo. Use NSFileManager rather than
mkdir(). Tidied some use of autorelease for memory efficiency etc.
2002-11-27 10:00:34 +00:00
* EOControl/EOGenericRecord.m: update to use GSFindInstanceVariable()
2002-11-27 06:44:53 +00:00
2002-11-26 09:58:22 +00:00
2002-11-26 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EOEntity.m:
o implemented flattened relationship handling in
-EOEntity _parseRelationshipPath:
* EOAccess/EOAccessFault.m:
o fixed logs in -EOAccesFaultHandler dealloc
o added [super dealloc] in -EOAccesFaultHandler dealloc
o added logs in -EOAccessArrayFaultHandler dealloc
* EOAdaptors/Postgres95/Postgres95Channel.m:
o removed log
* EOAccess/EOAdaptorChannel.m
o Handle direct SQL query case in
-dictionaryWithObjects:forAttributes:zone:
* EOAccess/EOClassDescription.m
o implement some cases in -addObject:toBothSidesOfRelationshipWithKey:
* EOControl/EOGenericRecord.m:
o avoid infinit loop in -description
* EOAccess/EODatabaseContext.m
o implement some cases in -entitiesOnWhichThisEntityDepends:
o changed return type of -entitiesOnWhichThisEntityDepends:
2002-11-25 20:01:43 +00:00
2002-11-25 Richard Frith-macdonald <rfm@gnu.org>
Tagged all files as 'with-extensions'
Committed new versions of very many files with dependency on the
obsolete extensions library removed. gdl2 should now only need
the base library (or perhaps MacOS-X foundation plus a port of the
Additions library from the base library package, when someone wants
to do the port).
2002-11-24 16:07:32 +00:00
2002-11-24 Richard Frith-macdonald <rfm@gnu.org>
* EOAdaptors/Makefile.postamble: New file to clean configure
generated files.
* EOAdaptors/Postgres95/Makefile.postamble: New file to clean configure
generated files.
* EOAdaptors/Postgres95/Makefile.preamble: remove .. generated
automatically.
Fixes suggested by David Ayers
2002-11-18 22:26:26 +00:00
2002-11-18 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOKeyValueQualifier.m:
* EOControl/EOAndQualifier.m:
* EOControl/EOKeyComparisonQualifier.m:
* EOControl/EONotQualifier.m:
* EOControl/EOOrQualifier.m: remove references to EOAccess.
2002-11-16 07:26:40 +00:00
2002-11-16 Richard Frith-macdonald <rfm@gnu.org>
* EOAccess/EOExpressionArray.m: Correct reference to obsolete
behavior function call (removed from public api a few years back
and recently removed from internal code too).
* EOControl/EOFault.m: Remove GNU property list method no longer
used/nneeded.
2002-11-15 22:57:05 +00:00
2002-11-14 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAcces/EODatabaseDataSource.m:
o corrected bug in -description
* EOAdaptors/Postgres95/Postgres95SQLExpression.m
o change in +formatValue:forAttribute: to handle string value for dates
2002-11-14 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAdaptors/*, EOAccess/*, EOControl/*: removed some warnings.
2002-11-13 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAcces/EODatabaseContext.m:
o corrected bug
o logs
* EOAccess/EODatabaseOperation.m:
o -setDatabaseOperator: change to not update deleted objetcs
* EOAccess/EOEntity.m:
o -_attributesToFetch added exception handling
* EOAccess/EOSQLExpression:
o use sqlExpressionWithEntity instead of alloc/init
* EOControl/EOEditingContext.m:
o _processOwnedObjectsUsingChangeTable:deleteTable:
bug correction in new/existing value handling
o doc
* EOControl/EOGenericRecord.m:
o log changes
* EOControl/EOKeyValueCoding.m:
o added -takeStoredValue:forKeyPath:
o added -storedValuesForKeyPaths:
o corrected bug in NSArray -valueForKey:
o corrected bugs in NSArray -valueForKeyPath:
* EOAccess/EOUtilities.m
o handle nil value in rawRowsMatchingValue:forKey:entityNamed:
o handle nil value in objectsMatchingValue:forKey:entityNamed:
o handle nil value in objectWithPrimaryKeyValue:entityNamed:
* EOAccess/EOAttribute.m
o destroy docComment in -dealloc
* EOAdaptors/Postgres98/Postgres95Values.m:
o comment
o use stringWithCString.. instead of alloc/init/release
* EOControl/EOMultipleKnownKeyDictionary.h
o added -debugDescription
* EOControl/EONull.m:
o added -NSNull -valueForKey:
* EOAccess/EOQualifier.m:
o in getKey: autorelease key
o in -qualifierWithQualifierFormat:varargList:
user [NSMutableArray array] instead [NSMutableArray new]/DESTROY
to avoid memory leak if an exception is raised
2002-11-04 David Ayers <d.ayers@inode.at>
* EOControl/EOSortOrdering.m:
o changed -sortedArrayUsingKeyOrderArray:
* EOControl/EOQualifier.m:
o improved -qualifierWithQualifierFormat: parsing
2002-10-31 David Ayers <d.ayers@inode.at>
* EOControl/EOQualifier.m:
o improved -qualifierWithQualifierFormat: parsing
o added NSNumber -initWithString as EOQualiferExtra
* EOControl/EOKeyValueQualifier.m:
o changed -description
* EOControl/EOKeyComparisonQualifier.m:
o changed -description
2002-09-22 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* Makefile.postamble: install gdl2.make.
2002-09-22 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* configure.ac: added adaptors configuration.
* config/postgres.m4: check for postgres db.
* EOAdaptors/Postgres95/GNUmakefile.in: new file.
* EOAdaptors/Postgres95/Makefile.preamble.in: new file.
2002-09-20 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* configure.ac: new file.
* gdl2.make.in: new file.
* config.h.in: new file.
2002-09-20 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* Indented all the sources and removed many warnings.
* Moved EOCheapArray.m|h, EONSAddOns.m|h and EODebug.m|h to EOControl.
* Moved EOUtilities.m|h to EOAccess.
* Moved EOQualifierSQLGeneration in EOAccess/EOSQLQualifier
2002-06-03 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAdaptors/Postgres95/Postgres95SQLExpression.m:
o NSWarn -> NSWarnLog
* EOControl/EOKeyValueArchiver.m:
o added -isThereValueForKey: in EOKeyValueUnarchiver
* EOControl/EOKeyValueArchiver.h:
o added -isThereValueForKey: in EOKeyValueUnarchiver
* EOControl/EOSQLExpression.m:
o changes for usesDistincts
o logs
* EOAccess/EODatabaseChannel.m:
o fix for refetched objects
* EOAccess/EODatabaseContext.m:
o fixes in recordChangesInEditingContext
* EOAccess/EODatabaseDataSource.m:
o logs
* EOAccess/EONSAddOns.h/.m
o added NSArray -arrayExcludingObject:
o added NSArray -containsIdenticalObjectsWithArray:
* EOAccess/EORelationship.h/.m:
o added isBidirectional: and associated methods (for use with smartTakeValue:forKey:)
* EOControl/EOClassDescription.h/.m:
o added -relationshipNamed:
o added -anyRelationshipNamed:
* EOControl/EOGenericRecord.m:
o added -smartTakeValue:forKey:
* EOControl/EOObjectStoreCoordinator.m:
o logs
2002-05-14 Manuel Guesdon <mguesdon@orange-concept.com>
* EOControl/EOEditingContext.m:
o changes in -saveChangesInEditingContext: to avoid return in the middle of the method
o logs
* EOAccess/EODatabaseContext.m:
o add rollbackChanges on exception in -saveChangesInEditingContext:
o corrected bug in initializeObject:row:entity:editingContext:
o logs
* EOControl/EOKeyValueQualifier.m:
o implementation of flatten case in -schemaBasedQualifierWithRootEntity:
o logs
* EOControl/EODetailDataSource.m
o correct bugs by using -decodeObjectForKey: in -initWithKeyValueUnarchiver:
o changed _masterEntityName to _masterClassDescriptionName
o added -classDescriptionForObjects
o logs
* EOControl/EODetailDataSource.h:
o changed _masterEntityName to _masterClassDescriptionName
o added -classDescriptionForObjects
* EOControl/EODataSource.m:
o logs
* EOControl/EOGenericRecord.m:
o added -willChange call in _setValueForKey:object:selector:type:size:offset:
* EOControl/EOMutableKnownKeyDictionary.m:
o corrected bug in -containsObjectsNotIdenticalTo:
o logs
* EOAccess/EOSQLExpression.m:
o logs
* EOAdaptors/Postgres95/Postgres95SQLExpression.m:
o logs
o corrected bugs for empty strings in +formatValue:forAttribute:
* EOAccess/EODatabaseDataSource.m
o logs
* EOAccess/EOEntity.m
o logs
* EOControl/EOQualifier.m:
o logs
* EOControl/EOOrQualifier.m:
o logs
* EOControl/EOAndQualifier.m:
o logs
* EOControl/EOObserver.m:
o logs
* EOAccess/EODatabase.m:
o logs
o avoid fault access in -entityForObject:
2002-04-15 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EOFetchSpecification.m:
o changed -fetchSpecification into +fetchSpecification
* EOAccess/EOKeyValueCoding.m:
o logs
o corrected bug: added special case "count" in NSArray -valueForKeyPath:
* EOAccess/EOGenericRecord.m:
o logs
* EOControl/EODetailDataSource.h:
o added -initWithKeyValueUnarchiver:
* EOControl/EODetailDataSource.m:
o added -initWithKeyValueUnarchiver:
* EOControl/EOKeyValueArcher.m:
o added EOKeyValueArchivingContainer +keyValueArchivingContainer
o corrected not autorelease bug in -_objectForPropertyList:
o logs
* EOControl/EODatabaseDataSource.m:
o logs
2002-04-01 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EOModel.h:
o added +version
* EOAccess/EOStoredProcedure.h:
o added +storedProcedureWithPropertyList:owner:
* EOAccess/EOEntity.h:
o added +entityWithPropertyList:owner:
o added -setDocComment:
o added +entityClassDescriptionWithEntity:
* EOAccess/EOEntity.m:
o corrected bug in _keyMapForIdenticalKeyRelationshipPath: (dictionary construction)
* EOAccess/EOEntityPriv.h:
o retyped -_parseDescription:isFormat:arguments:;
* EOAccess/EORelationship.h:
o added +relationshipWithPropertyList:owner:
* EOAccess/EOAttribute.h:
o added +attributeWithPropertyList:owner:
o added -setInternalInfo:
o added -_normalizeDefinition:path:
* EOAccess/EOAttribute.m:
o use an id instead of a string for userInfo,...
o added -setInternalInfo:
* EOAccess/EOExpressionArray.h:
o added -valueForSQLExpression:
2002-04-01 Manuel Guesdon <mguesdon@orange-concept.com>
* EOControl/EODetailDataSource.h/.m:
o added +detailDataSourceWithMasterDataSource:detailKey:
* EOAccess/EODatbaseDataSource.m:
o changed allocations
* EOAccess/EODatabase.m:
o changed allocations
* EOAccess/EOEntity.m:
o changed allocations
o corrected not autorelease bug in EOEntity -classDescriptionForInstances
* EOControl/EOGlobalID.h/.m:
o added EOTemporaryGlobalID +temporaryGlobalID
* EOControl/EIEditingContext.m:
o changed allocations
* EOControl/EOKeyValueQualifier.m:
o changed allocations
* EOControl/EOObjectStoreCoordinator.m:
o changed allocations
* EOKeyComparisonQualifier.m:
o added +qualifierWithLeftKey:operatorSelector:rightKey:
* EONotQualifier.m:
o added +qualifierWithQualifier:
* EOQualifier.m:
o changed allocations
* EOAccess/EOAdaptorContext.h/.m:
o added +adaptorContextWithAdaptor:
* EOAdaptors/Postgres95/Postgres9Adaptor.m:
o changed allocations
* EOAdaptors/Postgres95/Postgres9Channel.m:
o changed allocations
* EOAdaptors/Postgres95/Postgres9Context.m:
o changed allocations
* EOAccess/EOModel.h/.m:
o added +model
* EOAccess/EOAdaptorChannel.h/.m
o added +adaptorChannelWithAdaptorContext:
* EOAdaptors/Postgres95/Postgres9Values.m:
o changed allocations
2002-03-29 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EODatabaseOperation.m
o logs
* EOAccess/EODatabaseContext.h/.m
o logs
o added +databaseContextWithDatabase:
o change allocations
* EOAccess/EORelationship.m
o logs
o corrected not autorelease bug in _foreignKeyForSourceRow:
o added +relationshipWithPropertyList:owner:
* EOAccess/EOJoin.h/.m:
o added +joinWithSourceAttribute:destinationAttribute:
* EOAccess/EOSQLExpression.m:
o added +sqlExpressionWithEntity:
* EOAccess/EOAttribute.m:
o added +attributeWithPropertyList:owner:
* EOAdaptors/Postgres95/Postgres95Channel.m
o logs
* EOAccess/EODatabaseChannel.m
o logs
o added +databaseChannelWithDatabaseContext:
* EOAccess/EOFault.m:
o logs
* EOAccess/EOFetchSpecification.m/.h
o added +fetchSpecification
* EOControl/EOUtilities.m:
o corrected not autorelease bug in -objectsMatchingValues:entityNamed:
o change qualifiers allocations
* EOAccess/EOAndQualifier.m:
o added EOAndQualifier +qualifierWithQualifierArray:
o added EOAndQualifier +qualifierWithQualifiers:
* EOAccess/EOOrQualifier.m:
o added EOOrQualifier +qualifierWithQualifierArray:
* EOAccess/EOQualifier.h
o added EOAndQualifier +qualifierWithQualifierArray:
o added EOOrQualifier +qualifierWithQualifierArray:
* EOAccess/EOEntity.m:
o changed EOMutableKnownKeyDictionary allocation in -_dictionaryForProperties
* EOAccess/EOMutableKnownKeyDictionary.h/.m:
o added +dictionaryFromDictionary:subsetMapping:
* EOAccess/EOModel.h/.m
o added +modelWithContentsOfFile:
o corrected not autorelease bug
o allocation changes
* EOAccess/EOModelGroup.m:
o Changed EOModel allocation
* EOAccess/EODatabase.h/.m:
o added +databaseWithModel:
* EOAccess/EOAccessFault.h/.m
o added EOAccessFaultHandler +accessFaultHandlerWithGlobalID:databaseContext:editingContext:
o added EOAccessArrayFaultHandler
+accessArrayFaultHandlerWithSourceGlobalID:relationshipName:databaseContext:editingContext:
* EOAccess/EODatabaseOperation.h/.m:
o added EODatabaseOperation +databaseOperationWithGlobalID:object:entity:
* EOAccess/EOAdaptorOperation.h/.m:
o added EOAdaptorOperation +adaptorOperationWithEntity:
* EOAccess/EODatabaseDataSource.m:
o allocation changes
* EOAccess/EOStoredProcedure.m:
o corrected not autorelease bug in -initWithPropertyList:owner:
2002-03-28 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EODatabaseChannel.m
o removed logs
o changed logs
* EOAdaptors/Postgres95/Postgres95Channel.m
o removed logs
* EOAccess/EORelationship.m:
o NSAssert
o added _docComment and associated methods
* EOAccess/EORelationship.h:
o added _docComment and associated methods
* EOAccess/EOSQLExpression.m:
o NSAssert
o logs
* EOAccess/EOEntity.m:
o doc
o logs
o added _docComment and associated methods
* EOAccess/EOEntity.h:
o added _docComment and associated methods
* EOAccess/EOModel.h/.m:
o added -adaptorClassname
o added _version and -version
o added _docComment and associated methods
* EOAccess/EOAttribute.h/.m:
o added _docComment and associated methods
* EOAccess/EOAdaptorChannel.m
o logs
* EOAdaptors/Postgres95/Postgres95SQLExpression.m:
o corrected bug in formatValue:forAttribute:
* added Tools/
2002-03-25 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/GNUmakefile:
o removed -SystemProjects System
o added -Declared EOAccess
* EOControl/GNUmakefile:
o removed -SystemProjects System
o added -Declared EOControl
* EOAdaptors/Postgres95/GNUmakefile:
o removed -SystemProjects System
o added -Declared EOAdaptors/PostgreSQL
* EOControl/EOGenericRecord.m: logs
* EOAccess/EODebug.h: added EOFLOGClassFnStartCond EOFLOGClassFnStopCond
* EOAccess/EODatabaseChannel.m: logs
* EOAccess/EORelationship.m:
o setDefinition
o corrected bug in _makeFlattenedInverseRelationship
* EOAccess/EOEntity.m
o logs
* EOControl/EOQualifier.h
o added qualifierWithKey:operatorSelector:value:
* EOControl/EOKeyValueQualifier.m:
o added qualifierWithKey:operatorSelector:value:
* EOAccess/EOModel.m:
o removed assert for non EOGenericRecord class in -_classDescriptionNeeded:
2002-03-07 Manuel Guesdon <mguesdon@orange-concept.com>
Too much changes
2001-04-10 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EOSQLExpression.m ([EOSQLExpression
+foreignKeyConstraintStatementsForRelationship:]): implemented.
2001-04-07 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOKeyValueCoding.m: import EOControl.h
* EOControl/EONull.m: likewise.
* EOAccess/EOModel.m ([EOModel -writeToFile:]): implemented.
([EOModel -encodeTableOfContentsInfoPropertyList:]): implemented.
* EOAccess/EORelationship.m ([EORelationship -setEntity:]): remove self
from previous entity.
([EORelationship -setDefinition:]): remove joins.
2001-01-12 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOModeler: new library.
* EOModeler/EOModelExtensions.m/.h: EOModeler categories needed by
eogenerator.
* EOControl/EOKeyValueCoding.m ([NSArray -valueForKey:]): fixed @x key.
2001-01-06 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOControl.h: defined FOUNDATION_HAS_KVC to use Foundation
key value coding.
* EOAccess/EOAttribute.m ([EOAttribute
-adaptorValueByConvertingAttributeValue:]): use EONull null object.
* EOAccess/EOSQLExpression.m ([EOSQLExpression -sqlStringForSelector:
value:]): likewise.
* EOControl/EOKeyValueCoding.m ([NSObject -takeValuesFromDictionary:]):
([NSObject -takeStoredValuesFromDictionary:]): likewise.
defined FOUNDATION_HAS_KVC to use Foundation key value coding.
2001-01-03 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EODatabaseContext.m ([EODatabaseContext
-faultForGlobalID:editingContext:]): use the correct class property
array.
2000-12-23 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EOEntity.m ([EOEntity -isPrimaryKeyValidInObject:]): fixed.
Do not returns from inside an exception handler.
* EOAccess/EODatabaseContext.m ([EODatabaseContext
-prepareForSaveWithCoordinator:editingContext:]): bug fix. Do not
release an autoreleased object.
* EOAccess/EODatabaseDataSource.m ([EODatabaseDataSource
-fetchSpecificationForFetch]): fixed fetch qualifier.
* EOControl/EOKeyValueQualifier.m ([EOKeyValueQualifier
-copyWithZone:]): do not copy _value.
* EOControl/EOAndQualifier.m ([EOAndQualifier -copyWithZone:]): use
correct zone.
* EOControl/EOOrQualifier.m ([EOOrQualifier -copyWithZone:]): likewise.
* EOControl/EOKeyComparisonQualifier.m ([EOKeyComparisonQualifier
-copyWithZone:]): likewise.
2000-12-20 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EODatabaseContext.m ([EODatabaseContext
-_recordChangesForObjects:operator:]): create dbOperation with the
correct entity for to-many relationship objects.
2000-12-11 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EOModel.m ([EOModel -_registerClassDescForClass:]):
check for NULL _entitiesByClass
([EOModel -dealloc]): release _entitiesByClass
([EOModel -removeEntity:]): bug fix.
* EOAdaptors/Postgres95/Postgres95Channel.m ([Postgres
-_evaluateCommandsUntilAFetch]): raise an exception on error.
2000-12-10 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOKeyValueCoding.m (newGetStoredBinding): fixed value of
class variable.
2000-12-09 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EOModel.m ([EOModel -_registerClassDescForClass:]): fixed
class description registration.
([EOModel -_registerClassDescForEntityName:]): likewise.
([EOModel -addEntity:]), ([EOModel -removeEntity:]): save EOEntity in
_entitiesByClass.
2000-12-08 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EODatabaseContext.m ([EODatabaseContext
-prepareForSaveWithCoordinator:editingContext:]): get the object value
if the key is a class property.
Added code to handle propagatesPrimaryKey for to many relationships.
Fixed code that merges pk values.
* EOControl/EOClassDescription.m ([EOClassDescription -awakeObject:
fromInsertionInEditingContext:]): use NSMutableArray for to many
relationships.
2000-12-08 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EODatabaseContext.m ([EODatabaseContext -faultForGlobalID:
editingContext:]): set only class property's object values.
([EODatabaseContext -faultForRawRow:entityNamed:editingContext:]):
likewise.
([EODatabaseContext -_recordChangesForObjects:operator:]): likewise.
([EODatabaseContext -batchFetchRelationship:forSourceObjects:
editingContext:]): get key value from snapshot rather than in the
object.
2000-12-06 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOKeyValueCoding.m ([NSObject
-handleQueryWithUnboundKey:]): raise an EOUnknownKeyException with
the correct userInfo.
([NSObject -handleTakeValue:forUnboundKey:]): likewise.
* EOAccess/EOEntity.m ([EOEntity -isPrimaryKeyValidInObject:]):
check valueForKey: exception.
* EOControl/EOClassDescription.m ([NSObject -changesFromSnapshot:]):
check for EONull values as toMany relationship array.
* EOControl/EOEditingContext.m ([EOEditingContext
-processRecentChanges]): check for EONull values in dictionary.
* EOAccess/EOModel.m ([EOModel -initWithPropertyList:owner:]): check
for an exception in the entity awakeWithPropertyList method.
* EOAccess/EOJoin.m ([EOJoin -initWithSourceAttribute:
destinationAttribute:]): raise exception if source or destination is
nil.
2000-12-05 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EODatabaseChannel.m ([EODatabaseChannel -fetchObject]):
fixed refreshing objects.
* EOControl/EOKeyValueCoding.m ([NSArray -valueForKey:]): fixed array
and string selector.
* EOAccess/EOUtilities.m ([EOEditingContext -objectsForEntityNamed:]):
([EOEditingContext -primaryKeyForObject:]), ([EOEditingContext
-entityForObject:]): implemented.
* EOAccess/EODatabaseContext.m ([EODatabaseContext
-prepareForSaveWithCoordinator:editingContext:]): lock the database
context.
([EODatabaseContext -commitChanges]), ([EODatabaseContext
-rollbackChanges]): unlock the database context
([EODatabaseContext -registerLockedObjectWithGlobalID:]): fixed zone
size.
2000-12-04 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EODatabaseContext.m ([EODatabaseContext
-_recordChangesForObjects:operator:]): when updating relationship keys
look also in the object snapshot.
2000-12-03 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EOSQLExpression.m ([EOSQLExpression
-sqlStringForKeyValueQualifier:]): bug fix.
* EOAccess/EOUtilities.m ([EOEditingContext -objectsMatchingValue:
forKey:entityNamed:]): implemented.
2000-12-01 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EOUtilities.m/.h: new files.
* EOAccess/EOAccess.h: addes EOUtilities.h
2000-11-23 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOEditingContext.m ([EOEditingContext
-initializeObject:withGlobalID:editingContext:]): ensure that the next
'willChange' notification will be processed for the initialized object.
* EOAccess/EOEntity.m ([EOEntity -globalIDForRow:]): fixed globalID
values order for compound PKs.
2000-11-22 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAccess/EODatabaseOperationPriv.h: new file.
* EOAccess/EODatabaseOperation.m ([EODatabaseOperation
-_setGlobalID:]): new method.
* EOAccess/EODatabaseContext.m ([EODatabaseContext
-prepareForSaveWithCoordinator:editingContext:]): fixed propagates
primary key code.
([EODatabaseContext -_recordChangesForObjects:operator:]): in toOne rel
discard PK to PK joins. Discard 'empty' toOne rels.
([EODatabaseContext -_setGlobalID:forDatabaseOperation:): new method.
It replaces the globalID for the gived operation.
* EOAccess/EORelationship.m ([EORelationship
-initWithPropertyList:owner:]): check for 'propagatesPrimaryKey'.
* EOAccess/EOSQLExpression.m ([EOSQLExpression
-addOrderByAttributeOrdering:]): use compare selector defines. Call
-sqlStringForAttributeNamed: for the sortOrdering key.
2000-11-19 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOFault.m ([EOFault +makeObjectIntoFault:withHandler:]):
do not turn into fault the nil object.
* EOControl/EOEditingContext.m ([EOEditingContext
-refaultObject:withGlobalID:editingContext:]): does nothing if objects
is nil.
* EOAccess/EODatabaseContext.m ([EODatabaseContext
-refaultObject:withGlobalID:editingContext:]): likewise.
([EODatabaseContext -refaultObject:withGlobalID:editingContext:]): does
not remove the snapshot.
([EODatabaseChannel -fetchObject]): fix for refreshing object.
* EOControl/EOSortOrdering.m ([NSMutableArray
-_sortUsingKeyOrder:fromIndex:count:]): use defined value for compare
selectors. Fix when aValue or bValue are nil.
([EONull -compareAscending:]), ([EONull -compareDescending:]),
([EONull -compareCaseInsensitiveAscending:]): ([EONull
-compareCaseInsensitiveDescending:]): if value to be compared is be
treat it as EONull.
2000-11-18 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOEditingContext.m ([EOEditingContext
-processRecentChanges]): get toOne and toMany keys from object instead
of the editingContext.
* EOAccess/EODatabaseContext.m ([EODatabaseContext
-_recordChangesForObjects:operator:]): new method. Fixed foreign key
update for inserted objects of toOne relationships. Fixed dictionary
and foreign key update for toMany relationships.
([EODatabaseContext -recordChangesInEditingContext]): moved code into
-_recordChangesForObjects:operator: and check changes also in inserted
objects.
([EODatabaseContext -_dbOperationWithObject:operator:]): new method.
Find db operation for the given object and operator.
([EODatabaseContext -commitChanges]), ([EODatabaseContext
-rollbackChanges]): reset ivars if no transaction in progress.
2000-11-16 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOEditingContext.m ([EOEditingContext
-_handleObjectsChangedInStoreNotification:]): refault updated objects.
* EOAccess/EODatabaseChannel.m ([EODatabaseChannel -fetchObject]):
fixed notification for refreshed objects.
* EOAccess/EOSQLExpression.m ([EOSQLExpression
-sqlStringForAttribute:]): fix id attribute is derived.
* EOAccess/EOEntity.m ([EOEntity -setAttributesUsedForLocking:]): fix
release of the array when no valid attributes are found.
([EOEntity -setPrimaryKeyAttributes:]): likewise.
* EOAccess/EODatabase.m ([EODatabase -forgetSnapshotsForGlobalIDs:]):
([EODatabase -forgetSnapshotForGlobalID:]): use defined userInfo string
instead of an hardcoded one.
2000-11-05 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOSortOrdering.m ([NSArray
-sortedArrayUsingKeyOrderArray:]): implemented.
([NSMutableArray -sortUsingKeyOrderArray:]): not fully implemented.
([NSMutableArray -_sortUsingKeyOrder:fromIndex:count:]): modified
gnustep-base shell sort.
([EOSortOrdering -initWithCoder:]): fixed.
([EONull -compareAscending:]): implemented.
([EONull -compareDescending:]): implemented.
([EONull -compareCaseInsensitiveAscending:]): implemented.
([EONull -compareCaseInsensitiveDescending:]): implemented.
* EOAdaptors/Postgres95/Postgres95Channel.m ([Postgres
-_describeResults]): does not coerce attribute className.
* EOAdaptors/Postgres95/Postgres95Values.m: fixed pg calendar format.
* EOAdaptors/Postgres95/Postgres95SQLExpression.m ([Postgres -assembleSelectStatementWithAttributes:lock:qualifier:fetchOrder:selectString:columnList:tableList:whereClause:joinClause:orderByClause:lockClause:]): does not return
mutableCopy of the string.
([Postgres +formatValue:forAttribute:]): implemented. Added code from
Turbocat's development.
* EOAccess/EOSQLExpression.m: does not return mutableCopy of a string.
([EOSQLExpression +formatValue:forAttribute:]): return value unchanged.
([EOSQLExpression -sqlStringForValue:attributeNamed:]): bug fix ?
moved code from +[formatValue:forAttribute:]
* EOControl/EOAndQualifier.m ([EOAndQualifier
-sqlStringForSQLExpression:]): doesn't return mutableCopy of a string.
* EOControl/EOOrQualifier.m ([EOOrQualifier
-sqlStringForSQLExpression:]): likewise.
* EOControl/EODetailDataSource.m ([EODetailDataSource
-initWithMasterClassDescription:detailKey:]): set
masterClassDescription.
* EOAccess/EOSQLExpression.m
([EOSQLExpression -addCreateClauseForAttribute:]):
([EOSQLExpression -allowsNullClauseForConstraint:]):
([EOSQLExpression -columnTypeStringForAttribute:]):
([EOSQLExpression +dropTableStatementsForEntityGroup:]):
([EOSQLExpression +createTableStatementsForEntityGroup:]):
([EOSQLExpression +primaryKeyConstraintStatementsForEntityGroup:]):
([EOSQLExpression +primaryKeySupportStatementsForEntityGroup:]):
([EOSQLExpression +dropPrimaryKeySupportStatementsForEntityGroup:]):
([EOSQLExpression +createTableStatementsForEntityGroups:]):
([EOSQLExpression +dropTableStatementsForEntityGroups:]):
([EOSQLExpression +primaryKeyConstraintStatementsForEntityGroups:]):
([EOSQLExpression +primaryKeySupportStatementsForEntityGroups:]):
([EOSQLExpression +dropPrimaryKeySupportStatementsForEntityGroups:]):
([EOSQLExpression +appendExpression:toScript:]):
([EOSQLExpression +schemaCreationScriptForEntities:options:]):
([EOSQLExpression +schemaCreationStatementsForEntities:options:]):
([EOSQLExpression -prepareConstraintStatementForRelationship:
sourceColumns:destinationColumns:]):
([EOSQLExpression +createDatabaseStatementsForConnectionDictionary:
administrativeConnectionDictionary:]):
([EOSQLExpression +dropDatabaseStatementsForConnectionDictionary:
administrativeConnectionDictionary:]):
([EOSQLExpression +selectStatementForContainerOptions]): implemented.
* EOAccess/EOEntity.m ([EOEntity -primaryKeyRootName]): bug fix: calls
-primaryKeyRootName on the _parent entity instead of -externalName.
* EOAccess/EOSchemaGeneration.h: new file.
* EOAccess/EOAccess.h: added EOSchemaGeneration.h
* EOAccess/EOModel.m ([EOModel -initWithContentsOfFile:]):,
([EOModel -initWithTableOfContentsPropertyList:path:]): fixed _name and
_path.
([EOModel -initWithPropertyList:owner:]): use _path instead of _name.
* EOAccess/EOModelGroup.m ([EOModelGroup +globalModelGroup]): search
models in bundles and frameworks.
* EOAccess/EOAdaptor.m ([EOAdaptor +adaptorWithName:]): changed adaptor
from bundle to framework. Looks for <name>EOAdaptor.framework
([EOAdaptor -createDatabaseWithAdministrativeConnectionDictionary:]):
([EOAdaptor -dropDatabaseWithAdministrativeConnectionDictionary:]):
new methods.
* EOAccess/EOAdaptor.h: added include file
* EOAccess/GNUmakefile: added LIBRARIES_DEPEND_UPON
* EOControl/GNUmakefile: Likewise.
2000-10-05 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EODatabaseChannel.m: added NSDebugMLog and NSAssert
* EOAccess/EODatabaseDataSource.m: added NSDebugMLog and NSAssert
* EOAccess/EOEntity.m: added NSDebugMLog and NSAssert
* EOAccess/EOModel.m: modified -init
* EOControl/EOFetchSpecification.h/.m: added EOKeyValueUnarchiver support
* EOControl/EOKeyValueArchiver.h/.m: implemented EOKeyValueUnarchiver
* EOControl/GNUmakefile: added EOKeyValueArchiver
2000-09-28 Manuel Guesdon <mguesdon@orange-concept.com>
* EOAccess/EODatabaseContext.m: added NSDebugMLog and NSAssert
* EOAccess/EODatabaseChannel.m: added NSDebugMLog and NSAssert
* EOAdaptors/Postgres95/Postgres95Channel.m : added NSDebugMLog
and NSAssert
* EOAccess/EODatabase.m: added NSDebugMLog and NSAssert
2000-09-24 Manuel Guesdon <mguesdon@orange-concept.com>
* config.mak: added include directories in POSTGRES95_CFLAGS
2000-09-23 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOControl/EOQualifier.m (getKey): fixed pointer in key-value parsing.
2000-09-17 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* EOAdaptors/Postgres95/GNUmakefile: remove Postgres95Exceptions.h
2000-09-17 Mirko Viviani <mirko.viviani@rccr.cremona.it>
Patches by David Wetzel <dave@turbocat.de>
* EOAccess/EOAdaptorContext.m ([EOAdaptorContext -initWithAdaptor:]):
set default debug.
* EOAccess/EOModel.m ([EOModel +findPathForModelNamed:]): look also
in the current dir.
* EOControl/EOObjectStoreCoordinator.m ([EOObjectStoreCoordinator
-objectStoreForGlobalID:]), ([EOObjectStoreCoordinator
-objectStoreForObject:]), ([EOObjectStoreCoordinator
-objectStoreForFetchSpecification:]): bug fix: changed notification
object.