示例#1
0
        public static IVirtualEndPoint CreateVirtualEndPoint(this IRelationEndPointFactory endPointFactory, RelationEndPointID endPointID, bool markDataComplete)
        {
            ArgumentUtility.CheckNotNull("endPointID", endPointID);

            if (!endPointID.Definition.IsVirtual)
            {
                throw new ArgumentException("The RelationEndPointID must identify a virtual end-point.", "endPointID");
            }

            if (endPointID.Definition.Cardinality == CardinalityType.One)
            {
                var virtualObjectEndPoint = endPointFactory.CreateVirtualObjectEndPoint(endPointID);
                if (markDataComplete)
                {
                    virtualObjectEndPoint.MarkDataComplete(null);
                }
                return(virtualObjectEndPoint);
            }
            else
            {
                var collectionEndPoint = endPointFactory.CreateCollectionEndPoint(endPointID);
                if (markDataComplete)
                {
                    collectionEndPoint.MarkDataComplete(new DomainObject[0]);
                }
                return(collectionEndPoint);
            }
        }
示例#2
0
        public StateUpdateRaisingRelationEndPointFactoryDecorator(IRelationEndPointFactory innerFactory, IVirtualEndPointStateUpdateListener listener)
        {
            ArgumentUtility.CheckNotNull("innerFactory", innerFactory);
            ArgumentUtility.CheckNotNull("listener", listener);

            _innerFactory = innerFactory;
            _listener     = listener;
        }
示例#3
0
        public DelegatingDataContainerEndPointsRegistrationAgent(IRelationEndPointFactory endPointFactory, IRelationEndPointRegistrationAgent registrationAgent)
        {
            ArgumentUtility.CheckNotNull("endPointFactory", endPointFactory);
            ArgumentUtility.CheckNotNull("registrationAgent", registrationAgent);

            _existingDataContainerRegistrationAgent    = new ExistingDataContainerEndPointsRegistrationAgent(endPointFactory, registrationAgent);
            _nonExistingDataContainerRegistrationAgent = new NonExistingDataContainerEndPointsRegistrationAgent(endPointFactory, registrationAgent);
        }
示例#4
0
        protected DataContainerEndPointsRegistrationAgentBase(
            IRelationEndPointFactory endPointFactory, IRelationEndPointRegistrationAgent registrationAgent)
        {
            ArgumentUtility.CheckNotNull("endPointFactory", endPointFactory);
            ArgumentUtility.CheckNotNull("registrationAgent", registrationAgent);

            _endPointFactory   = endPointFactory;
            _registrationAgent = registrationAgent;
        }
示例#5
0
        public override void SetUp()
        {
            base.SetUp();

            _endPointFactoryStub   = MockRepository.GenerateStub <IRelationEndPointFactory> ();
            _registrationAgentStub = MockRepository.GenerateStub <IRelationEndPointRegistrationAgent> ();
            _map = new RelationEndPointMap(MockRepository.GenerateStub <IClientTransactionEventSink> ());

            _agent = new ExistingDataContainerEndPointsRegistrationAgent(_endPointFactoryStub, _registrationAgentStub);
        }
示例#6
0
        public override void SetUp()
        {
            base.SetUp();

            _innerFactoryMock = MockRepository.GenerateStrictMock <IRelationEndPointFactory>();
            _listenerStub     = MockRepository.GenerateStub <IVirtualEndPointStateUpdateListener>();

            _decorator           = new StateUpdateRaisingRelationEndPointFactoryDecorator(_innerFactoryMock, _listenerStub);
            _decoratorTestHelper = new DecoratorTestHelper <IRelationEndPointFactory> (_decorator, _innerFactoryMock);
        }
示例#7
0
        protected RelationEndPointManager(FlattenedDeserializationInfo info)
        {
            ArgumentUtility.CheckNotNull("info", info);

            _clientTransaction = info.GetValueForHandle <ClientTransaction>();
            _lazyLoader        = info.GetValueForHandle <ILazyLoader>();
            _endPointFactory   = info.GetValueForHandle <IRelationEndPointFactory>();
            _registrationAgent = info.GetValueForHandle <IRelationEndPointRegistrationAgent> ();
            _map = info.GetValue <RelationEndPointMap> ();

            _dataContainerEndPointsRegistrationAgent = new DelegatingDataContainerEndPointsRegistrationAgent(_endPointFactory, _registrationAgent);
        }
示例#8
0
        public RelationEndPointManager(
            ClientTransaction clientTransaction,
            ILazyLoader lazyLoader,
            IClientTransactionEventSink transactionEventSink,
            IRelationEndPointFactory endPointFactory,
            IRelationEndPointRegistrationAgent registrationAgent)
        {
            ArgumentUtility.CheckNotNull("clientTransaction", clientTransaction);
            ArgumentUtility.CheckNotNull("lazyLoader", lazyLoader);
            ArgumentUtility.CheckNotNull("transactionEventSink", transactionEventSink);
            ArgumentUtility.CheckNotNull("endPointFactory", endPointFactory);
            ArgumentUtility.CheckNotNull("registrationAgent", registrationAgent);

            _clientTransaction = clientTransaction;
            _lazyLoader        = lazyLoader;
            _endPointFactory   = endPointFactory;
            _registrationAgent = registrationAgent;
            _dataContainerEndPointsRegistrationAgent = new DelegatingDataContainerEndPointsRegistrationAgent(endPointFactory, registrationAgent);

            _map = new RelationEndPointMap(transactionEventSink);
        }
示例#9
0
        public override void SetUp()
        {
            base.SetUp();

            _endPointFactoryMock   = MockRepository.GenerateStrictMock <IRelationEndPointFactory>();
            _registrationAgentMock = MockRepository.GenerateStrictMock <IRelationEndPointRegistrationAgent>();

            _agentPartialMock = MockRepository.GeneratePartialMock <TestableDataContainerEndPointsRegistrationAgentBase> (
                _endPointFactoryMock, _registrationAgentMock);

            _map = new RelationEndPointMap(MockRepository.GenerateStub <IClientTransactionEventSink> ());

            _orderTicketEndPointID = RelationEndPointID.Create(DomainObjectIDs.Order1, typeof(Order), "OrderTicket");
            _customerEndPointID    = RelationEndPointID.Create(DomainObjectIDs.Order1, typeof(Order), "Customer");

            _orderTicketEndPointMock = MockRepository.GenerateStrictMock <IVirtualObjectEndPoint>();
            _orderTicketEndPointMock.Stub(stub => stub.ID).Return(_orderTicketEndPointID);

            _customerEndPointStub = MockRepository.GenerateStrictMock <IRealObjectEndPoint>();
            _customerEndPointStub.Stub(stub => stub.ID).Return(_customerEndPointID);

            _orderDataContainer = DataContainer.CreateNew(DomainObjectIDs.Order1);
        }
示例#10
0
 public ExistingDataContainerEndPointsRegistrationAgent(
     IRelationEndPointFactory endPointFactory,
     IRelationEndPointRegistrationAgent registrationAgent)
     : base(endPointFactory, registrationAgent)
 {
 }
示例#11
0
 public TestableDataContainerEndPointsRegistrationAgentBase(IRelationEndPointFactory endPointFactory, IRelationEndPointRegistrationAgent registrationAgent)
     : base(endPointFactory, registrationAgent)
 {
 }
        public override void SetUp()
        {
            base.SetUp();

            _endPointFactoryMock = MockRepository.GenerateStrictMock <IRelationEndPointFactory>();
        }