public Contains ( FluorineFx.Data.Identity identity ) : bool | ||
identity | FluorineFx.Data.Identity | |
return | bool |
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); }
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; }