示例#1
0
 public static void SetAgent(ILogAgent newAgent)
 {
     if (newAgent != null)
     {
         LogAgent.agent = newAgent;
     }
 }
 public IdasDataflowNetwork2(string name, ILogAgent logAgent, bool logStatistics = true)
 {
     m_Name              = name;
     m_LogAgent          = logAgent;
     m_Cts               = new CancellationTokenSource();
     m_LogStatistics     = logStatistics;
     m_PendingTasks      = new List <Task>();
     m_StatisticsLoggers = new List <IStatisticsLogger>();
     m_CreatedBlocks     = new List <IBlock>();
 }
        public void Setup()
        {
            Mock <ILogAgent> mockLog = new Mock <ILogAgent>();

            m_LogAgent = mockLog.Object;

            Mock <ICancelNetwork> mockCancel = new Mock <ICancelNetwork>();

            m_CancelNetwork = mockCancel.Object;
        }
 WithStatistics <TInput, TInputMsg, TOutput, TOutputMsg>
     (this IDataflowNetworkTask <TInput, TInputMsg, TOutput
                                 , TOutputMsg> decoratedSource
     , IIdasDataflowNetwork network
     , ILogAgent logAgent)
     where TInputMsg : IDataflowMessage <TInput>
     where TOutputMsg : IDataflowMessage <TOutput>
 {
     return(new StatisticsLogDecoratorTask <TInput, TInputMsg, TOutput, TOutputMsg>(decoratedSource, network, logAgent));
 }
示例#5
0
 public DataflowNetwork(string name, ILogAgent logAgent, bool logStatistics = true)
 {
     m_DfnGuid          = Guid.NewGuid();
     m_Name             = name;
     m_Cts              = new CancellationTokenSource();
     m_LogAgent         = logAgent;
     m_LogStatistics    = logStatistics;
     m_ConstituentTasks = new List <Task>();
     m_ctx              = new ZContext();
 }
示例#6
0
        public DataflowNetworkDecoratorTask(IDataflowNetworkTask <TInput, TInputMsg, TOutput, TOutputMsg> innerTask, IIdasDataflowNetwork network, ILogAgent logAgent)
        {
            if (innerTask == null)
            {
                throw new ArgumentNullException("innerTask", "Inner task must not be null!");
            }

            m_InnerTask = innerTask;
            m_LogAgent  = logAgent;
            m_Network   = network;
        }
示例#7
0
 public ExceptionDecoratorTransformationBatched(ITransformationBatched <TIn, TOut> decoratedTransformation, ILogAgent logAgent, ICancelNetwork cancel)
 {
     m_DecoratedTransformation = decoratedTransformation;
     m_LogAgent = logAgent;
     m_Cancel   = cancel;
 }
 protected StatisticsLoggerBase(ILogAgent logAgent, string title, DataflowNetworkConstituent constituent)
 {
     m_LogAgent    = logAgent;
     m_Title       = title;
     m_Constituent = constituent;
 }
 public static ISourceFunctor <TOut> WithLogging <TOut>(this ISourceFunctor <TOut> decoratedSource, ILogAgent logAgent)
 {
     return(new LogDecoratorSource <TOut>(decoratedSource, logAgent));
 }
 public StatisticsLogDecoratorTransformation(ITransformationFunctor <TIn, TOut> decoratedTransformation, ILogAgent logAgent)
     : base(logAgent, decoratedTransformation.Title, DataflowNetworkConstituent.Transformation)
 {
     m_DecoratedTransformation = decoratedTransformation;
 }
 public ExceptionDecoratorTransformMany(ITransformMany <TIn, TOut> decorated, ILogAgent logAgent, ICancelNetwork cancel)
 {
     m_Decorated = decorated;
     m_LogAgent  = logAgent;
     m_Cancel    = cancel;
 }
示例#12
0
 public LogDecoratorSource(ISourceFunctor <TOut> decoratedSource, ILogAgent logAgent)
 {
     m_DecoratedSource = decoratedSource;
     m_LogAgent        = logAgent;
 }
 public StatisticsLogDecoratorTargetBatched(ITargetBatchedFunctor <TIn> decoratedTarget, ILogAgent logAgent)
     : base(logAgent, decoratedTarget.Title, DataflowNetworkConstituent.TargetBatched)
 {
     m_DecoratedTarget = decoratedTarget;
     // Can't tell, how many messages are broken
     Interlocked.Decrement(ref NumBrokenMessages);
 }
 public ExceptionDecoratorTarget(ITarget <TIn> decoratedTarget, ILogAgent logAgent, ICancelNetwork cancel)
 {
     m_DecoratedTarget = decoratedTarget;
     m_LogAgent        = logAgent;
     m_Cancel          = cancel;
 }
 public static ITargetFunctor <TIn> WithLogging <TIn>(this ITargetFunctor <TIn> decoratedTarget, ILogAgent logAgent)
 {
     return(new LogDecoratorTarget <TIn>(decoratedTarget, logAgent));
 }
 public static ITransformationBatchedFunctor <TIn, TOut> WithLogging <TIn, TOut>(this ITransformationBatchedFunctor <TIn, TOut> decoratedTransformation, ILogAgent logAgent)
 {
     return(new LogDecoratorTransformationBatched <TIn, TOut>(decoratedTransformation, logAgent));
 }
