Example #1
0
 public StatelessFileQueueReader(IEnvelopeStreamer streamer, ISystemObserver observer, Lazy <DirectoryInfo> posionQueue, DirectoryInfo queue, string queueName)
 {
     _streamer    = streamer;
     _observer    = observer;
     _posionQueue = posionQueue;
     _queue       = queue;
     _queueName   = queueName;
 }
 public SnapshottingProcess(IStoreEvents eventStore, int threshold, TimeSpan checkInterval,
                            ISystemObserver observer)
 {
     this.eventStore    = eventStore;
     this.checkInterval = checkInterval;
     this.observer      = observer;
     this.threshold     = threshold;
 }
 public StatelessFileQueueReader(IEnvelopeStreamer streamer, ISystemObserver observer, Lazy<DirectoryInfo> posionQueue, DirectoryInfo queue, string queueName)
 {
     _streamer = streamer;
     _observer = observer;
     _posionQueue = posionQueue;
     _queue = queue;
     _queueName = queueName;
 }
Example #4
0
 public void DetachObserver(ISystemObserver observer)
 {
     _observers.Remove(observer);
     if (_system != null)
     {
         observer.DetachedFromSystem(_system);
     }
 }
Example #5
0
 public void DetachLocalObserver(ISystemObserver observer)
 {
     _localObservers.Remove(observer);
     if (_currentSystem != null)
     {
         _currentSystem.Mediator.DetachObserver(observer);
     }
 }
Example #6
0
 public void AttachLocalObserver(ISystemObserver observer)
 {
     _localObservers.Add(observer);
     if (_currentSystem != null)
     {
         _currentSystem.Mediator.AttachObserver(observer);
     }
 }
Example #7
0
 public DispatchOneEvent(
     MessageActivationInfo[] directory,
     ISystemObserver observer,
     IMessageDispatchStrategy strategy)
 {
     _observer  = observer;
     _directory = directory;
     _strategy  = strategy;
 }
        public DefaultMessageSender(IQueueWriter[] queues, ISystemObserver observer, Func<string> idGenerator)
        {
            _queues = queues;
            _observer = observer;
            _idGenerator = idGenerator;

            if (queues.Length == 0)
                throw new InvalidOperationException("There should be at least one queue");
        }
 public DispatchOneEvent(
     MessageActivationInfo[] directory,
     ISystemObserver observer,
     IMessageDispatchStrategy strategy)
 {
     _observer = observer;
     _directory = directory;
     _strategy = strategy;
 }
        /// <summary>
        /// Azures the index builder.
        /// </summary>
        /// <param name="repository">The repository.</param>
        /// <param name="searchProvider">The search provider.</param>
        /// <param name="messageSender">The message sender.</param>
        /// <param name="consumerFactory">The consumer factory.</param>
        /// <param name="observer">The observer.</param>
        /// <param name="queueReader">The queue reader.</param>
        /// <param name="indexBuilders">The index builders.</param>
        public SearchIndexController(IBuildSettingsRepository repository, ISearchProvider searchProvider, IMessageSender messageSender, IConsumerFactory consumerFactory, ISystemObserver observer, IQueueReader queueReader, ISearchIndexBuilder[] indexBuilders)
		{
			_repository = repository;
			_messageSender = messageSender;
			_observer = observer;
			_queueReader = queueReader;
			_consumerFactory = consumerFactory;
            _searchProvider = searchProvider;
            _indexBuilders = indexBuilders;
		}
