public VirtualObjectEndPoint( ClientTransaction clientTransaction, RelationEndPointID id, ILazyLoader lazyLoader, IRelationEndPointProvider endPointProvider, IClientTransactionEventSink transactionEventSink, IVirtualObjectEndPointDataManagerFactory dataManagerFactory) : base( ArgumentUtility.CheckNotNull("clientTransaction", clientTransaction), ArgumentUtility.CheckNotNull("id", id)) { ArgumentUtility.CheckNotNull("lazyLoader", lazyLoader); ArgumentUtility.CheckNotNull("endPointProvider", endPointProvider); ArgumentUtility.CheckNotNull("transactionEventSink", transactionEventSink); ArgumentUtility.CheckNotNull("dataManagerFactory", dataManagerFactory); if (!ID.Definition.IsVirtual) { throw new ArgumentException("End point ID must refer to a virtual end point.", "id"); } _lazyLoader = lazyLoader; _endPointProvider = endPointProvider; _transactionEventSink = transactionEventSink; _dataManagerFactory = dataManagerFactory; SetIncompleteState(); _hasBeenTouched = false; }
public RelationEndPointFactory( ClientTransaction clientTransaction, IRelationEndPointProvider endPointProvider, ILazyLoader lazyLoader, IClientTransactionEventSink transactionEventSink, IVirtualObjectEndPointDataManagerFactory virtualObjectEndPointDataManagerFactory, ICollectionEndPointDataManagerFactory collectionEndPointDataManagerFactory, ICollectionEndPointCollectionProvider collectionEndPointCollectionProvider, IAssociatedCollectionDataStrategyFactory associatedCollectionDataStrategyFactory) { ArgumentUtility.CheckNotNull("clientTransaction", clientTransaction); ArgumentUtility.CheckNotNull("endPointProvider", endPointProvider); ArgumentUtility.CheckNotNull("lazyLoader", lazyLoader); ArgumentUtility.CheckNotNull("transactionEventSink", transactionEventSink); ArgumentUtility.CheckNotNull("virtualObjectEndPointDataManagerFactory", virtualObjectEndPointDataManagerFactory); ArgumentUtility.CheckNotNull("collectionEndPointDataManagerFactory", collectionEndPointDataManagerFactory); ArgumentUtility.CheckNotNull("collectionEndPointCollectionProvider", collectionEndPointCollectionProvider); ArgumentUtility.CheckNotNull("associatedCollectionDataStrategyFactory", associatedCollectionDataStrategyFactory); _clientTransaction = clientTransaction; _endPointProvider = endPointProvider; _lazyLoader = lazyLoader; _transactionEventSink = transactionEventSink; _virtualObjectEndPointDataManagerFactory = virtualObjectEndPointDataManagerFactory; _collectionEndPointDataManagerFactory = collectionEndPointDataManagerFactory; _collectionEndPointCollectionProvider = collectionEndPointCollectionProvider; _associatedCollectionDataStrategyFactory = associatedCollectionDataStrategyFactory; }
protected virtual RelationEndPointFactory CreateRelationEndPointFactory( ClientTransaction constructedTransaction, IRelationEndPointProvider endPointProvider, ILazyLoader lazyLoader, IClientTransactionEventSink eventSink, IVirtualObjectEndPointDataManagerFactory virtualObjectEndPointDataManagerFactory, ICollectionEndPointDataManagerFactory collectionEndPointDataManagerFactory) { ArgumentUtility.CheckNotNull("constructedTransaction", constructedTransaction); ArgumentUtility.CheckNotNull("endPointProvider", endPointProvider); ArgumentUtility.CheckNotNull("lazyLoader", lazyLoader); ArgumentUtility.CheckNotNull("eventSink", eventSink); ArgumentUtility.CheckNotNull("virtualObjectEndPointDataManagerFactory", virtualObjectEndPointDataManagerFactory); ArgumentUtility.CheckNotNull("collectionEndPointDataManagerFactory", collectionEndPointDataManagerFactory); var associatedCollectionDataStrategyFactory = new AssociatedCollectionDataStrategyFactory(endPointProvider); var collectionEndPointCollectionProvider = new CollectionEndPointCollectionProvider(associatedCollectionDataStrategyFactory); return(new RelationEndPointFactory( constructedTransaction, endPointProvider, lazyLoader, eventSink, virtualObjectEndPointDataManagerFactory, collectionEndPointDataManagerFactory, collectionEndPointCollectionProvider, associatedCollectionDataStrategyFactory)); }
public IncompleteVirtualObjectEndPointLoadState( IEndPointLoader endPointLoader, IVirtualObjectEndPointDataManagerFactory dataManagerFactory) : base(endPointLoader) { ArgumentUtility.CheckNotNull("dataManagerFactory", dataManagerFactory); _dataManagerFactory = dataManagerFactory; }
protected VirtualObjectEndPoint(FlattenedDeserializationInfo info) : base(info) { _lazyLoader = info.GetValueForHandle <ILazyLoader> (); _endPointProvider = info.GetValueForHandle <IRelationEndPointProvider> (); _transactionEventSink = info.GetValueForHandle <IClientTransactionEventSink> (); _dataManagerFactory = info.GetValueForHandle <IVirtualObjectEndPointDataManagerFactory> (); _loadState = info.GetValue <IVirtualObjectEndPointLoadState> (); _hasBeenTouched = info.GetBoolValue(); }
public override void SetUp() { base.SetUp(); _clientTransaction = ClientTransaction.CreateRootTransaction(); _endPointProviderStub = MockRepository.GenerateStub <IRelationEndPointProvider> (); _lazyLoaderStub = MockRepository.GenerateStub <ILazyLoader> (); _transactionEventSinkStub = MockRepository.GenerateStub <IClientTransactionEventSink>(); var virtualObjectEndPointDataManager = MockRepository.GenerateStub <IVirtualObjectEndPointDataManager> (); virtualObjectEndPointDataManager.Stub(stub => stub.OriginalOppositeEndPoint).Return(null); _virtualObjectEndPointDataManagerFactoryStub = MockRepository.GenerateStub <IVirtualObjectEndPointDataManagerFactory> (); _virtualObjectEndPointDataManagerFactoryStub .Stub(stub => stub.CreateEndPointDataManager(Arg <RelationEndPointID> .Is.Anything)) .Return(virtualObjectEndPointDataManager); var collectionEndPointDataManager = MockRepository.GenerateStub <ICollectionEndPointDataManager> (); collectionEndPointDataManager.Stub(stub => stub.OriginalOppositeEndPoints).Return(new IRealObjectEndPoint[0]); _collectionEndPointDataManagerFactoryStub = MockRepository.GenerateStub <ICollectionEndPointDataManagerFactory> (); _collectionEndPointDataManagerFactoryStub .Stub(stub => stub.CreateEndPointDataManager(Arg <RelationEndPointID> .Is.Anything)) .Return(collectionEndPointDataManager); _collectionEndPointCollectionProviderStub = MockRepository.GenerateStub <ICollectionEndPointCollectionProvider>(); _associatedCollectionStrategyFactoryStub = MockRepository.GenerateStub <IAssociatedCollectionDataStrategyFactory>(); _factory = new RelationEndPointFactory( _clientTransaction, _endPointProviderStub, _lazyLoaderStub, _transactionEventSinkStub, _virtualObjectEndPointDataManagerFactoryStub, _collectionEndPointDataManagerFactoryStub, _collectionEndPointCollectionProviderStub, _associatedCollectionStrategyFactoryStub); }
public override void SetUp() { base.SetUp(); _endPointID = RelationEndPointID.Create(DomainObjectIDs.Order1, typeof(Order), "OrderTicket"); _virtualObjectEndPointMock = MockRepository.GenerateStrictMock <IVirtualObjectEndPoint> (); _endPointLoaderMock = MockRepository.GenerateStrictMock <IncompleteVirtualObjectEndPointLoadState.IEndPointLoader> (); _dataManagerFactoryStub = MockRepository.GenerateStub <IVirtualObjectEndPointDataManagerFactory> (); var dataManagerStub = MockRepository.GenerateStub <IVirtualObjectEndPointDataManager> (); dataManagerStub.Stub(stub => stub.HasDataChanged()).Return(false); _loadState = new IncompleteVirtualObjectEndPointLoadState(_endPointLoaderMock, _dataManagerFactoryStub); _relatedObject = DomainObjectMother.CreateFakeObject <OrderTicket> (); _relatedEndPointStub = MockRepository.GenerateStub <IRealObjectEndPoint> (); _relatedEndPointStub.Stub(stub => stub.ObjectID).Return(_relatedObject.ID); _relatedObject2 = DomainObjectMother.CreateFakeObject <OrderTicket> (); _relatedEndPointStub2 = MockRepository.GenerateStub <IRealObjectEndPoint> (); _relatedEndPointStub2.Stub(stub => stub.ObjectID).Return(_relatedObject2.ID); }
public override void SetUp() { base.SetUp(); _endPointID = RelationEndPointObjectMother.CreateRelationEndPointID(DomainObjectIDs.Order1, "OrderTicket"); _lazyLoaderMock = MockRepository.GenerateStrictMock <ILazyLoader>(); _endPointProviderStub = MockRepository.GenerateStub <IRelationEndPointProvider> (); _transactionEventSinkStub = MockRepository.GenerateStub <IClientTransactionEventSink>(); _dataManagerFactory = new VirtualObjectEndPointDataManagerFactory(); _loadStateMock = MockRepository.GenerateStrictMock <IVirtualObjectEndPointLoadState> (); _endPoint = new VirtualObjectEndPoint( ClientTransaction.Current, _endPointID, _lazyLoaderMock, _endPointProviderStub, _transactionEventSinkStub, _dataManagerFactory); PrivateInvoke.SetNonPublicField(_endPoint, "_loadState", _loadStateMock); _oppositeEndPointStub = MockRepository.GenerateStub <IRealObjectEndPoint>(); _oppositeObject = DomainObjectMother.CreateFakeObject <OrderTicket>(); }
public IncompleteVirtualObjectEndPointLoadState(FlattenedDeserializationInfo info) : base(info) { _dataManagerFactory = info.GetValueForHandle <IVirtualObjectEndPointDataManagerFactory> (); }