Пример #1
0
        public void Track(ObjectRepositoryBase objectRepository, bool isReadonly)
        {
            if (!isReadonly)
            {
                _saveTimer = new Timer(_ => SaveChanges(), null, 0, 5000);
            }

            objectRepository.ModelChanged += (change) =>
            {
                switch (change.ChangeType)
                {
                case ChangeType.Update:
                    AddEntityToLookup((BaseEntity)change.Entity, _entitiesToUpdate);
                    break;

                case ChangeType.Add:
                    AddEntityToLookup((BaseEntity)change.Entity, _entitiesToAdd);
                    break;

                case ChangeType.Remove:
                    AddEntityToLookup((BaseEntity)change.Entity, _entitiesToRemove);
                    break;
                }
            };
        }
Пример #2
0
        public void Track(ObjectRepositoryBase objectRepository, bool isReadonly)
        {
            if (!isReadonly)
            {
                _saveTimer = new Timer(_ => SaveChanges(), null, 0, 5000);
            }

            objectRepository.ModelChanged += (change) =>
            {
                _isDirty = true;

                var itemsList = _store.GetOrAdd(change.Entity.GetType(), x => new ConcurrentList <BaseEntity>());

                switch (change.ChangeType)
                {
                case ChangeType.Add:
                    itemsList.Add(change.Entity);
                    break;

                case ChangeType.Remove:
                    itemsList.Remove(change.Entity);
                    break;
                }
            };
        }
Пример #3
0
        public ObjectRepositoryJobQueueProvider(ObjectRepositoryBase storage)
        {
            if (storage == null)
            {
                throw new ArgumentNullException(nameof(storage));
            }

            _monitoringApi = new ObjectRepositoryJobQueueMonitoringApi(storage);
        }
Пример #4
0
        public ObjectRepositoryFetchedJob(ConcurrentList <JobQueueModel> jobsTakenOut,
                                          [NotNull] ObjectRepositoryBase storage,
                                          JobQueueModel job)
        {
            _storage      = storage;
            _jobsTakenOut = jobsTakenOut;
            _job          = job;

            jobsTakenOut.Add(job);
        }
Пример #5
0
        public static IGlobalConfiguration <ObjectRepositoryStorage> UseHangfireStorage(
            [NotNull] this IGlobalConfiguration configuration, ObjectRepositoryBase objectRepository)
        {
            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }

            var storage = new ObjectRepositoryStorage(objectRepository);

            return(configuration.UseStorage(storage));
        }
Пример #6
0
 public static void RegisterHangfireScheme(this ObjectRepositoryBase objectRepository)
 {
     objectRepository.AddType((CounterModel.CounterEntity x) => new CounterModel(x));
     objectRepository.AddType((HashModel.HashEntity x) => new HashModel(x));
     objectRepository.AddType((JobModel.JobEntity x) => new JobModel(x));
     objectRepository.AddType((JobParameterModel.JobParameterEntity x) => new JobParameterModel(x));
     objectRepository.AddType((JobQueueModel.JobQueueEntity x) => new JobQueueModel(x));
     objectRepository.AddType((ListModel.ListEntity x) => new ListModel(x));
     objectRepository.AddType((ServerModel.ServerEntity x) => new ServerModel(x));
     objectRepository.AddType((SetModel.SetEntity x) => new SetModel(x));
     objectRepository.AddType((StateModel.StateEntity x) => new StateModel(x));
 }
Пример #7
0
 public void Track(ObjectRepositoryBase objectRepository, bool isReadonly)
 {
 }
Пример #8
0
 protected override IStorage GetStorage(ObjectRepositoryBase objectRepository) => ((LiteDbTestObjectRepository)objectRepository).LiteStorage;
 public ObjectRepositoryJobQueueMonitoringApi(ObjectRepositoryBase storage)
 {
     _storage = storage ?? throw new ArgumentNullException(nameof(storage));
 }
Пример #10
0
 protected override IStorage GetStorage(ObjectRepositoryBase objectRepository) => ((AzureObjectRepository)objectRepository).AzureTableContext;
 public ObjectRepositoryStorage(ObjectRepositoryBase objectRepository)
 {
     ObjectRepository = objectRepository;
     MonitoringApi    = new ObjectRepositoryJobQueueMonitoringApi(objectRepository);
 }
Пример #12
0
 protected abstract IStorage GetStorage(ObjectRepositoryBase objectRepository);
 public ObjectRepositoryMonitoringApi([NotNull] ObjectRepositoryStorage storage)
 {
     _storage    = storage;
     _repository = storage.ObjectRepository;
 }
Пример #14
0
 public void Track(ObjectRepositoryBase objectRepository, bool isReadonly)
 {
     objectRepository.ModelChanged += handler;
 }
Пример #15
0
 protected override IStorage GetStorage(ObjectRepositoryBase objectRepository)
 {
     return(((FileTestObjectRepository)objectRepository).FileStorage);
 }