Example #11
0
 /// <summary>
 /// Azures the index builder.
 /// </summary>
 /// <param name="repository">The repository.</param>
 /// <param name="searchProvider">The search provider.</param>
 /// <param name="messageSender">The message sender.</param>
 /// <param name="consumerFactory">The consumer factory.</param>
 /// <param name="observer">The observer.</param>
 /// <param name="queueReader">The queue reader.</param>
 /// <param name="indexBuilders">The index builders.</param>
 public SearchIndexController(IBuildSettingsRepository repository, ISearchProvider searchProvider, IMessageSender messageSender, IConsumerFactory consumerFactory, ISystemObserver observer, IQueueReader queueReader, ISearchIndexBuilder[] indexBuilders)
 {
     _repository      = repository;
     _messageSender   = messageSender;
     _observer        = observer;
     _queueReader     = queueReader;
     _consumerFactory = consumerFactory;
     _searchProvider  = searchProvider;
     _indexBuilders   = indexBuilders;
 }
        public DefaultMessageSender(IQueueWriter[] queues, ISystemObserver observer, Func <string> idGenerator)
        {
            _queues      = queues;
            _observer    = observer;
            _idGenerator = idGenerator;

            if (queues.Length == 0)
            {
                throw new InvalidOperationException("There should be at least one queue");
            }
        }
Example #13
0
 public void AttachObserver(ISystemObserver observer)
 {
     _observers.Add(observer);
     if (_system != null)
     {
         observer.AttachedToSystem(_system);
         if (observer.AutoInitialize)
         {
             InitializeObserverWithCurrentSystem(observer);
         }
     }
 }
Example #14
0
 public void DetachObserver(ISystemObserver observer)
 {
     if (!_observers.Contains(observer))
     {
         return;
     }
     _observers.Remove(observer);
     if (_system != null)
     {
         observer.DetachedFromSystem(_system);
     }
 }
 public DispatcherProcess(ISystemObserver observer,
                          ISingleThreadMessageDispatcher dispatcher,
                          IPartitionInbox inbox,
                          IEnvelopeQuarantine quarantine,
                          MessageDuplicationManager manager)
 {
     _dispatcher = dispatcher;
     _quarantine = quarantine;
     _observer   = observer;
     _inbox      = inbox;
     _memory     = manager.GetOrAdd(this);
 }
 public AzurePartitionFactory(
     IEnvelopeStreamer streamer,
     ISystemObserver observer,
     IAzureStorageConfig config,
     TimeSpan queueVisibilityTimeout,
     Func<uint, TimeSpan> decayPolicy)
 {
     _streamer = streamer;
     _queueVisibilityTimeout = queueVisibilityTimeout;
     _decayPolicy = decayPolicy;
     _config = config;
     _observer = observer;
 }
		public AzureQueueBase(ISystemObserver observer,
							  IMessageSerializer serializer)
		{
			this.CloudAccount = AzureConfiguration.Instance.AzureStorageAccount;
			this.Serializer = serializer;
			this.Observer = observer;

			var blobClient = this.CloudAccount.CreateCloudBlobClient();
			blobClient.RetryPolicy = new NoRetry();

			this.CloudBlob = blobClient.GetContainerReference(BlobName);
			this.CloudBlob.CreateIfNotExists();
		}
 public AzurePartitionFactory(
     IEnvelopeStreamer streamer,
     ISystemObserver observer,
     IAzureStorageConfig config,
     TimeSpan queueVisibilityTimeout,
     Func <uint, TimeSpan> decayPolicy)
 {
     _streamer = streamer;
     _queueVisibilityTimeout = queueVisibilityTimeout;
     _decayPolicy            = decayPolicy;
     _config   = config;
     _observer = observer;
 }
 public StatelessSqlQueueReader(
     ISqlStorageConfig config,
     string name,
     ISystemObserver provider,
     IEnvelopeStreamer streamer, 
     TimeSpan visibilityTimeout
 )
 {
     _config            = config;
     _observer          = provider;
     _queueName         = name;
     _streamer          = streamer;
     _visibilityTimeout = visibilityTimeout;
 }
 public SnapshottingProcess(IStoreEvents eventStore, 
     Func<string, Type> aggregateTypeResolver, 
     IRepository repository, 
     int threshold, 
     TimeSpan checkInterval,
     ISystemObserver observer)
 {
     this.eventStore = eventStore;
     this.aggregateTypeResolver = aggregateTypeResolver;
     this.repository = repository;
     this.checkInterval = checkInterval;
     this.observer = observer;
     this.threshold = threshold;
 }
        public AzureQueueBase(ISystemObserver observer,
                              IMessageSerializer serializer)
        {
            this.CloudAccount = AzureConfiguration.Instance.AzureStorageAccount;
            this.Serializer   = serializer;
            this.Observer     = observer;

            var blobClient = this.CloudAccount.CreateCloudBlobClient();

            blobClient.RetryPolicy = new NoRetry();

            this.CloudBlob = blobClient.GetContainerReference(BlobName);
            this.CloudBlob.CreateIfNotExists();
        }
