Exemplo n.º 1
0
 public void Link <T>(ISourceAgent <IDataflowMessage <T> > source, ITargetBlock <IDataflowMessage <T> > target)
 {
     if (m_SourceAgent != null)
     {
         throw new InvalidOperationException("Source agent already registered in this network.");
     }
     source.LinkTo(target, CreateDefaultLinkOptions(), CreateDefaultFilter <T>());
     m_SourceAgent = source;
 }
Exemplo n.º 2
0
        public void Link <T>(ISourceAgent <IDataflowMessage <T> > source, ITargetBlock <IDataflowMessage <T> > target, Predicate <IDataflowMessage <T> > predicate)
        {
            if (m_SourceAgent != null)
            {
                throw new InvalidOperationException("Source agent already registered in this network.");
            }

            var combinedFilter = ComposeFilterWithAnd(CreateDefaultFilter <T>(), predicate);

            source.LinkTo(target, CreateDefaultLinkOptions(), combinedFilter);
            m_SourceAgent = source;
        }