示例#17
0
 public LogDecoratorTransformMany(ITransformManyFunctor <TIn, TOut> decorated, ILogAgent logAgent)
 {
     m_Decorated = decorated;
     m_LogAgent  = logAgent;
 }
 public StatisticsLogDecoratorTransformMany(ITransformManyFunctor <TIn, TOut> decorated, ILogAgent logAgent)
     : base(logAgent, decorated.Title, DataflowNetworkConstituent.TransformMany)
 {
     m_Decorated = decorated;
     // Note: We cannot know the number of broken messages, so we set it to -1;
     Interlocked.Decrement(ref NumBrokenMessages);
 }
 public LogDecoratorTarget(ITargetFunctor <TIn> decoratedTarget, ILogAgent logAgent)
 {
     m_DecoratedTarget = decoratedTarget;
     m_LogAgent        = logAgent;
 }
 public StatisticsLogDecoratorSource(ISourceFunctor <TOut> decoreatedFunctor, ILogAgent logAgent)
     : base(logAgent, decoreatedFunctor.Title, DataflowNetworkConstituent.Source)
 {
     m_DecoratedFunctor = decoreatedFunctor;
 }
 public StatisticsLogDecoratorTarget(ITargetFunctor <TIn> decoratedTarget, ILogAgent logAgent)
     : base(logAgent, decoratedTarget.Title, DataflowNetworkConstituent.Target)
 {
     m_DecoratedTarget = decoratedTarget;
 }
 public static ISourceFunctor <TIn> WithStatistics <TIn>(this ISourceFunctor <TIn> decoratedSource, ILogAgent logAgent)
 {
     return(new StatisticsLogDecoratorSource <TIn>(decoratedSource, logAgent));
 }
 public LogDecoratorTransformation(ITransformationFunctor <TIn, TOut> decoratedTransformation, ILogAgent logAgent)
 {
     m_DecoratedTransformation = decoratedTransformation;
     m_LogAgent = logAgent;
 }
示例#24
0
 public StatisticsLogDecoratorTransformationBatched(ITransformationBatchedFunctor <TIn, TOut> decoratedTransformationBatched, ILogAgent logAgent)
     : base(logAgent, decoratedTransformationBatched.Title, DataflowNetworkConstituent.TransformationBatched)
 {
     m_DecoratedTransformationBatched = decoratedTransformationBatched;
 }
 public static ITransformManyFunctor <TIn, TOut> WithStatistics <TIn, TOut>(this ITransformManyFunctor <TIn, TOut> decoratedTransformation, ILogAgent logAgent)
 {
     return(new StatisticsLogDecoratorTransformMany <TIn, TOut>(decoratedTransformation, logAgent));
 }
示例#26
0
 public ExceptionDecoratorSource(ISource <TOut> decoratedSource, ILogAgent logAgent, ICancelNetwork cancel)
 {
     m_DecoratedSource = decoratedSource;
     m_LogAgent        = logAgent;
     m_Cancel          = cancel;
 }
 public static ITargetBatchedFunctor <TIn> WithStatistics <TIn>(this ITargetBatchedFunctor <TIn> decoratedTarget, ILogAgent logAgent)
 {
     return(new StatisticsLogDecoratorTargetBatched <TIn>(decoratedTarget, logAgent));
 }
示例#28
0
 public SkipEmptyMessagesDecoratorTask(IDataflowNetworkTask <TInput, TInputMsg, TOutput, TOutputMsg> innerTask, IIdasDataflowNetwork network, ILogAgent logAgent)
     : base(innerTask, network, logAgent)
 {
 }
 public LoggingDecoratorTask(IDataflowNetworkTask <TInput, TInputMsg, TOutput, TOutputMsg> innerTask, IIdasDataflowNetwork network, ILogAgent logAgent)
     : base(innerTask, network, logAgent)
 {
 }
示例#30
0
 public static IDataflowNetworkTask <TInput, TInputMsg, TOutput, TOutputMsg> SkipEmpty <TInput, TInputMsg, TOutput, TOutputMsg>(this IDataflowNetworkTask <TInput, TInputMsg, TOutput, TOutputMsg> decoratedSource, IIdasDataflowNetwork network, ILogAgent logAgent)
     where TInputMsg : IDataflowMessage <TInput>
     where TOutputMsg : IDataflowMessage <TOutput>
 {
     return(new SkipEmptyMessagesDecoratorTask <TInput, TInputMsg, TOutput, TOutputMsg>(decoratedSource, network, logAgent));
 }