Example #22
0
 public StatelessAzureQueueReader(
     string name,
     CloudQueue primaryQueue,
     CloudBlobContainer container,
     Lazy <CloudQueue> poisonQueue,
     ISystemObserver provider,
     IEnvelopeStreamer streamer, TimeSpan visibilityTimeout)
 {
     _cloudBlob         = container;
     _queue             = primaryQueue;
     _posionQueue       = poisonQueue;
     _observer          = provider;
     _queueName         = name;
     _streamer          = streamer;
     _visibilityTimeout = visibilityTimeout;
 }
 public StatelessAzureQueueReader(
     string name,
     CloudQueue primaryQueue,
     CloudBlobContainer container,
     Lazy<CloudQueue> poisonQueue,
     ISystemObserver provider,
     IEnvelopeStreamer streamer, TimeSpan visibilityTimeout)
 {
     _cloudBlob = container;
     _queue = primaryQueue;
     _posionQueue = poisonQueue;
     _observer = provider;
     _queueName = name;
     _streamer = streamer;
     _visibilityTimeout = visibilityTimeout;
 }
Example #24
0
        void Configure(IComponentRegistry reg, ISystemObserver system)
        {
            reg.Register(system);

            // domain should go before serialization
            _directory(reg, _dataSerialization);
            _storage.Configure(reg);

            var types          = _dataSerialization.GetAndMakeReadOnly();
            var dataSerializer = _dataSerializer(types);
            var streamer       = new EnvelopeStreamer(_envelopeSerializer, dataSerializer);

            reg.Register(BuildRegistry);
            reg.Register(dataSerializer);
            reg.Register <IEnvelopeStreamer>(c => streamer);
            reg.Register(new MessageDuplicationManager());
        }
 public void Attach(ISystemObserver systemObserver)
 {
     systemObserversList.Add(systemObserver);
 }
Example #26
0
 public Task Subscribe(ISystemObserver observer)
 {
     observers.Subscribe(observer);
     return(TaskDone.Done);
 }
Example #27
0
        private void InitializeObserverWithCurrentSystem(ISystemObserver observer)
        {
            if (_system == null)
            {
                return;
            }

            observer.BeginInitialize();

            ReadOnlySignalSet allSignals = _system.GetAllSignals();

            for (int i = 0; i < allSignals.Count; i++)
            {
                observer.OnSignalAdded(allSignals[i], i);
            }

            ReadOnlyBusSet allBuses = _system.GetAllBuses();

            for (int i = 0; i < allBuses.Count; i++)
            {
                observer.OnBusAdded(allBuses[i], i);
            }

            ReadOnlyPortSet allPorts = _system.GetAllPorts();

            for (int i = 0; i < allPorts.Count; i++)
            {
                observer.OnPortAdded(allPorts[i], i);
            }

            for (int i = 0; i < allSignals.Count; i++)
            {
                Signal s = allSignals[i];
                if (s.IsDriven && allPorts.Contains(s.DrivenByPort))
                {
                    observer.OnPortDrivesSignal(s, s.DrivenByPort, s.DrivenByPort.OutputSignals.IndexOf(s));
                }
            }
            for (int i = 0; i < allPorts.Count; i++)
            {
                Port p = allPorts[i];
                for (int j = 0; j < p.InputSignalCount; j++)
                {
                    Signal s = p.InputSignals[j];
                    if (allSignals.Contains(s))
                    {
                        observer.OnSignalDrivesPort(s, p, j);
                    }
                }
            }

            ReadOnlySignalSet inputs = _system.GetAllInputs();

            for (int i = 0; i < inputs.Count; i++)
            {
                observer.OnInputAdded(inputs[i], i);
            }

            ReadOnlySignalSet outputs = _system.GetAllOutputs();

            for (int i = 0; i < outputs.Count; i++)
            {
                observer.OnOutputAdded(outputs[i], i);
            }

            observer.EndInitialize();
        }
 public async static System.Threading.Tasks.Task<ISystemObserver> CreateObjectReference(ISystemObserver obj)
 {
     if (methodInvoker == null) methodInvoker = new SystemObserverMethodInvoker();
     return SystemObserverFactory.Cast(await global::Orleans.Runtime.GrainReference.CreateObjectReference(obj, methodInvoker));
 }
