示例#1
0
 private void ProcessRefreshFills()
 {
     for (int i = 0; (this._refreshFills != null) && (i < this._refreshFills.Count); i++)
     {
         RefreshFillData data        = this._refreshFills[i] as RefreshFillData;
         DataDestination destination = this._dataService.GetDestination(data.Destination) as DataDestination;
         if (destination == null)
         {
             throw new FluorineException(__Res.GetString("Destination_NotFound", new object[] { data.Destination }));
         }
         ICollection sequences = destination.SequenceManager.GetSequences(data.Parameters);
         if (sequences != null)
         {
             lock (destination.SequenceManager.SyncRoot)
             {
                 foreach (Sequence sequence in sequences)
                 {
                     DataMessage message = new DataMessage {
                         operation = 1
                     };
                     if (sequence.Parameters != null)
                     {
                         message.body = sequence.Parameters;
                     }
                     else
                     {
                         message.body = new object[0];
                     }
                     if (this._clientId != null)
                     {
                         message.clientId = this._clientId;
                     }
                     else
                     {
                         message.clientId = "srv:" + Guid.NewGuid().ToString("D");
                     }
                     IList result = destination.ServiceAdapter.Invoke(message) as IList;
                     if (result.Count > 0)
                     {
                         Sequence sequence2 = destination.SequenceManager.CreateSequence(message.clientId as string, result, sequence.Parameters, this);
                     }
                 }
             }
         }
     }
 }
示例#2
0
 private void ProcessRefreshFills()
 {
     for (int i = 0; _refreshFills != null && i < _refreshFills.Count; i++)
     {
         RefreshFillData refreshFill     = _refreshFills[i] as RefreshFillData;
         DataDestination dataDestination = _dataService.GetDestination(refreshFill.Destination) as DataDestination;
         if (dataDestination == null)
         {
             throw new FluorineException(__Res.GetString(__Res.Destination_NotFound, refreshFill.Destination));
         }
         ICollection sequences = dataDestination.SequenceManager.GetSequences(refreshFill.Parameters);
         if (sequences != null)
         {
             lock (dataDestination.SequenceManager.SyncRoot)
             {
                 foreach (Sequence sequence in sequences)
                 {
                     DataMessage dataMessage = new DataMessage();
                     dataMessage.operation = DataMessage.FillOperation;
                     if (sequence.Parameters != null)
                     {
                         dataMessage.body = sequence.Parameters;
                     }
                     else
                     {
                         dataMessage.body = new object[0];
                     }
                     if (_clientId != null)
                     {
                         dataMessage.clientId = _clientId;
                     }
                     else
                     {
                         dataMessage.clientId = "srv:" + Guid.NewGuid().ToString("D");
                     }
                     IList result = dataDestination.ServiceAdapter.Invoke(dataMessage) as IList;
                     if (result.Count > 0)
                     {
                         Sequence sequenceTmp = dataDestination.SequenceManager.CreateSequence(dataMessage.clientId as string, result, sequence.Parameters, this);
                     }
                 }
             }
         }
     }
 }