Commit graph

219 commits

Author SHA1 Message Date
David Ayers
cd0f130fc7 * EOAccess/EOEntity.m: Remove unnecessary include.
(-setClassProperties:, -setPrimaryKeyAttributes:)
        (-setAttributesUsedForLocking:): Remove unnecessary casts.


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


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20735 72102866-910b-0410-8b05-ffd578937521
2005-02-16 15:48:17 +00:00
David Ayers
b9a5ba95a1 * EOControl/EOGenericRecord.m (-storedValueForKey:)
(-takeStoredValue:forKey:, -takeValue:forKey:, valueForKey):
        Use GSSelectorFromName instead of sel_get_any_uid.  Omit test
        to islower.  Format according to coding standards.
        * EOControl/EOKeyValueCoding.m (-takeValue:forKeyPath:isSmart:)
        Use unsigned for index bookkeeping.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20733 72102866-910b-0410-8b05-ffd578937521
2005-02-16 14:06:01 +00:00
David Ayers
d6075af06e * EOControl/EOMutableKnownKeyDictionary.m
([EOMKKDInitializer-arrayMappingForKeys:]): Correct call to
        GDL2ObjectAtIndexWithImp.
        ([EOMKKDInitializer-subsetMappingForSourceDictionaryInitializer:
        sourceKeys:destinationKeys:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20732 72102866-910b-0410-8b05-ffd578937521
2005-02-16 11:03:28 +00:00
David Ayers
e3a74b3562 * EOControl/EOPriv.h/m (GDL2_shellPatternCharacterSet): Remove.
(GDL2PrivInit): Remove usage of GDL2_shellPatternCharacterSet.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20731 72102866-910b-0410-8b05-ffd578937521
2005-02-16 08:28:27 +00:00
David Ayers
c16e28c931 * EOControl/EONSAddOns.h/m
([NSString-hasShellPatternCharacter]): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20730 72102866-910b-0410-8b05-ffd578937521
2005-02-16 08:11:57 +00:00
David Ayers
aff14039ef * EOControl/EOClassDescription.m ([NSObject-snapshot]):
Return valid dictionary for EONull.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20729 72102866-910b-0410-8b05-ffd578937521
2005-02-16 06:37:12 +00:00
David Ayers
1913b6dd89 * EOAdaptors/Postgres95/Postgres95SQLExpression.m
(externalNameQuoteCharacter): Remove.


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


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20723 72102866-910b-0410-8b05-ffd578937521
2005-02-15 21:29:24 +00:00
David Ayers
7a683c1680 * EOControl/EONull.h/m ([NSObject isEONull], [NSObject isNotEONull])
(isNilOrEONull): Remove.
        * EOControl/EOPriv.h (_isNilOrEONull): Make static inline
	function.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20718 72102866-910b-0410-8b05-ffd578937521
2005-02-14 17:44:00 +00:00
David Ayers
9c3fc328b8 * EOControl/EOEditingContext.h/m (_objectBasedChangeInfoForGIDInfo:)
Only generate an entry for objects that the reciever actually
        maps.
        (-recordForGID:, -recordForObject:) Remove unused undocumented
        methods.
        (-updatedObjects, -insertedObjects, -deletedObjects):
	Reimplement.
        (-unprocessedObjects, -unprocessedInfo, -pendingInfo)
        (-hasUnprocessedChanges): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20715 72102866-910b-0410-8b05-ffd578937521
2005-02-14 15:09:34 +00:00
David Ayers
2d006a1535 * EOControl/EOClassDescription.m
(-dictionaryForInstanceProperties): Remove casts.
        ([NSObject-shallowCopy], [NSObject-snapshot])
        ([NSObject-updateFromSnapshot:]): Ditto.
        ([NSObject-validateValue:forKey:]): Correct key determination and
        use GSSelectorFromName instead of sel_get_any_uid.
        ([NSObject-addObject:toPropertyWithKey:]): Use GSSelectorFromName
        instead of sel_get_any_uid.  Minor optimization.
        ([NSObject-removeObject:fromPropertyWithKey:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20711 72102866-910b-0410-8b05-ffd578937521
2005-02-14 14:24:46 +00:00
David Ayers
985f02b360 * EOControl/EOCheapArray.h/m (-shallowCopy): Correct signature.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20710 72102866-910b-0410-8b05-ffd578937521
2005-02-14 12:24:07 +00:00
David Ayers
d30af1a4aa * EOControl/EOCheapArray.h/m (-initWithArray:): Correct
signature and only initialize instance variable if call to super init
	was successfull.


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


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


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


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


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20687 72102866-910b-0410-8b05-ffd578937521
2005-02-11 17:31:29 +00:00
David Ayers
2cb429235f * EOControl/EOEditingContext.m (_globalIDChanged:): Make
assert more accurate.
        (-_invalidatedAllObjectsInStore:): Implement.
        (+setUsesContextRelativeEncoding:): Implement.
        (+usesContextRelativeEncoding): Implement.
        (+initialize): Set default value of
	usesContextRelativeEncoding depending on whether we are a
	gsweb application.

        * EOControl/EOObjectStoreCoordinator.m
        (_invalidatedAllObjectsInSubStore:): Implement.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20682 72102866-910b-0410-8b05-ffd578937521
2005-02-10 12:52:15 +00:00
Matt Rice
42dcaabf41 * EOControl/EOEditingContext.m (-_globalIDChanged:): Add key
to the snapshot dict before removing the temporary gid. Assert
        that the temporary gid and the new gid are not equal.


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


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20678 72102866-910b-0410-8b05-ffd578937521
2005-02-09 13:26:08 +00:00
David Ayers
310750bd82 * EOControl/EOEditingContext.m
(-_objectBasedChangeInfoForGIDInfo:): Make a little more gdb
        friendly.


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


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


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20674 72102866-910b-0410-8b05-ffd578937521
2005-02-08 14:02:32 +00:00
David Ayers
cc0706bf5c * EOControl/EOObjectStoreCoordinator.m
(requestStoreForGlobalID:fetchSpecification:object):
        Add all information to the notfication.
        (-invalidateObjectsWithGlobalIDs:): Reimplement via map table.
        (-lockObjectWithGlobalID:editingContext:): Implement.
        (-isObjectLockedWithGlobalID:editingContext:): Implement.

        * EOControl/EOObserver.m (+addObserver:forObject:): Cairify
        documentation.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20658 72102866-910b-0410-8b05-ffd578937521
2005-02-03 18:32:57 +00:00
David Ayers
2e4a21ae91 * EOControl/EOFetchSpecification.h/m
(allVariablesRequiredFromBindings): Rename to
        requiresAllQualifierBindingVariables.
        (-setRequiresAllQualifierBindingVariables:)
        (-requiresAllQualifierBindingVariables): Implement.
        (-setAllVariablesRequiredFromBindings:)
        (-allVariablesRequiredFromBindings): Deprecate.
        Update various setter methods to make them promotion safe.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20657 72102866-910b-0410-8b05-ffd578937521
2005-02-03 18:24:07 +00:00
David Ayers
246b40bc6a Reimplementation of processRecentChanges handling. (see ChangeLog)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20656 72102866-910b-0410-8b05-ffd578937521
2005-02-03 18:19:29 +00:00
David Ayers
556940e16b * EOAdaptors/Postgres95/Postgres95Adaptor.m
(externalTypeNames): Add new types.


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


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


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


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


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20642 72102866-910b-0410-8b05-ffd578937521
2005-02-01 17:23:05 +00:00
David Ayers
780853a70b * EOControl/EOEditingContext.h/m
(setDefaultFetchTimestampLag:, defaultFetchTimestampLag):
        Implemented.


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


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


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20617 72102866-910b-0410-8b05-ffd578937521
2005-01-26 13:38:47 +00:00
David Ayers
352bb53ee8 * EOControl/EOQualifer.m (getKey): Allow literal numbers
without class declarations.  Reported by Dirk Lattermann.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20595 72102866-910b-0410-8b05-ffd578937521
2005-01-22 15:04:08 +00:00
David Ayers
b8a3e8575a * EOAdaptors/Postgres95/Postgres95Channel.m
([-_describeBasicEntityWithName:forModel:]): Ignore droped
        columns.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20594 72102866-910b-0410-8b05-ffd578937521
2005-01-22 10:20:35 +00:00
Matt Rice
fbc8775435 2004-11-23 Matt Rice <ratmice@yahoo.com>
* EOControl/EOQualifier.m ([-filteredArrayUsingQualifier]): Handle
        nil qualifier argument.


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

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


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


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

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


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

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


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20279 72102866-910b-0410-8b05-ffd578937521
2004-11-02 10:43:58 +00:00
David Ayers
24fefa0924 * EOInterface/EODetailSelectionAssociation.h/m: New files.
* EOInterface/EOMasterCopyAssociation.h/m: Ditto.
        * EOInterface/EOMasterDetailAssociation.h/m: Ditto.
        * EOInterface/EOMasterPeerAssociation.m: Ditto.
        * EOInterface/EOMatrixAssociation.h/m: Ditto.
        * EOInterface/EOPickTextAssociation.h/m: Ditto.
        * EOInterface/EOPopUpAssociation.h/m: Ditto.
        * EOInterface/EORadioMatrixAssociation.h/m: Ditto.
        * EOInterface/EORecursiveBrowserAssociation.h/m: Ditto.
        * EOInterface/EOTextAssociation.h/m: Ditto.
        * EOInterface/EODeprecated.h: Ditto.
        * EOInterface/EOInterface.h: Added new header files.
        * EOInterface/GNUmakefile: Added new files.

        * EOInterface/EODisplayGroup.m: Update includes.
        (setSortOrdering:, sortOrdering): Add deprecated methods.
        * EOInterface/EOAssociation.h: Remove redundant include.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20239 72102866-910b-0410-8b05-ffd578937521
2004-10-20 21:32:06 +00:00
David Ayers
ec1b5b8321 Correct ChangeLog entries.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20233 72102866-910b-0410-8b05-ffd578937521
2004-10-17 21:10:17 +00:00
David Ayers
2854281dc9 * EOInterface/EOComboBoxAssociation.h/m: New files.
* EOInterface/EOControlAssociation.h/m: Ditto.
        * EOInterface/EOGenericControlAssociation.m: Ditto.
        * EOInterface/EOActionCellAssociation.m: Ditto.
        * EOInterface/NSImage+Additions.m: Ditto.
        * EOInterface/EOInterface.h: Added new headers.
        * EOInterface/GNUmakefile: Use new files.  Remove superfluous
        header files directory variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20232 72102866-910b-0410-8b05-ffd578937521
2004-10-17 20:27:26 +00:00
David Ayers
59d8cea7d7 * EOInterface/EOActionAssociation.h/m: New files.
* EOInterface/EOActionInsertionAssociation.h/m: Ditto.
        * EOInterface/EOColumnAssociation.h/m: Ditto.
        * EOInterface/EOTableViewAssociation.m: Ditto.
        * EOInterface/EOInterface.h: Added new headers.
        * EOInterface/GNUmakefile: Use new files.
        * EOInterface/EOAssociation.m: (-[debugDescription]): Remove
        debug method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20229 72102866-910b-0410-8b05-ffd578937521
2004-10-16 16:45:40 +00:00
David Ayers
b0c3064537 * EOInterface/EOAssociation.h/m: New files.
* EOInterface/EOInterface.h: Add EOAssocitaion.
        * EOInterface/GNUmakefile: Ditto.
        * EOInterface/EODisplayGroup.h: Add missing forward
        * declaration.
        * EOInterface/EODisplayGroup.m: ([-insertObjectAtIndex]):
        avoid warning.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20226 72102866-910b-0410-8b05-ffd578937521
2004-10-15 17:31:28 +00:00
David Ayers
271ea5171d * EOInterface: New directory.
* EOInterface/GNUmakefile: New file.
        * EOInterface/Makefile.preamble: Ditto.
        * EOInterface/EOInterface.h: Ditto.
        * EOInterface/EODisplayGroup.h: Ditto.
        * EOInterface/EODisplayGroup.m: Ditto.


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


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20202 72102866-910b-0410-8b05-ffd578937521
2004-10-06 22:45:21 +00:00