Example #29
0
 public EngineHost(ISystemObserver observer, IEnumerable <IEngineProcess> serverProcesses)
 {
     _serverProcesses = serverProcesses;
     _observer        = observer;
 }
		public AzureQueueWriter(ISystemObserver observer,
								IMessageSerializer serializer)
			: base(observer, serializer)
		{
		}
Example #31
0
 public void DetachLocalObserver(ISystemObserver observer)
 {
     _localObservers.Remove(observer);
     if(_currentSystem != null)
         _currentSystem.Mediator.DetachObserver(observer);
 }
 public void DetachObserver(ISystemObserver observer)
 {
     if(!_observers.Contains(observer))
         return;
     _observers.Remove(observer);
     if(_system != null)
         observer.DetachedFromSystem(_system);
 }
 public void AttachObserver(ISystemObserver observer)
 {
     if(_observers.Contains(observer))
         return;
     _observers.Add(observer);
     if(_system != null)
     {
         observer.AttachedToSystem(_system);
         if(observer.AutoInitialize)
             InitializeObserverWithCurrentSystem(observer);
     }
 }
Example #34
0
 public static System.Threading.Tasks.Task DeleteObjectReference(ISystemObserver reference)
 {
     return(global::Orleans.Runtime.GrainReference.DeleteObjectReference(reference));
 }
        private void InitializeObserverWithCurrentSystem(ISystemObserver observer)
        {
            if(_system == null)
                return;

            observer.BeginInitialize();

            ReadOnlySignalSet allSignals = _system.GetAllSignals();
            for(int i = 0; i < allSignals.Count; i++)
                observer.OnSignalAdded(allSignals[i], i);

            ReadOnlyBusSet allBuses = _system.GetAllBuses();
            for(int i = 0; i < allBuses.Count; i++)
                observer.OnBusAdded(allBuses[i], i);

            ReadOnlyPortSet allPorts = _system.GetAllPorts();
            for(int i = 0; i < allPorts.Count; i++)
                observer.OnPortAdded(allPorts[i], i);

            for(int i = 0; i < allSignals.Count; i++)
            {
                Signal s = allSignals[i];
                if(s.IsDriven && allPorts.Contains(s.DrivenByPort))
                    observer.OnPortDrivesSignal(s, s.DrivenByPort, s.DrivenByPort.OutputSignals.IndexOf(s));
            }
            for(int i = 0; i < allPorts.Count; i++)
            {
                Port p = allPorts[i];
                for(int j = 0; j < p.InputSignalCount; j++)
                {
                    Signal s = p.InputSignals[j];
                    if(allSignals.Contains(s))
                        observer.OnSignalDrivesPort(s, p, j);
                }
            }

            ReadOnlySignalSet inputs = _system.GetAllInputs();
            for(int i = 0; i < inputs.Count; i++)
                observer.OnInputAdded(inputs[i], i);

            ReadOnlySignalSet outputs = _system.GetAllOutputs();
            for(int i = 0; i < outputs.Count; i++)
                observer.OnOutputAdded(outputs[i], i);

            observer.EndInitialize();
        }
