.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
(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
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
awakeObject:fromInsertionInEditingContext:]): Only process
class properties. Remove inactive code. Document.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20166 72102866-910b-0410-8b05-ffd578937521
(-[setExternalQuery:],-[setClassName:],-[setDocComment]): Use
ASSIGNCOPY instead of ASSIGN to deal with mutable strings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20121 72102866-910b-0410-8b05-ffd578937521
implementation of GCObject as it isn't safe to copy
EOAttributes.
* EOAccess/EOEntity.m (-[addAttribute:]); Use NSAsserts to check
integrity of parameters. Insure that attribute is not used by
other entity or stored procedure.
(-[_setModel:]): Rename from -setModel:. Assert that entity
is not used by another model.
* EOAccess/EOEntityPriv.h (-[_setModel:]): Rename from
-setModel:.
* EOAccess/EOModel.m (-[_addEntity:]): Use -_setModel: instead
of -setModel:.
(-[removeEntity:]): Ditto.
(-[addEntity:)): Use NSAssert to insure that entity name is
unique and that the entity is not being used by other mode. Use
-_setModel: instead of -setModel:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20032 72102866-910b-0410-8b05-ffd578937521
(-[_addEntity:]): Set model via public API.
* EOAccess/EOEntityPriv.h (-[_setModel:]): Remove.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20027 72102866-910b-0410-8b05-ffd578937521
(-[setDefinition:]): Allow definition to unset.
(-[setEntity:]): Mark both old and new entity as edited.
* EOAccess/EOStoredProcedure.m
(-[initWithPropertyList:]): Make return type explicit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20024 72102866-910b-0410-8b05-ffd578937521
* EOAccess/EOEntity.m
(-[EOModel _updateCache]): Declare private EOModel method.
(-[setName:]): Insure model updates its cache.
(-[setModel]): Set instance variable directly without
retaining it.
(-[_setModel]): Remove.
(-[gcDecrementRefCountOfContainedObjects]): Do not decrement
backward reference to owning model.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20023 72102866-910b-0410-8b05-ffd578937521
* EOAccess/EOAttribute.m (_parent, -[setParent:]): Do not
retain backward reference.
(-[setName:): Mark as editited if parent is an entity.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20022 72102866-910b-0410-8b05-ffd578937521
([EOAttribute initialize]): Implement class caching.
([EOAttribute *]): Use cached classes.
([EOAttribute adaptorValueByConvertingAttributeValue:]):
Only convert attributes when necessary.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19336 72102866-910b-0410-8b05-ffd578937521
Return unique names if multiple Adaptors are found. Document.
Reported by Matt Rice <ratmice@yahoo.com>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19173 72102866-910b-0410-8b05-ffd578937521
name implicitly) of the receiver. Create backup file when
necessary after removing the potentially existing backup file.
Raise NSInvalidArgumentExceptions upon failures. Add support
for .eomodel files. Document.
([EOModel _verifyBuiltEntityObject:named:]): Add support for
.eomodel files.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19129 72102866-910b-0410-8b05-ffd578937521
Create single global model group and cache it to allow
persistant manual adding of models.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18961 72102866-910b-0410-8b05-ffd578937521
as requested by Marcus Mueller <znek@mulle-kybernetik.com>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18856 72102866-910b-0410-8b05-ffd578937521
Only register panel if it was actually created.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18640 72102866-910b-0410-8b05-ffd578937521
Maintain instances on a per class basis as reported by Matt Rice.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18639 72102866-910b-0410-8b05-ffd578937521
administrative key handling.
([EOAdaptor sharedLoginPanelInstance]): Implemented.
* EOAccess/EOSQLExpression.m ([EOSQLExpression
_administrativeDatabaseStatementsForSelector:forEntityGroup:],
[EOSQLExpression _dropDatabaseStatementsForEntityGroups:],
[EOSQLExpression _createDatabaseStatementsForEntityGroups:]):
Implemented new private support methods.
([EOSQLExpression schemaCreationStatementsForEntities:options:]):
Added support for EODropDatabaseKey and EOCreateDatabaseKey.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18638 72102866-910b-0410-8b05-ffd578937521
NSSearchPathForDirectoriesInDomains() instead of GNUstep
specific environment variable.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18518 72102866-910b-0410-8b05-ffd578937521
o fix in EOOrQualifier -sqlStringForSQLExpression:
use sqlExpression -sqlStringForDisjoinedQualifiers:
(problem was missing () around expression)
* EOControl/EOAndQualifier.m:
o implemented -_addBindingsToDictionary:
o implemented -qualifierWithBindings:requiresAllVariables:
o implemented -validateKeysWithRootClassDescription:
* EOControl/EOKeyValueQualifier.m:
o implemented -validateKeysWithRootClassDescription:
o implemented -initWithKeyValueUnarchiver:
o removed duplicate -initWithKeyValueUnarchiver: and
-encodeWithKeyValueArchiver
o implemented -_addBindingsToDictionary:
o implemented -qualifierWithBindings:requiresAllVariables:
* EOControl/EOOrQualifier.m:
o implemented -_addBindingsToDictionary:
o implemented -qualifierWithBindings:requiresAllVariables:
o implemented -validateKeysWithRootClassDescription:
* EOControl/EONotQualifier.m:
o implemented -_addBindingsToDictionary:
o implemented -validateKeysWithRootClassDescription:
o implemented -qualifierWithBindings:requiresAllVariables:
* EOControl/EOQualifier.m:
o implemented _validateKey:withRootClassDescription:
o implemented -validateKeysWithRootClassDescription:
o implemented -bindingKeys
o implemented -keyPathForBindingKey:
o added EOQualifierVariableSubstitutionException;
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18226 72102866-910b-0410-8b05-ffd578937521
o renamed _useAliases to _flags.useAliases
o added _flags.hasOuterJoin
o call qualifier -sqlStringForSQLExpression:
instead of switching on qualifier class
in -sqlStringForArrayOfQualifiers:operation:
o asserts
o fill _contextStack
o added outer joins checks in -_flattenRelPath:entity:
(Used in Postgresql)
* EOAdaptors/Postgres95/Postgres95SQLExpression.m:
o subclass joinExpression to avoid building join
expression (it's now build in -tableListWithRootEntity
o sublass -tableListWithRootEntity to add joins in it.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18225 72102866-910b-0410-8b05-ffd578937521
o added _instanceDictionaryInitializer.
Permit to have a restricted dictionary initializer
(i.e. propertyDictionaryInitializer minus instance
object ivars).
o added NSObject
+_instanceDictionaryInitializerExcludedPropertyNames
o more information in log/exception in _parseRelationshipPath
o added -_instanceDictionaryInitializer
o added - _dictionaryForInstanceProperties
o added -_classForInstances
* EOAccess/EOModel.m:
o added asserts
o clean warnings
* EOAccess/EORelationship.m:
o asserts
o fix in -isReciprocalToRelationship:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18224 72102866-910b-0410-8b05-ffd578937521
o in -prepareForSaveWithCoordinator:editingContext:
Try harder to find primary key (for linked objects
with more than one attribute for PK)
* EOAccess/EODatabaseContextPriv.h
o added -_primaryKeyForObject:raiseException:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18223 72102866-910b-0410-8b05-ffd578937521
o introducing new number types:
('u' for long long / int8 and 'U' for unsigned long long)
* EOAdaptors/Postgres95/Postgres95Adaptor.m:
o added int8, bigint
* EOAdaptors/Postgres95/Postgres95Channel.m:
o handling bigint
o fixed types for int2 and int8
* EOAdaptors/Postgres95/Postgres95Values.m:
o added missing number types
o introducing new number types:
('u' for long long / int8 and 'U' for unsigned long long)
* EOControl/EONSAddOns.h/m
o added number accessors for NSString
o added NSObject
-performSelector:withObject:withObject:withObject:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18221 72102866-910b-0410-8b05-ffd578937521