Esempio n. 1
0
 public void handle(TimedDataWithEnvironment <Env, T> data)
 {
     if (checker.check(data.timedData))
     {
         actuallyHandle(data);
     }
 }
Esempio n. 2
0
            public void actuallyHandle(TimedDataWithEnvironment <Env, Either <T1, T2> > data)
            {
                var res = func(
                    data
                    );

                if (res.HasValue)
                {
                    var yVal  = res.Unwrap();
                    var count = yVal.timedData.value.Count;
                    var ii    = 0;
                    foreach (var item in yVal.timedData.value)
                    {
                        publish(new TimedDataWithEnvironment <Env, OutT>(
                                    yVal.environment
                                    , new WithTime <OutT>(
                                        yVal.timedData.timePoint
                                        , item
                                        , (yVal.timedData.finalFlag && (ii == count - 1))
                                        )
                                    ));
                        ++ii;
                    }
                }
            }
Esempio n. 3
0
 public void handle(TimedDataWithEnvironment <Env, T> data)
 {
     if (checker.check(data.timedData))
     {
         channel.Writer.WriteAsync(data);
     }
 }
Esempio n. 4
0
            public void actuallyHandle(TimedDataWithEnvironment <Env, T1> data)
            {
                var res = func(data);

                if (res.HasValue)
                {
                    publish(res.Unwrap());
                }
            }
Esempio n. 5
0
 public void handle2(TimedDataWithEnvironment <Env, T2> data)
 {
     lock (lockObj)
     {
         var eitherData = new TimedDataWithEnvironment <Env, Either <T1, T2> >(
             data.environment, new WithTime <Either <T1, T2> >(
                 data.timedData.timePoint, Either.Right(data.timedData.value), data.timedData.finalFlag
                 )
             );
         var checkRes = checker.check(eitherData.timedData);
         if (checkRes)
         {
             actuallyHandle(eitherData);
         }
     }
 }
Esempio n. 6
0
        public void publish(TimedDataWithEnvironment <Env, T> data)
        {
            lock (lockObj)
            {
                switch (handlers.Count)
                {
                case 0:
                    return;

                case 1:
                    handlers[0].handle(data);
                    break;

                default:
                    if (canClone)
                    {
                        ICloneable v = (ICloneable)data.timedData.value;
                        foreach (var h in handlers)
                        {
                            h.handle(new TimedDataWithEnvironment <Env, T>(
                                         data.environment
                                         , new WithTime <T>(
                                             data.timedData.timePoint
                                             , (T)v.Clone()
                                             , data.timedData.finalFlag
                                             )
                                         ));
                        }
                    }
                    else
                    {
                        foreach (var h in handlers)
                        {
                            h.handle(data);
                        }
                    }
                    break;
                }
            }
        }
Esempio n. 7
0
 public override void handle(TimedDataWithEnvironment <Env, T1> data)
 {
     realHandler.handle(data);
 }
Esempio n. 8
0
 public void actuallyHandle(TimedDataWithEnvironment <Env, T1> data)
 {
     func(data, this.publish);
 }
Esempio n. 9
0
 public void handle(TimedDataWithEnvironment <Env, T> data)
 {
     realHandler.handle(data);
 }
Esempio n. 10
0
 public void placeRequestAndForget(TimedDataWithEnvironment <Env, Key <T1> > data)
 {
     handle(data);
 }
Esempio n. 11
0
 public void placeRequest(TimedDataWithEnvironment <Env, Key <T1> > data, IHandler <Env, KeyedData <T1, T2> > responseHandler)
 {
     addHandler(data.timedData.value, responseHandler);
     handle(data);
 }
Esempio n. 12
0
 public abstract void handle(TimedDataWithEnvironment <Env, Key <T1> > data);
Esempio n. 13
0
 public void handle(TimedDataWithEnvironment <Env, T> data)
 {
     func(data);
 }