Example #36
0
 public Task Unsubscribe(ISystemObserver observer)
 {
     this.observers.Unsubscribe(observer);
     return(Task.CompletedTask);
 }
 public void Detach(ISystemObserver systemObserver)
 {
     systemObserversList.Remove(systemObserver);
 }
 public AzureQueueWriter(ISystemObserver observer,
                         IMessageSerializer serializer)
     : base(observer, serializer)
 {
 }
Example #39
0
 public void AttachLocalObserver(ISystemObserver observer)
 {
     _localObservers.Add(observer);
     if(_currentSystem != null)
         _currentSystem.Mediator.AttachObserver(observer);
 }
		public SingleThreadConsumingProcess(ISystemObserver observer, IConsumerFactory consumerFactory, IQueueReader queueReader)
		{
			_consumerFactory = consumerFactory;
			_observer = observer;
			_queueReader = queueReader;
		}
 public static System.Threading.Tasks.Task DeleteObjectReference(ISystemObserver reference)
 {
     return global::Orleans.Runtime.GrainReference.DeleteObjectReference(reference);
 }
 public Task Unsubscribe(ISystemObserver observer)
 {
     this.observers.Unsubscribe(observer);
     return TaskDone.Done;
 }
 public AtomicStorageInitialization(IEnumerable<IAtomicStorageFactory> storage, ISystemObserver observer)
 {
     _storage = storage;
     _observer = observer;
 }
Example #44
0
		public AzureQueueReader(ISystemObserver observer,
								IMessageSerializer serializer)
			: base(observer, serializer)
		{
			this._waiter = (x) => { return TimeSpan.FromSeconds(1); };
		}
Example #45
0
 public AzureQueueReader(ISystemObserver observer,
                         IMessageSerializer serializer)
     : base(observer, serializer)
 {
     this._waiter = (x) => { return(TimeSpan.FromSeconds(1)); };
 }
Example #46
0
 public Task Unsubscribe(ISystemObserver observer)
 {
     this.observers.Unsubscribe(observer);
     return(TaskDone.Done);
 }
Example #47
0
 public void DetachObserver(ISystemObserver observer)
 {
     _observers.Remove(observer);
     if(_system != null)
         observer.DetachedFromSystem(_system);
 }
 public AtomicStorageInitialization(IEnumerable <IAtomicStorageFactory> storage, ISystemObserver observer)
 {
     _storage  = storage;
     _observer = observer;
 }
 public PipelineHookSystemObserver(ISystemObserver observer)
 {
     this.observer = observer;
 }
 public SingleThreadConsumingProcess(ISystemObserver observer, IConsumerFactory consumerFactory, IQueueReader queueReader)
 {
     _consumerFactory = consumerFactory;
     _observer        = observer;
     _queueReader     = queueReader;
 }
        void Configure(IComponentRegistry reg, ISystemObserver system)
        {
            reg.Register(system);

            // domain should go before serialization
            _directory(reg, _dataSerialization);
            _storage.Configure(reg);

            var types = _dataSerialization.GetAndMakeReadOnly();
            var dataSerializer = _dataSerializer(types);
            var streamer = new EnvelopeStreamer(_envelopeSerializer, dataSerializer);

            reg.Register(BuildRegistry);
            reg.Register(dataSerializer);
            reg.Register<IEnvelopeStreamer>(c => streamer);
            reg.Register(new MessageDuplicationManager());
        }
 public PipelineHookSystemObserver(ISystemObserver observer)
 {
     this.observer = observer;
 }
Example #53
0
		public EngineHost(ISystemObserver observer,	IEnumerable<IEngineProcess> serverProcesses)
		{
			_serverProcesses = serverProcesses;
			_observer = observer;
		}
Example #54
0
 public async static System.Threading.Tasks.Task <ISystemObserver> CreateObjectReference(ISystemObserver obj)
 {
     if (methodInvoker == null)
     {
         methodInvoker = new SystemObserverMethodInvoker();
     }
     return(SystemObserverFactory.Cast(await global::Orleans.Runtime.GrainReference.CreateObjectReference(obj, methodInvoker)));
 }