/// <summary>
 /// Ctor.
 /// </summary>
 /// <param name="statementResultService">handles result delivery</param>
 /// <param name="dispatchService">for performing the dispatch</param>
 /// <param name="msecTimeout">timeout for preserving dispatch order through blocking</param>
 /// <param name="timeSourceService">time source provider</param>
 /// <param name="threadLocalManager">The thread local manager.</param>
 public UpdateDispatchViewBlockingSpin(StatementResultService statementResultService, DispatchService dispatchService, long msecTimeout, TimeSourceService timeSourceService, IThreadLocalManager threadLocalManager)
     : base(statementResultService, dispatchService, threadLocalManager)
 {
     _currentFutureSpin = new UpdateDispatchFutureSpin(timeSourceService); // use a completed future as a start
     _msecTimeout       = msecTimeout;
     _timeSourceService = timeSourceService;
 }
 protected abstract SchedulingServiceSPI MakeSchedulingService(
     EPServicesHA epServicesHA,
     TimeSourceService timeSourceService,
     RuntimeExtensionServices runtimeExt,
     RuntimeSettingsService runtimeSettingsService,
     StatementContextResolver statementContextResolver,
     string zoneId);
Exemple #3
0
 public StatementContextEngineServices(
     IContainer container,
     String engineURI,
     EventAdapterService eventAdapterService,
     NamedWindowMgmtService namedWindowMgmtService,
     VariableService variableService,
     TableService tableService,
     EngineSettingsService engineSettingsService,
     ValueAddEventService valueAddEventService,
     ConfigurationInformation configSnapshot,
     MetricReportingServiceSPI metricReportingService,
     ViewService viewService,
     ExceptionHandlingService exceptionHandlingService,
     ExpressionResultCacheService expressionResultCacheService,
     StatementEventTypeRef statementEventTypeRef,
     TableExprEvaluatorContext tableExprEvaluatorContext,
     EngineLevelExtensionServicesContext engineLevelExtensionServicesContext,
     RegexHandlerFactory regexHandlerFactory,
     StatementLockFactory statementLockFactory,
     ContextManagementService contextManagementService,
     ViewServicePreviousFactory viewServicePreviousFactory,
     EventTableIndexService eventTableIndexService,
     PatternNodeFactory patternNodeFactory,
     FilterBooleanExpressionFactory filterBooleanExpressionFactory,
     TimeSourceService timeSourceService,
     EngineImportService engineImportService,
     AggregationFactoryFactory aggregationFactoryFactory,
     SchedulingService schedulingService,
     ExprDeclaredService exprDeclaredService)
 {
     Container                           = container;
     EngineURI                           = engineURI;
     EventAdapterService                 = eventAdapterService;
     NamedWindowMgmtService              = namedWindowMgmtService;
     VariableService                     = variableService;
     TableService                        = tableService;
     EngineSettingsService               = engineSettingsService;
     ValueAddEventService                = valueAddEventService;
     ConfigSnapshot                      = configSnapshot;
     MetricReportingService              = metricReportingService;
     ViewService                         = viewService;
     ExceptionHandlingService            = exceptionHandlingService;
     ExpressionResultCacheService        = expressionResultCacheService;
     StatementEventTypeRef               = statementEventTypeRef;
     TableExprEvaluatorContext           = tableExprEvaluatorContext;
     EngineLevelExtensionServicesContext = engineLevelExtensionServicesContext;
     RegexHandlerFactory                 = regexHandlerFactory;
     StatementLockFactory                = statementLockFactory;
     ContextManagementService            = contextManagementService;
     ViewServicePreviousFactory          = viewServicePreviousFactory;
     EventTableIndexService              = eventTableIndexService;
     PatternNodeFactory                  = patternNodeFactory;
     FilterBooleanExpressionFactory      = filterBooleanExpressionFactory;
     TimeSourceService                   = timeSourceService;
     EngineImportService                 = engineImportService;
     AggregationFactoryFactory           = aggregationFactoryFactory;
     SchedulingService                   = schedulingService;
     ExprDeclaredService                 = exprDeclaredService;
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="timeSourceService">time source provider</param>
 /// <param name="lockManager">The lock manager.</param>
 public SchedulingServiceImpl(TimeSourceService timeSourceService, ILockManager lockManager)
 {
     _uLock         = lockManager.CreateLock(GetType());
     _timeHandleMap = new SortedList <long, IDictionary <long, ScheduleHandle> >();
     _handleSetMap  = new Dictionary <ScheduleHandle, IDictionary <long, ScheduleHandle> >();
     // initialize time to just before now as there is a check for duplicate external time events
     _currentTime = timeSourceService.GetTimeMillis() - 1;
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="stageId">stage id or -1 when not applicable</param>
 /// <param name="timeSourceService">time source provider</param>
 public SchedulingServiceImpl(int stageId, TimeSourceService timeSourceService)
 {
     _stageId = stageId;
     _timeHandleMap = new OrderedListDictionary<long, IDictionary<long, ScheduleHandle>>();
     _handleSetMap = new Dictionary<ScheduleHandle, IDictionary<long, ScheduleHandle>>();
     // initialize time to just before now as there is a check for duplicate external time events
     _currentTime = timeSourceService.TimeMillis - 1;
 }
Exemple #6
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="timeSourceService">time source provider</param>
 public SchedulingServiceImpl(TimeSourceService timeSourceService)
 {
     _uLock         = LockManager.CreateLock(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
     _timeHandleMap = new SortedList <long, IDictionary <ScheduleSlot, ScheduleHandle> >();
     _handleSetMap  = new Dictionary <ScheduleHandle, IDictionary <ScheduleSlot, ScheduleHandle> >();
     // initialize time to just before now as there is a check for duplicate external time events
     _currentTime = timeSourceService.GetTimeMillis() - 1;
 }
Exemple #7
0
        /// <summary>
        /// Ctor.
        /// </summary>
        /// <param name="expressionNoAnnotations">expression text witout annotations</param>
        /// <param name="isPattern">is true to indicate this is a pure pattern expression</param>
        /// <param name="dispatchService">for dispatching events to listeners to the statement</param>
        /// <param name="statementLifecycleSvc">handles lifecycle transitions for the statement</param>
        /// <param name="timeLastStateChange">the timestamp the statement was created and started</param>
        /// <param name="isBlockingDispatch">is true if the dispatch to listeners should block to preserve event generation order</param>
        /// <param name="isSpinBlockingDispatch">true to use spin locks blocking to deliver results, as locks are usually uncontended</param>
        /// <param name="msecBlockingTimeout">is the max number of milliseconds of block time</param>
        /// <param name="timeSourceService">time source provider</param>
        /// <param name="statementMetadata">statement metadata</param>
        /// <param name="userObject">the application define user object associated to each statement, if supplied</param>
        /// <param name="statementContext">the statement service context</param>
        /// <param name="isFailed">indicator to start in failed state</param>
        /// <param name="nameProvided">true to indicate a statement name has been provided and is not a system-generated name</param>
        public EPStatementImpl(
            String expressionNoAnnotations,
            bool isPattern,
            DispatchService dispatchService,
            StatementLifecycleSvc statementLifecycleSvc,
            long timeLastStateChange,
            bool isBlockingDispatch,
            bool isSpinBlockingDispatch,
            long msecBlockingTimeout,
            TimeSourceService timeSourceService,
            StatementMetadata statementMetadata,
            Object userObject,
            StatementContext statementContext,
            bool isFailed,
            bool nameProvided)
        {
            _statementLifecycleSvc = statementLifecycleSvc;
            _statementListenerSet  = new EPStatementListenerSet();

            IsPattern = isPattern;
            ExpressionNoAnnotations = expressionNoAnnotations;
            StatementContext        = statementContext;
            IsNameProvided          = nameProvided;

            if (isBlockingDispatch)
            {
                if (isSpinBlockingDispatch)
                {
                    _dispatchChildView = new UpdateDispatchViewBlockingSpin(
                        statementContext.StatementResultService,
                        dispatchService, msecBlockingTimeout,
                        timeSourceService,
                        statementContext.ThreadLocalManager);
                }
                else
                {
                    _dispatchChildView = new UpdateDispatchViewBlockingWait(
                        statementContext.StatementResultService,
                        dispatchService, msecBlockingTimeout,
                        statementContext.ThreadLocalManager);
                }
            }
            else
            {
                _dispatchChildView = new UpdateDispatchViewNonBlocking(
                    statementContext.StatementResultService,
                    dispatchService,
                    statementContext.ThreadLocalManager);
            }

            State = !isFailed ? EPStatementState.STOPPED : EPStatementState.FAILED;
            TimeLastStateChange = timeLastStateChange;
            StatementMetadata   = statementMetadata;
            UserObject          = userObject;
            statementContext.StatementResultService.SetUpdateListeners(_statementListenerSet, false);
        }
Exemple #8
0
 protected override SchedulingServiceSPI MakeSchedulingService(
     EPServicesHA epServicesHA,
     TimeSourceService timeSourceService,
     RuntimeExtensionServices runtimeExt,
     RuntimeSettingsService runtimeSettingsService,
     StatementContextResolver statementContextResolver,
     string zoneId)
 {
     return new SchedulingServiceImpl(-1, timeSourceService);
 }
Exemple #9
0
 /// <summary>Ctor. </summary>
 /// <param name="view">is the blocking dispatch view through which to execute a dispatch</param>
 /// <param name="earlier">is the older future</param>
 /// <param name="msecTimeout">is the timeout period to wait for listeners to complete a prior dispatch</param>
 /// <param name="timeSourceService">time source provider</param>
 public UpdateDispatchFutureSpin(UpdateDispatchViewBlockingSpin view,
                                 UpdateDispatchFutureSpin earlier,
                                 long msecTimeout,
                                 TimeSourceService timeSourceService)
 {
     _view              = view;
     _earlier           = earlier;
     _msecTimeout       = msecTimeout;
     _timeSourceService = timeSourceService;
 }
 /// <summary>
 ///     Ctor.
 /// </summary>
 /// <param name="dispatchService">for performing the dispatch</param>
 /// <param name="msecTimeout">timeout for preserving dispatch order through blocking</param>
 /// <param name="statementResultService">handles result delivery</param>
 /// <param name="timeSourceService">time source provider</param>
 /// <param name="eventType">event type</param>
 public UpdateDispatchViewBlockingSpin(
     EventType eventType,
     StatementResultService statementResultService,
     DispatchService dispatchService,
     long msecTimeout,
     TimeSourceService timeSourceService)
     : base(eventType, statementResultService, dispatchService)
 {
     currentFutureSpin = new UpdateDispatchFutureSpin(timeSourceService); // use a completed future as a start
     this.msecTimeout = msecTimeout;
     this.timeSourceService = timeSourceService;
 }
Exemple #11
0
        private void AssertTimeWithinTolerance(long TOLERANCE_MILLISECS, TimeSourceService nanos, TimeSourceService millis)
        {
            TimeSourceServiceImpl.IS_SYSTEM_CURRENT_TIME = true;
            long nanosWallClockTime = nanos.GetTimeMillis();

            TimeSourceServiceImpl.IS_SYSTEM_CURRENT_TIME = false;
            long millisWallClockTime = millis.GetTimeMillis();

            long diff = nanosWallClockTime - millisWallClockTime;

            log.Info("diff=" + diff + " between " + nanos + " and " + millis);
            Assert.IsTrue(Math.Abs(diff) < TOLERANCE_MILLISECS, "Diff " + diff + " >= " + TOLERANCE_MILLISECS);
        }
Exemple #12
0
 public NamedWindowTailViewBase(
     EventType eventType,
     bool isParentBatchWindow,
     EPStatementInitServices services)
 {
     this.eventType = eventType;
     namedWindowManagementService = services.NamedWindowManagementService;
     namedWindowDispatchService = services.NamedWindowDispatchService;
     statementResultService = services.StatementResultService;
     isPrioritized = services.RuntimeSettingsService.ConfigurationRuntime.Execution.IsPrioritized;
     this.isParentBatchWindow = isParentBatchWindow;
     threadingConfig = services.RuntimeSettingsService.ConfigurationRuntime.Threading;
     timeSourceService = services.TimeSourceService;
 }
 public NamedWindowTailView CreateTailView(
     EventType eventType,
     NamedWindowMgmtService namedWindowMgmtService,
     NamedWindowDispatchService namedWindowDispatchService,
     StatementResultService statementResultService,
     ValueAddEventProcessor revisionProcessor,
     bool prioritized,
     bool parentBatchWindow,
     string contextName,
     TimeSourceService timeSourceService,
     ConfigurationEngineDefaults.Threading threadingConfig)
 {
     return(new NamedWindowTailView(eventType, namedWindowMgmtService, namedWindowDispatchService, statementResultService, revisionProcessor, _isPrioritized, parentBatchWindow, timeSourceService, threadingConfig));
 }
Exemple #14
0
        private void AssertTimeWithinTolerance(
            long TOLERANCE_MILLISECS,
            TimeSourceService nanos,
            TimeSourceService millis)
        {
            TimeSourceServiceImpl.IsSystemCurrentTime = true;
            var nanosWallClockTime = nanos.TimeMillis;

            TimeSourceServiceImpl.IsSystemCurrentTime = false;
            var millisWallClockTime = millis.TimeMillis;

            var diff = nanosWallClockTime - millisWallClockTime;

            log.Info("diff=" + diff + " between " + nanos + " and " + millis);

            Assert.That(Math.Abs(diff), Is.LessThan(TOLERANCE_MILLISECS));
        }
Exemple #15
0
        /// <summary>
        /// Ctor.
        /// </summary>
        /// <param name="name">the factory name</param>
        /// <param name="enabled"></param>
        /// <param name="msecWait">the number of milliseconds latches will await maximually</param>
        /// <param name="locking">the blocking strategy to employ</param>
        /// <param name="timeSourceService">time source provider</param>
        /// <param name="initializenow"></param>
        public NamedWindowConsumerLatchFactory(string name, bool enabled, long msecWait, ConfigurationEngineDefaults.Threading.Locking locking, TimeSourceService timeSourceService, bool initializenow)
        {
            Name              = name;
            Enabled           = enabled;
            MsecWait          = msecWait;
            TimeSourceService = timeSourceService;

            UseSpin = enabled && (locking == ConfigurationEngineDefaults.Threading.Locking.SPIN);

            // construct a completed latch as an initial root latch
            if (initializenow && UseSpin)
            {
                _currentLatchSpin = new NamedWindowConsumerLatchSpin(this);
            }
            else if (initializenow && enabled)
            {
                _currentLatchWait = new NamedWindowConsumerLatchWait(this);
            }
        }
Exemple #16
0
        /// <summary>
        /// Ctor.
        /// </summary>
        /// <param name="name">the factory name</param>
        /// <param name="stateless">if set to <c>true</c> [stateless].</param>
        /// <param name="msecWait">the number of milliseconds latches will await maximually</param>
        /// <param name="locking">the blocking strategy to employ</param>
        /// <param name="timeSourceService">time source provider</param>
        public InsertIntoLatchFactory(String name, bool stateless, long msecWait, ConfigurationEngineDefaults.Threading.Locking locking, TimeSourceService timeSourceService)
        {
            _name              = name;
            _msecWait          = msecWait;
            _timeSourceService = timeSourceService;
            _stateless         = stateless;

            _useSpin = (locking == ConfigurationEngineDefaults.Threading.Locking.SPIN);

            // construct a completed latch as an initial root latch
            if (_useSpin)
            {
                _currentLatchSpin = new InsertIntoLatchSpin(this);
            }
            else
            {
                _currentLatchWait = new InsertIntoLatchWait(this);
            }
        }
 public EPStatementSPI Make(
     string expressionNoAnnotations,
     bool isPattern,
     DispatchService dispatchService,
     StatementLifecycleSvcImpl statementLifecycleSvc,
     long timeLastStateChange,
     bool preserveDispatchOrder,
     bool isSpinLocks,
     long blockingTimeout,
     TimeSourceService timeSource,
     StatementMetadata statementMetadata,
     object statementUserObject,
     StatementContext statementContext,
     bool isFailed,
     bool nameProvided)
 {
     return(new EPStatementImpl(
                expressionNoAnnotations, isPattern, dispatchService, statementLifecycleSvc, timeLastStateChange,
                preserveDispatchOrder, isSpinLocks, blockingTimeout, timeSource, statementMetadata, statementUserObject,
                statementContext, isFailed, nameProvided));
 }
Exemple #18
0
        private volatile IDictionary <EPStatementAgentInstanceHandle, IList <NamedWindowConsumerView> > _consumersNonContext;  // handles as copy-on-write

        public NamedWindowTailView(
            EventType eventType,
            NamedWindowMgmtService namedWindowMgmtService,
            NamedWindowDispatchService namedWindowDispatchService,
            StatementResultService statementResultService,
            ValueAddEventProcessor revisionProcessor,
            bool prioritized,
            bool parentBatchWindow,
            TimeSourceService timeSourceService,
            ConfigurationEngineDefaults.ThreadingConfig threadingConfig)
        {
            EventType = eventType;
            NamedWindowMgmtService     = namedWindowMgmtService;
            NamedWindowDispatchService = namedWindowDispatchService;
            StatementResultService     = statementResultService;
            RevisionProcessor          = revisionProcessor;
            IsPrioritized        = prioritized;
            IsParentBatchWindow  = parentBatchWindow;
            _consumersNonContext = NamedWindowUtil.CreateConsumerMap(IsPrioritized);
            ThreadingConfig      = threadingConfig;
            TimeSourceService    = timeSourceService;
        }
        /// <summary>
        ///     Ctor.
        /// </summary>
        /// <param name="name">the factory name</param>
        /// <param name="msecWait">the number of milliseconds latches will await maximally</param>
        /// <param name="locking">the blocking strategy to employ</param>
        /// <param name="timeSourceService">time source provider</param>
        /// <param name="stateless">indicator whether stateless</param>
        public InsertIntoLatchFactory(
            string name,
            bool stateless,
            int msecWait,
            Locking locking,
            TimeSourceService timeSourceService)
        {
            Name = name;
            this.msecWait = msecWait;
            TimeSourceService = timeSourceService;
            this.stateless = stateless;

            useSpin = locking == Locking.SPIN;

            // construct a completed latch as an initial root latch
            if (useSpin) {
                currentLatchSpin = new InsertIntoLatchSpin(this);
            }
            else {
                currentLatchWait = new InsertIntoLatchWait(this);
            }
        }
        /// <summary>
        ///     Ctor.
        /// </summary>
        /// <param name="name">the factory name</param>
        /// <param name="msecWait">the number of milliseconds latches will await maximally</param>
        /// <param name="locking">the blocking strategy to employ</param>
        /// <param name="timeSourceService">time source provider</param>
        /// <param name="initializeNow">for initializing</param>
        /// <param name="enabled">for active indicator</param>
        public NamedWindowConsumerLatchFactory(
            string name,
            bool enabled,
            int msecWait,
            Locking locking,
            TimeSourceService timeSourceService,
            bool initializeNow)
        {
            this.name = name;
            this.enabled = enabled;
            this.msecWait = msecWait;
            this.timeSourceService = timeSourceService;

            useSpin = enabled && locking == Locking.SPIN;

            // construct a completed latch as an initial root latch
            if (initializeNow && useSpin) {
                currentLatchSpin = new NamedWindowConsumerLatchSpin(this);
            }
            else if (initializeNow && enabled) {
                currentLatchWait = new NamedWindowConsumerLatchWait(this);
            }
        }
 /// <summary>
 /// Creates an implementation of the SchedulingService interface.
 /// </summary>
 /// <param name="timeSourceService">time source provider</param>
 /// <param name="lockManager">The lock manager.</param>
 /// <returns>
 /// implementation
 /// </returns>
 public static SchedulingServiceSPI NewService(
     TimeSourceService timeSourceService,
     ILockManager lockManager)
 {
     return(new SchedulingServiceImpl(timeSourceService, lockManager));
 }
 public SchedulingServiceImpl(TimeSourceService timeSourceService, IContainer container)
     : this(timeSourceService, container.Resolve <ILockManager>())
 {
 }
        // Supplied after construction to avoid circular dependency

        /// <summary>
        /// Constructor - sets up new set of services.
        /// </summary>
        /// <param name="engineURI">is the engine URI</param>
        /// <param name="schedulingService">service to get time and schedule callbacks</param>
        /// <param name="eventAdapterService">service to resolve event types</param>
        /// <param name="engineImportService">is engine imported static func packages and aggregation functions</param>
        /// <param name="engineSettingsService">provides engine settings</param>
        /// <param name="databaseConfigService">service to resolve a database name to database connection factory and configs</param>
        /// <param name="plugInViews">resolves view namespace and name to view factory class</param>
        /// <param name="statementLockFactory">creates statement-level locks</param>
        /// <param name="eventProcessingRWLock">is the engine lock for statement management</param>
        /// <param name="extensionServicesContext">marker interface allows adding additional services</param>
        /// <param name="engineEnvContext">is engine environment/directory information for use with adapters and external env</param>
        /// <param name="statementContextFactory">is the factory to use to create statement context objects</param>
        /// <param name="plugInPatternObjects">resolves plug-in pattern objects</param>
        /// <param name="timerService">is the timer service</param>
        /// <param name="filterService">the filter service</param>
        /// <param name="streamFactoryService">is hooking up filters to streams</param>
        /// <param name="namedWindowMgmtService">The named window MGMT service.</param>
        /// <param name="namedWindowDispatchService">The named window dispatch service.</param>
        /// <param name="variableService">provides access to variable values</param>
        /// <param name="tableService">The table service.</param>
        /// <param name="timeSourceService">time source provider class</param>
        /// <param name="valueAddEventService">handles Update events</param>
        /// <param name="metricsReportingService">for metric reporting</param>
        /// <param name="statementEventTypeRef">statement to event type reference holding</param>
        /// <param name="statementVariableRef">statement to variabke reference holding</param>
        /// <param name="configSnapshot">configuration snapshot</param>
        /// <param name="threadingServiceImpl">engine-level threading services</param>
        /// <param name="internalEventRouter">routing of events</param>
        /// <param name="statementIsolationService">maintains isolation information per statement</param>
        /// <param name="schedulingMgmtService">schedule management for statements</param>
        /// <param name="deploymentStateService">The deployment state service.</param>
        /// <param name="exceptionHandlingService">The exception handling service.</param>
        /// <param name="patternNodeFactory">The pattern node factory.</param>
        /// <param name="eventTypeIdGenerator">The event type id generator.</param>
        /// <param name="statementMetadataFactory">The statement metadata factory.</param>
        /// <param name="contextManagementService">The context management service.</param>
        /// <param name="patternSubexpressionPoolSvc">The pattern subexpression pool SVC.</param>
        /// <param name="matchRecognizeStatePoolEngineSvc">The match recognize state pool engine SVC.</param>
        /// <param name="dataFlowService">The data flow service.</param>
        /// <param name="exprDeclaredService">The expr declared service.</param>
        /// <param name="contextControllerFactoryFactorySvc">The context controller factory factory SVC.</param>
        /// <param name="contextManagerFactoryService">The context manager factory service.</param>
        /// <param name="epStatementFactory">The ep statement factory.</param>
        /// <param name="regexHandlerFactory">The regex handler factory.</param>
        /// <param name="viewableActivatorFactory">The viewable activator factory.</param>
        /// <param name="filterNonPropertyRegisteryService">The filter non property registery service.</param>
        /// <param name="resultSetProcessorHelperFactory">The result set processor helper factory.</param>
        /// <param name="viewServicePreviousFactory">The view service previous factory.</param>
        /// <param name="eventTableIndexService">The event table index service.</param>
        /// <param name="epRuntimeIsolatedFactory">The ep runtime isolated factory.</param>
        /// <param name="filterBooleanExpressionFactory">The filter boolean expression factory.</param>
        /// <param name="dataCacheFactory">The data cache factory.</param>
        /// <param name="multiMatchHandlerFactory">The multi match handler factory.</param>
        /// <param name="namedWindowConsumerMgmtService">The named window consumer MGMT service.</param>
        /// <param name="aggregationFactoryFactory"></param>
        /// <param name="scriptingService">The scripting service.</param>
        public EPServicesContext(
            string engineURI,
            SchedulingServiceSPI schedulingService,
            EventAdapterService eventAdapterService,
            EngineImportService engineImportService,
            EngineSettingsService engineSettingsService,
            DatabaseConfigService databaseConfigService,
            PluggableObjectCollection plugInViews,
            StatementLockFactory statementLockFactory,
            IReaderWriterLock eventProcessingRWLock,
            EngineLevelExtensionServicesContext extensionServicesContext,
            Directory engineEnvContext,
            StatementContextFactory statementContextFactory,
            PluggableObjectCollection plugInPatternObjects,
            TimerService timerService,
            FilterServiceSPI filterService,
            StreamFactoryService streamFactoryService,
            NamedWindowMgmtService namedWindowMgmtService,
            NamedWindowDispatchService namedWindowDispatchService,
            VariableService variableService,
            TableService tableService,
            TimeSourceService timeSourceService,
            ValueAddEventService valueAddEventService,
            MetricReportingServiceSPI metricsReportingService,
            StatementEventTypeRef statementEventTypeRef,
            StatementVariableRef statementVariableRef,
            ConfigurationInformation configSnapshot,
            ThreadingService threadingServiceImpl,
            InternalEventRouterImpl internalEventRouter,
            StatementIsolationService statementIsolationService,
            SchedulingMgmtService schedulingMgmtService,
            DeploymentStateService deploymentStateService,
            ExceptionHandlingService exceptionHandlingService,
            PatternNodeFactory patternNodeFactory,
            EventTypeIdGenerator eventTypeIdGenerator,
            StatementMetadataFactory statementMetadataFactory,
            ContextManagementService contextManagementService,
            PatternSubexpressionPoolEngineSvc patternSubexpressionPoolSvc,
            MatchRecognizeStatePoolEngineSvc matchRecognizeStatePoolEngineSvc,
            DataFlowService dataFlowService,
            ExprDeclaredService exprDeclaredService,
            ContextControllerFactoryFactorySvc contextControllerFactoryFactorySvc,
            ContextManagerFactoryService contextManagerFactoryService,
            EPStatementFactory epStatementFactory,
            RegexHandlerFactory regexHandlerFactory,
            ViewableActivatorFactory viewableActivatorFactory,
            FilterNonPropertyRegisteryService filterNonPropertyRegisteryService,
            ResultSetProcessorHelperFactory resultSetProcessorHelperFactory,
            ViewServicePreviousFactory viewServicePreviousFactory,
            EventTableIndexService eventTableIndexService,
            EPRuntimeIsolatedFactory epRuntimeIsolatedFactory,
            FilterBooleanExpressionFactory filterBooleanExpressionFactory,
            DataCacheFactory dataCacheFactory,
            MultiMatchHandlerFactory multiMatchHandlerFactory,
            NamedWindowConsumerMgmtService namedWindowConsumerMgmtService,
            AggregationFactoryFactory aggregationFactoryFactory,
            ScriptingService scriptingService)
        {
            EngineURI             = engineURI;
            SchedulingService     = schedulingService;
            EventAdapterService   = eventAdapterService;
            EngineImportService   = engineImportService;
            EngineSettingsService = engineSettingsService;
            DatabaseRefService    = databaseConfigService;
            FilterService         = filterService;
            TimerService          = timerService;
            DispatchService       = DispatchServiceProvider.NewService();
            ViewService           = ViewServiceProvider.NewService();
            StreamService         = streamFactoryService;
            PlugInViews           = plugInViews;
            StatementLockFactory  = statementLockFactory;
            EventProcessingRWLock = eventProcessingRWLock;
            EngineLevelExtensionServicesContext = extensionServicesContext;
            EngineEnvContext           = engineEnvContext;
            StatementContextFactory    = statementContextFactory;
            PlugInPatternObjects       = plugInPatternObjects;
            NamedWindowMgmtService     = namedWindowMgmtService;
            NamedWindowDispatchService = namedWindowDispatchService;
            VariableService            = variableService;
            TableService                     = tableService;
            TimeSource                       = timeSourceService;
            ValueAddEventService             = valueAddEventService;
            MetricsReportingService          = metricsReportingService;
            StatementEventTypeRefService     = statementEventTypeRef;
            ConfigSnapshot                   = configSnapshot;
            ThreadingService                 = threadingServiceImpl;
            InternalEventRouter              = internalEventRouter;
            StatementIsolationService        = statementIsolationService;
            SchedulingMgmtService            = schedulingMgmtService;
            StatementVariableRefService      = statementVariableRef;
            DeploymentStateService           = deploymentStateService;
            ExceptionHandlingService         = exceptionHandlingService;
            PatternNodeFactory               = patternNodeFactory;
            EventTypeIdGenerator             = eventTypeIdGenerator;
            StatementMetadataFactory         = statementMetadataFactory;
            ContextManagementService         = contextManagementService;
            PatternSubexpressionPoolSvc      = patternSubexpressionPoolSvc;
            MatchRecognizeStatePoolEngineSvc = matchRecognizeStatePoolEngineSvc;
            DataFlowService                  = dataFlowService;
            ExprDeclaredService              = exprDeclaredService;
            ExpressionResultCacheSharable    = new ExpressionResultCacheService(
                configSnapshot.EngineDefaults.ExecutionConfig.DeclaredExprValueCacheSize);
            ContextControllerFactoryFactorySvc = contextControllerFactoryFactorySvc;
            ContextManagerFactoryService       = contextManagerFactoryService;
            EpStatementFactory                = epStatementFactory;
            RegexHandlerFactory               = regexHandlerFactory;
            ViewableActivatorFactory          = viewableActivatorFactory;
            FilterNonPropertyRegisteryService = filterNonPropertyRegisteryService;
            ResultSetProcessorHelperFactory   = resultSetProcessorHelperFactory;
            ViewServicePreviousFactory        = viewServicePreviousFactory;
            EventTableIndexService            = eventTableIndexService;
            EpRuntimeIsolatedFactory          = epRuntimeIsolatedFactory;
            FilterBooleanExpressionFactory    = filterBooleanExpressionFactory;
            DataCacheFactory               = dataCacheFactory;
            MultiMatchHandlerFactory       = multiMatchHandlerFactory;
            NamedWindowConsumerMgmtService = namedWindowConsumerMgmtService;
            AggregationFactoryFactory      = aggregationFactoryFactory;
            ScriptingService               = scriptingService;
        }
Exemple #24
0
 /// <summary>
 /// Creates an implementation of the SchedulingService interface.
 /// </summary>
 /// <param name="timeSourceService">time source provider</param>
 /// <returns>implementation</returns>
 public static SchedulingServiceSPI NewService(TimeSourceService timeSourceService)
 {
     return(new SchedulingServiceImpl(timeSourceService));
 }
Exemple #25
0
 /// <summary>Ctor - use for the first future to indicate completion. </summary>
 /// <param name="timeSourceService">time source provider</param>
 public UpdateDispatchFutureSpin(TimeSourceService timeSourceService)
 {
     _isCompleted       = true;
     _timeSourceService = timeSourceService;
 }
Exemple #26
0
 public EPServicesContext(
     IContainer container,
     AggregationServiceFactoryService aggregationServiceFactoryService,
     BeanEventTypeFactoryPrivate beanEventTypeFactoryPrivate,
     BeanEventTypeStemService beanEventTypeStemService,
     ClassForNameProvider classForNameProvider,
     ParentClassLoader classLoaderParent,
     PathRegistry <string, ClassProvided> classProvidedPathRegistry,
     Configuration configSnapshot,
     ContextManagementService contextManagementService,
     PathRegistry <string, ContextMetaData> contextPathRegistry,
     ContextServiceFactory contextServiceFactory,
     EPDataFlowServiceImpl dataflowService,
     DataFlowFilterServiceAdapter dataFlowFilterServiceAdapter,
     DatabaseConfigServiceRuntime databaseConfigServiceRuntime,
     DeploymentLifecycleService deploymentLifecycleService,
     DispatchService dispatchService,
     RuntimeEnvContext runtimeEnvContext,
     RuntimeSettingsService runtimeSettingsService,
     string runtimeURI,
     ImportServiceRuntime importServiceRuntime,
     EPStatementFactory epStatementFactory,
     PathRegistry <string, ExpressionDeclItem> exprDeclaredPathRegistry,
     IReaderWriterLock eventProcessingRWLock,
     EPServicesHA epServicesHA,
     EPRuntimeSPI epRuntime,
     EventBeanService eventBeanService,
     EventBeanTypedEventFactory eventBeanTypedEventFactory,
     EPRenderEventServiceImpl eventRenderer,
     EventSerdeFactory eventSerdeFactory,
     EventTableIndexService eventTableIndexService,
     EventTypeAvroHandler eventTypeAvroHandler,
     EventTypeFactory eventTypeFactory,
     EventTypeIdResolver eventTypeIdResolver,
     PathRegistry <string, EventType> eventTypePathRegistry,
     EventTypeRepositoryImpl eventTypeRepositoryBus,
     EventTypeResolvingBeanFactory eventTypeResolvingBeanFactory,
     EventTypeSerdeRepository eventTypeSerdeRepository,
     ExceptionHandlingService exceptionHandlingService,
     ExpressionResultCacheService expressionResultCacheService,
     FilterBooleanExpressionFactory filterBooleanExpressionFactory,
     FilterServiceSPI filterService,
     FilterSharedBoolExprRepository filterSharedBoolExprRepository,
     FilterSharedLookupableRepository filterSharedLookupableRepository,
     HistoricalDataCacheFactory historicalDataCacheFactory,
     InternalEventRouterImpl internalEventRouter,
     MetricReportingService metricReportingService,
     MultiMatchHandlerFactory multiMatchHandlerFactory,
     NamedWindowConsumerManagementService namedWindowConsumerManagementService,
     NamedWindowDispatchService namedWindowDispatchService,
     NamedWindowFactoryService namedWindowFactoryService,
     NamedWindowManagementService namedWindowManagementService,
     PathRegistry <string, NamedWindowMetaData> namedWindowPathRegistry,
     PatternFactoryService patternFactoryService,
     PatternSubexpressionPoolRuntimeSvc patternSubexpressionPoolEngineSvc,
     ResultSetProcessorHelperFactory resultSetProcessorHelperFactory,
     RowRecogStateRepoFactory rowRecogStateRepoFactory,
     RowRecogStatePoolRuntimeSvc rowRecogStatePoolEngineSvc,
     SchedulingServiceSPI schedulingService,
     PathRegistry <NameAndParamNum, ExpressionScriptProvided> scriptPathRegistry,
     ScriptCompiler scriptCompiler,
     StageRecoveryService stageRecoveryService,
     StatementLifecycleService statementLifecycleService,
     StatementAgentInstanceLockFactory statementAgentInstanceLockFactory,
     StatementResourceHolderBuilder statementResourceHolderBuilder,
     TableExprEvaluatorContext tableExprEvaluatorContext,
     TableManagementService tableManagementService,
     PathRegistry <string, TableMetaData> tablePathRegistry,
     ThreadingService threadingService,
     TimeAbacus timeAbacus,
     TimeSourceService timeSourceService,
     TimerService timerService,
     VariableManagementService variableManagementService,
     PathRegistry <string, VariableMetaData> variablePathRegistry,
     ViewableActivatorFactory viewableActivatorFactory,
     ViewFactoryService viewFactoryService,
     ViewServicePreviousFactory viewServicePreviousFactory,
     XMLFragmentEventTypeFactory xmlFragmentEventTypeFactory)
 {
     _container = container;
     _aggregationServiceFactoryService = aggregationServiceFactoryService;
     _beanEventTypeFactoryPrivate      = beanEventTypeFactoryPrivate;
     _beanEventTypeStemService         = beanEventTypeStemService;
     _classForNameProvider             = classForNameProvider;
     _classLoaderParent            = classLoaderParent;
     _classProvidedPathRegistry    = classProvidedPathRegistry;
     _configSnapshot               = configSnapshot;
     _contextManagementService     = contextManagementService;
     _contextPathRegistry          = contextPathRegistry;
     _contextServiceFactory        = contextServiceFactory;
     _dataflowService              = dataflowService;
     _dataFlowFilterServiceAdapter = dataFlowFilterServiceAdapter;
     _databaseConfigServiceRuntime = databaseConfigServiceRuntime;
     _deploymentLifecycleService   = deploymentLifecycleService;
     _dispatchService              = dispatchService;
     _runtimeEnvContext            = runtimeEnvContext;
     _runtimeSettingsService       = runtimeSettingsService;
     _runtimeUri               = runtimeURI;
     _importServiceRuntime     = importServiceRuntime;
     _epStatementFactory       = epStatementFactory;
     _exprDeclaredPathRegistry = exprDeclaredPathRegistry;
     _eventProcessingRWLock    = eventProcessingRWLock;
     _epServicesHA             = epServicesHA;
     _epRuntime                            = epRuntime;
     _eventBeanService                     = eventBeanService;
     _eventBeanTypedEventFactory           = eventBeanTypedEventFactory;
     _eventRenderer                        = eventRenderer;
     _eventSerdeFactory                    = eventSerdeFactory;
     _eventTableIndexService               = eventTableIndexService;
     _eventTypeAvroHandler                 = eventTypeAvroHandler;
     _eventTypeFactory                     = eventTypeFactory;
     _eventTypeIdResolver                  = eventTypeIdResolver;
     _eventTypePathRegistry                = eventTypePathRegistry;
     _eventTypeRepositoryBus               = eventTypeRepositoryBus;
     _eventTypeResolvingBeanFactory        = eventTypeResolvingBeanFactory;
     _eventTypeSerdeRepository             = eventTypeSerdeRepository;
     _exceptionHandlingService             = exceptionHandlingService;
     _expressionResultCacheService         = expressionResultCacheService;
     _filterBooleanExpressionFactory       = filterBooleanExpressionFactory;
     _filterService                        = filterService;
     _filterSharedBoolExprRepository       = filterSharedBoolExprRepository;
     _filterSharedLookupableRepository     = filterSharedLookupableRepository;
     _historicalDataCacheFactory           = historicalDataCacheFactory;
     _internalEventRouter                  = internalEventRouter;
     _metricReportingService               = metricReportingService;
     _multiMatchHandlerFactory             = multiMatchHandlerFactory;
     _namedWindowConsumerManagementService = namedWindowConsumerManagementService;
     _namedWindowDispatchService           = namedWindowDispatchService;
     _namedWindowFactoryService            = namedWindowFactoryService;
     _namedWindowManagementService         = namedWindowManagementService;
     _namedWindowPathRegistry              = namedWindowPathRegistry;
     _patternFactoryService                = patternFactoryService;
     _patternSubexpressionPoolEngineSvc    = patternSubexpressionPoolEngineSvc;
     _resultSetProcessorHelperFactory      = resultSetProcessorHelperFactory;
     _rowRecogStateRepoFactory             = rowRecogStateRepoFactory;
     _rowRecogStatePoolEngineSvc           = rowRecogStatePoolEngineSvc;
     _schedulingService                    = schedulingService;
     _scriptPathRegistry                   = scriptPathRegistry;
     _stageRecoveryService                 = stageRecoveryService;
     _statementLifecycleService            = statementLifecycleService;
     _statementAgentInstanceLockFactory    = statementAgentInstanceLockFactory;
     _statementResourceHolderBuilder       = statementResourceHolderBuilder;
     _tableExprEvaluatorContext            = tableExprEvaluatorContext;
     _tableManagementService               = tableManagementService;
     _tablePathRegistry                    = tablePathRegistry;
     _threadingService                     = threadingService;
     _timeAbacus                           = timeAbacus;
     _timeSourceService                    = timeSourceService;
     _timerService                         = timerService;
     _variableManagementService            = variableManagementService;
     _variablePathRegistry                 = variablePathRegistry;
     _viewableActivatorFactory             = viewableActivatorFactory;
     _viewFactoryService                   = viewFactoryService;
     _viewServicePreviousFactory           = viewServicePreviousFactory;
     _xmlFragmentEventTypeFactory          = xmlFragmentEventTypeFactory;
     _scriptCompiler                       = scriptCompiler;
 }