Contains() public method

public Contains ( FluorineFx.Data.Identity identity ) : bool
identity FluorineFx.Data.Identity
return bool
Beispiel #1
0
        public Sequence RefreshSequence(Sequence sequence, DataMessage dataMessage, object item, DataServiceTransaction dataServiceTransaction)
        {
            if (sequence.Parameters == null)
            {
                return(sequence);
            }
            DotNetAdapter dotNetAdapter = _dataDestination.ServiceAdapter as DotNetAdapter;

            if (dotNetAdapter != null)
            {
                bool isCreate = (dataMessage.operation == DataMessage.CreateOperation || dataMessage.operation == DataMessage.CreateAndSequenceOperation);
                int  fill     = dotNetAdapter.RefreshFill(sequence.Parameters, item, isCreate);
                switch (fill)
                {
                case Assembler.ExecuteFill:
                {
                    IList parameters = sequence.Parameters;
                    //if (parameters == null)
                    //    parameters = new object[0];
                    DataMessage fillDataMessage = new DataMessage();
                    fillDataMessage.clientId  = dataMessage.clientId;
                    fillDataMessage.operation = DataMessage.FillOperation;
                    fillDataMessage.body      = parameters != null ? parameters : new object[0];
                    IList result = _dataDestination.ServiceAdapter.Invoke(fillDataMessage) as IList;
                    return(CreateSequence(dataMessage.clientId as string, result, parameters, dataServiceTransaction));
                }

                case Assembler.AppendToFill:
                {
                    Identity identity = Identity.GetIdentity(item, _dataDestination);
                    if (!sequence.Contains(identity))
                    {
                        AddIdentityToSequence(sequence, identity, dataServiceTransaction);
                    }
                    _itemIdToItemHash[identity] = new ItemWrapper(item);
                }
                break;

                case Assembler.RemoveFromFill:
                {
                    Identity identity = Identity.GetIdentity(item, _dataDestination);
                    if (sequence.Contains(identity))
                    {
                        RemoveIdentityFromSequence(sequence, identity, dataServiceTransaction);
                    }
                }
                break;

                case Assembler.DoNotExecuteFill:
                    break;
                }
            }
            return(sequence);
        }
        public Sequence RefreshSequence(Sequence sequence, DataMessage dataMessage, object item, DataServiceTransaction dataServiceTransaction)
        {
            if (sequence.Parameters != null)
            {
                DotNetAdapter serviceAdapter = this._dataDestination.ServiceAdapter as DotNetAdapter;
                if (serviceAdapter != null)
                {
                    Identity identity;
                    bool     isCreate = (dataMessage.operation == 0) || (dataMessage.operation == 11);
                    switch (serviceAdapter.RefreshFill(sequence.Parameters, item, isCreate))
                    {
                    case 0:
                        return(sequence);

                    case 1:
                    {
                        IList       parameters = sequence.Parameters;
                        DataMessage message    = new DataMessage {
                            clientId  = dataMessage.clientId,
                            operation = 1,
                            body      = (parameters != null) ? ((object)parameters) : ((object)new object[0])
                        };
                        IList result = this._dataDestination.ServiceAdapter.Invoke(message) as IList;
                        return(this.CreateSequence(dataMessage.clientId as string, result, parameters, dataServiceTransaction));
                    }

                    case 2:
                        identity = Identity.GetIdentity(item, this._dataDestination);
                        if (!sequence.Contains(identity))
                        {
                            this.AddIdentityToSequence(sequence, identity, dataServiceTransaction);
                        }
                        this._itemIdToItemHash[identity] = new ItemWrapper(item);
                        return(sequence);

                    case 3:
                        identity = Identity.GetIdentity(item, this._dataDestination);
                        if (sequence.Contains(identity))
                        {
                            this.RemoveIdentityFromSequence(sequence, identity, dataServiceTransaction);
                        }
                        return(sequence);
                    }
                }
            }
            return(sequence);
        }
Beispiel #3
0
		public Sequence RefreshSequence(Sequence sequence, DataMessage dataMessage, object item, DataServiceTransaction dataServiceTransaction)
		{
            if (sequence.Parameters == null)
                return sequence;
			DotNetAdapter dotNetAdapter = _dataDestination.ServiceAdapter as DotNetAdapter;
			if( dotNetAdapter != null )
			{
				bool isCreate = (dataMessage.operation == DataMessage.CreateOperation || dataMessage.operation == DataMessage.CreateAndSequenceOperation);
				int fill = dotNetAdapter.RefreshFill( sequence.Parameters, item, isCreate );
				switch(fill)
				{
					case Assembler.ExecuteFill:
					{
						IList parameters = sequence.Parameters;
                        //if (parameters == null)
                        //    parameters = new object[0];
						DataMessage fillDataMessage = new DataMessage();
						fillDataMessage.clientId = dataMessage.clientId;
						fillDataMessage.operation = DataMessage.FillOperation;
                        fillDataMessage.body = parameters != null ? parameters : new object[0];
						IList result = _dataDestination.ServiceAdapter.Invoke(fillDataMessage) as IList;
                        return CreateSequence(dataMessage.clientId as string, result, parameters, dataServiceTransaction);
					} 
					case Assembler.AppendToFill:
					{
						Identity identity = Identity.GetIdentity(item, _dataDestination);
						if( !sequence.Contains(identity) )
							AddIdentityToSequence(sequence, identity, dataServiceTransaction);
                        _itemIdToItemHash[identity] = new ItemWrapper(item);
					}
						break;
					case Assembler.RemoveFromFill:
					{
						Identity identity = Identity.GetIdentity(item, _dataDestination);
						if( sequence.Contains(identity) )
							RemoveIdentityFromSequence(sequence, identity, dataServiceTransaction);
					}
						break;
					case Assembler.DoNotExecuteFill:
						break;
				}
			}
			return sequence;
		}