Beispiel #1
0
        public InputEdge(EdgeDescription edge, IReactiveServiceResolver serviceResolver, IReliableReactive reactiveService)
        {
            _edge                  = edge;
            _serviceResolver       = serviceResolver;
            _parentReactiveService = reactiveService;

            // REVIEW: Should we initialize in the base class to (-1) always?
            LowWatermark = -1;
        }
Beispiel #2
0
 /// <summary>
 /// Creates a new query engine that's aware of host services.
 /// </summary>
 /// <param name="uri">URI identifying the query engine.</param>
 /// <param name="serviceResolver">Resolver used by the query engine to
 /// resolve artifacts to reactive services for delegation of requests or
 /// other operations.</param>
 /// <param name="scheduler">Scheduler used by the query engine to
 /// schedule work, also allowing for pausing during checkpointing
 /// operations.</param>
 /// <param name="metadataRegistry">Metadata consulted by the query
 /// engine to lookup artifact definitions.</param>
 /// <param name="traceSource">Tracer to log to.</param>
 public QueryEvaluatorQueryEngine(
     Uri uri,
     IReactiveServiceResolver serviceResolver,
     IScheduler scheduler,
     IReactiveMetadata metadataRegistry,
     IKeyValueStore keyValueStore,
     TraceSource traceSource,
     IReadOnlyDictionary <string, object> context)
     : base(uri, serviceResolver, scheduler, metadataRegistry, keyValueStore, SerializationPolicy.Default, s_map, traceSource)
 {
     _context     = context;
     _traceSource = traceSource;
 }
        protected override CheckpointingQueryEngine CreateQueryEngine(System.Uri uri, IReactiveServiceResolver resolver, IScheduler scheduler, IReactiveMetadata metadata, IKeyValueStore keyValueStore, TraceSource traceSource, IReadOnlyDictionary <string, object> contextElements)
        {
            var engine = base.CreateQueryEngine(uri, resolver, scheduler, metadata, keyValueStore, traceSource, contextElements);

#pragma warning disable IDE0034 // Simplify 'default' expression (illustrative of method signature)
#pragma warning disable CA1305  // Specify IFormatProvider (captured in expression tree)
            var constantHoister = ConstantHoister.Create(
                true,
                (Expression <Func <string, string> >)(c => string.Format(c, default(object))),
                (Expression <Func <string, string> >)(c => string.Format(c, default(object), default(object))),
                (Expression <Func <string, string> >)(c => string.Format(c, default(object), default(object), default(object))),
                (Expression <Func <string, string> >)(c => string.Format(c, default(object[]))),
                (Expression <Func <string, string> >)(c => string.Format(default(IFormatProvider), c, default(object[]))),
                (Expression <Func <string, JProperty> >)(c => new JProperty(c, default(object))),
                (Expression <Func <string, JProperty> >)(c => new JProperty(c, default(object[]))));
#pragma warning restore CA1305  // Specify IFormatProvider
#pragma warning restore IDE0034 // Simplify 'default' expression

            engine.Options.ExpressionPolicy.DelegateCache   = new SimpleCompiledDelegateCache();
            engine.Options.ExpressionPolicy.InMemoryCache   = new QueryEvaluatorExpressionHeap(constantHoister);
            engine.Options.ExpressionPolicy.ConstantHoister = constantHoister;

            return(engine);
        }
Beispiel #4
0
 public OutputEdge(EdgeDescription edge, IReactiveServiceResolver serviceResolver, IReliableReactive reactiveService)
 {
     _edge                  = edge;
     _serviceResolver       = serviceResolver;
     _parentReactiveService = reactiveService;
 }
 public CheckpointingQueryEngine(Uri uri, IReactiveServiceResolver serviceResolver, IScheduler scheduler, IReactiveMetadata metadataRegistry, IKeyValueStore keyValueStore, IQuotedTypeConversionTargets quotedTypeConversionTargets, TraceSource traceSource, ICompiledDelegateCache delegateCache)
     : base(uri, serviceResolver, scheduler, metadataRegistry, keyValueStore, SerializationPolicy.Default, quotedTypeConversionTargets, traceSource, delegateCache)
 {
     _objectSpace = new PersistedObjectSpace(new SerializationFactory());
 }
Beispiel #6
0
 public ReliableEdgeBinder(IQueryEngineRegistry registry, IReactiveServiceResolver resolver)
     : base(registry)
 {
     Debug.Assert(resolver != null);
     _resolver = resolver;
 }