From: <na...@us...> - 2010-11-13 10:05:18
|
Revision: 936 http://instantobjects.svn.sourceforge.net/instantobjects/revision/?rev=936&view=rev Author: nandod Date: 2010-11-13 10:05:12 +0000 (Sat, 13 Nov 2010) Log Message: ----------- * Fixed "unassigned connector" error with full burst mode and no default connector. Modified Paths: -------------- trunk/Source/Core/InstantBrokers.pas trunk/Source/Core/InstantPersistence.pas Modified: trunk/Source/Core/InstantBrokers.pas =================================================================== --- trunk/Source/Core/InstantBrokers.pas 2010-11-13 09:57:14 UTC (rev 935) +++ trunk/Source/Core/InstantBrokers.pas 2010-11-13 10:05:12 UTC (rev 936) @@ -6042,7 +6042,7 @@ else LObjRef.ReferenceObject(LClassField.AsString, LIdField.AsString); if ActualLoadMode = lmFullBurst then - LObjRef.RetrieveObjectFromObjectData; + LObjRef.RetrieveObjectFromObjectData(Connector); except LObjRef.Free; raise; Modified: trunk/Source/Core/InstantPersistence.pas =================================================================== --- trunk/Source/Core/InstantPersistence.pas 2010-11-13 09:57:14 UTC (rev 935) +++ trunk/Source/Core/InstantPersistence.pas 2010-11-13 10:05:12 UTC (rev 936) @@ -141,8 +141,8 @@ const AObjectData: TInstantAbstractObjectData = nil); overload; procedure ReferenceObject(const AObjectClass: TInstantObjectClass; const AObjectId: string; const AObjectData: TInstantAbstractObjectData = nil); overload; - // Retrieves the referenced object from internal data object, if available. - procedure RetrieveObjectFromObjectData; + // Retrieves the referenced object from the internal data object, if available. + procedure RetrieveObjectFromObjectData(const AConnector: TInstantConnector); procedure WriteAsObject(Writer: TInstantWriter); virtual; property Instance: TInstantObject read GetInstance write SetInstance; property ObjectClass: TInstantObjectClass read GetObjectClass; @@ -1178,7 +1178,7 @@ function InternalGetObjectReferenceId(Index: Integer) : string; virtual; procedure SetActualLoadMode(const AValue: TInstantLoadMode); public - constructor Create(AConnector: TInstantConnector); virtual; + constructor Create(AConnector: TInstantConnector); reintroduce; virtual; function AddObject(AObject: TObject): Integer; procedure ApplyChanges; procedure Close; @@ -2255,13 +2255,14 @@ ReferenceObject(AObjectClass.ClassName, AObjectId, AObjectData); end; -procedure TInstantObjectReference.RetrieveObjectFromObjectData; +procedure TInstantObjectReference.RetrieveObjectFromObjectData( + const AConnector: TInstantConnector); var LObject: TInstantObject; begin Assert(Assigned(FObjectData)); - LObject := ObjectClass.Retrieve(ObjectId, False, False, nil, FObjectData); + LObject := ObjectClass.Retrieve(ObjectId, False, False, AConnector, FObjectData); DoAssignInstance(LObject, True); if Assigned(FInstance) then FInstance.Release |