Example #1
0
 protected IActionResult WrapCreate <T>(IEntityCreator <T> creator)
     where T : IEntity
 {
     return(_sessionHelper.TryCreateEntity(creator, out var assignedId, out var errors)
         ? Ok(SaveResultDto.SuccessResult(assignedId))
         : Error(errors));
 }
Example #2
0
        public void StackModuleInterface <M>(M mod)
        {
            List <Object> l;

            if (ModuleInterfaces.ContainsKey(typeof(M)))
            {
                l = ModuleInterfaces[typeof(M)];
            }
            else
            {
                l = new List <Object>();
            }

            if (l.Contains(mod))
            {
                return;
            }

            l.Add(mod);

            if (mod is IEntityCreator)
            {
                IEntityCreator entityCreator = (IEntityCreator)mod;
                foreach (PCode pcode in entityCreator.CreationCapabilities)
                {
                    m_entityCreators[pcode] = entityCreator;
                }
            }

            ModuleInterfaces[typeof(M)] = l;
        }
Example #3
0
        public void UnregisterModuleInterface <M>(M mod)
        {
            // We can't unregister agent stateful modules because
            // that would require much more data to be held about formats
            // and would make that code slower and less efficient.
            // No known modules are unregistered anyway, ever, unless
            // the simulator shuts down anyway.
            if (mod is IAgentStatefulModule)
            {
                return;
            }

            List <Object> l;

            if (ModuleInterfaces.TryGetValue(typeof(M), out l))
            {
                if (l.Remove(mod))
                {
                    if (mod is IEntityCreator)
                    {
                        IEntityCreator entityCreator = (IEntityCreator)mod;
                        foreach (PCode pcode in entityCreator.CreationCapabilities)
                        {
                            m_entityCreators[pcode] = null;
                        }
                    }
                }
            }
        }
 /// <summary>
 /// Открываем окно для создания новой организации
 /// </summary>
 /// <param name="organizationCreator"></param>
 /// <returns></returns>
 static internal Form CreateNew(IEntityCreator organizationCreator)
 {
     // запоминаем окно, из которого мы перешли на новую страницу
     _organizationCreator = organizationCreator;
     // возвращаем страницу для создания организации
     return(new OrganizationCreateForm());
 }
Example #5
0
        /// <summary>
        /// Register an interface to a region module.  This allows module methods to be called directly as
        /// well as via events.  If there is already a module registered for this interface, it is not replaced
        /// (is this the best behaviour?)
        /// </summary>
        /// <param name="mod"></param>
        public void RegisterModuleInterface <M>(M mod)
        {
//            m_log.DebugFormat("[SCENE BASE]: Registering interface {0}", typeof(M));

            List <Object> l = null;

            if (!ModuleInterfaces.TryGetValue(typeof(M), out l))
            {
                l = new List <Object>();
                ModuleInterfaces.Add(typeof(M), l);
            }

            if (l.Count > 0)
            {
                return;
            }

            l.Add(mod);

            if (mod is IEntityCreator)
            {
                IEntityCreator entityCreator = (IEntityCreator)mod;
                foreach (PCode pcode in entityCreator.CreationCapabilities)
                {
                    m_entityCreators[pcode] = entityCreator;
                }
            }
        }
Example #6
0
 public GoalStepBS(IEntityCreator <GoalStep> goalStepCreator
                   , IEntityModifer <GoalStep> goalStepUpdater
                   , IEntityEraser <GoalStep> goalStepEraser
                   , NeutrinoUnitOfWork unitOfWork) : base(unitOfWork)
 {
     this.goalStepCreator = goalStepCreator;
     this.goalStepUpdater = goalStepUpdater;
     this.goalStepEraser  = goalStepEraser;
 }
Example #7
0
 public DefaultOperationHandlerProvider(
     IEntityReader entityReader,
     IEntityCreator entityCreator,
     IEntityUpdater entityUpdater,
     IODataEntityDtoBuilderFactory dtoBuilderFactory)
 {
     this.getOperationHandler   = new GetEntityOperationHandler(entityReader, dtoBuilderFactory);
     this.patchOperationHandler = new PatchEntityOperationHandler(entityReader, entityUpdater, dtoBuilderFactory);
     this.postOperationHandler  = new PostEntityOperationHandler(entityReader, entityCreator, dtoBuilderFactory);
 }
Example #8
0
 public OrdersController(IEntityGetter <Order, OrderItemViewModel> getter,
                         IEntityCollectionGetter <Order, OrderItemViewModel> collectionGetter,
                         IEntityCreator <OrderBindingModel, Order> creator,
                         IEntityUpdater <OrderQuantityBindingModel, Order> updater,
                         IEntityDeleter <Order> deleter)
 {
     _getter           = getter;
     _collectionGetter = collectionGetter;
     _creator          = creator;
     _deleter          = deleter;
     _updater          = updater;
 }
Example #9
0
        public void CreateSurveyService()
        {
            _fileCacher        = A.Fake <IFileCacher>();
            _systemInfo        = A.Fake <ISystemInfo>();
            _entityCreator     = A.Fake <IEntityCreator>();
            _fileCacherCreator = A.Fake <ICreator <IFileCacher> >();

            A.CallTo(() => _systemInfo.PlatformName).Returns("WIN");
            A.CallTo(() => _fileCacherCreator.Get()).Returns(_fileCacher);
            A.CallTo(() => _entityCreator.Create <SomeImportantResponse>())
            .Returns(new SomeImportantResponse(_systemInfo));

            _surveyService = new SomeService(_systemInfo, _entityCreator, A.Fake <ISettingsManager>(),
                                             _fileCacherCreator, A.Fake <IFileSystemManager>(), A.Fake <ILogger>());
        }
Example #10
0
 public bool TryCreateEntity <T>(IEntityCreator <T> creator, out long?assignedId, out IEnumerable <string> errors)
     where T : IEntity
 {
     using (var session = _sessionFactory.OpenSession())
         using (var tx = session.BeginTransaction())
         {
             if (!creator.TryCreate(session, out var entity, out errors) || !entity.IsValid(out errors))
             {
                 assignedId = null;
                 return(false);
             }
             session.Save(entity);
             assignedId = entity.Id;
             tx.Commit();
             return(Success(out errors));
         }
 }
Example #11
0
        public void UnregisterModuleInterface <M>(M mod)
        {
            List <Object> l;

            if (ModuleInterfaces.TryGetValue(typeof(M), out l))
            {
                if (l.Remove(mod))
                {
                    if (mod is IEntityCreator)
                    {
                        IEntityCreator entityCreator = (IEntityCreator)mod;
                        foreach (PCode pcode in entityCreator.CreationCapabilities)
                        {
                            m_entityCreators[pcode] = null;
                        }
                    }
                }
            }
        }
Example #12
0
 public override int SaveChanges()
 {
     foreach (EntityEntry entry in ChangeTracker.Entries())
     {
         if (entry.Entity is IEntityCreator || entry.Entity is IEntityModifier)
         {
             if (entry.State == EntityState.Added)
             {
                 IEntityCreator entity = (IEntityCreator)entry.Entity;
                 entity.UserCreated = UserName;
                 entity.DateCreated = DateTime.Now;
             }
             if (entry.State == EntityState.Modified)
             {
                 IEntityModifier entity = (IEntityModifier)entry.Entity;
                 entity.UserModified = UserName;
                 entity.DateModified = DateTime.Now;
             }
         }
     }
     return(base.SaveChanges());
 }
 protected AbstractConnectionDependencies(
     ITableQueryWriter tableQueryWriter,
     IConnectionChecker connectionChecker,
     IEntityRecordsExist entityRecordsExist,
     IEntityDropper entityDropper,
     IEntityCreator entityCreator,
     List<IViewWriter> viewWriters,
     ITflWriter tflWriter,
     IScriptRunner scriptRunner,
     IDataTypeService dataTypeService,
     ILogger logger
     ) {
     TableQueryWriter = tableQueryWriter;
     ConnectionChecker = connectionChecker;
     EntityRecordsExist = entityRecordsExist;
     EntityDropper = entityDropper;
     EntityCreator = entityCreator;
     ViewWriters = viewWriters;
     TflWriter = tflWriter;
     ScriptRunner = scriptRunner;
     DataTypeService = dataTypeService;
     Logger = logger;
 }
Example #14
0
 protected AbstractConnectionDependencies(
     ITableQueryWriter tableQueryWriter,
     IConnectionChecker connectionChecker,
     IEntityRecordsExist entityRecordsExist,
     IEntityDropper entityDropper,
     IEntityCreator entityCreator,
     List <IViewWriter> viewWriters,
     ITflWriter tflWriter,
     IScriptRunner scriptRunner,
     IDataTypeService dataTypeService,
     ILogger logger
     )
 {
     TableQueryWriter   = tableQueryWriter;
     ConnectionChecker  = connectionChecker;
     EntityRecordsExist = entityRecordsExist;
     EntityDropper      = entityDropper;
     EntityCreator      = entityCreator;
     ViewWriters        = viewWriters;
     TflWriter          = tflWriter;
     ScriptRunner       = scriptRunner;
     DataTypeService    = dataTypeService;
     Logger             = logger;
 }
Example #15
0
 protected EntityModel(IDictionary <Guid, T> entityDictionary, IEntityCreator <T> entityCreator)
 {
     EntityDictionary = entityDictionary;
     EntityCreator    = entityCreator;
 }
Example #16
0
 public TimeBlocksModel(ITaskListStore taskListStore, IEntityCreator <TimeBlock> entityCreator)
     : base(taskListStore.TimeBlocks, entityCreator)
 {
 }
Example #17
0
        private IList<object> FetchAllRows(IDataReader dataReader, IEntityCreator entityCreator, bool allowDuplicates)
        {
            var fetchedInstances = new List<object>();
            if (dataReader == null || dataReader.IsClosed || entityCreator == null)
            {
                return fetchedInstances;
            }
            while (dataReader.Read())
            {
                object[] rowValues = new object[dataReader.FieldCount];
                try
                {
                    dataReader.GetValues(rowValues);
                }
                catch (Exception e)
                {
                    Trace.WriteLine("Exception caught in BaseSqlDataProvider.FetchAllRows: " + e.Message);
                    throw;
                }

                // Create the generic entity from the collection
                var objectInstance = entityCreator.Create();
                var entity = EntityProxyFactory.AsEntity(objectInstance) as IProxyEntity;
                // Create the empty fields object based on the schema
                if (!entity.Initialized)
                {
                    throw new InvalidOperationException("Entity was not initialized by the IEntityCreator");
                }

                // Now read the actual row values into the fields collection of the entity
                BaseDataProvider.ReadRowIntoFields(rowValues, entity.Fields);

                // set entity state
                entity.IsNew = false;

                if (allowDuplicates)
                {
                    fetchedInstances.Add(objectInstance);
                }
                else
                {
                    // Add the entity to the collection if it doesn't exist
                    // TODO PK logic
                    fetchedInstances.Add(objectInstance);
                }
            }
            return fetchedInstances;
        }
Example #18
0
 internal static Form CreateNew(IEntityCreator creator)
 {
     _guaranteeCreator = creator;
     return(new GuaranteeCreateForm());
 }
Example #19
0
 public GroupsModel(ITaskListStore taskListStore, IEntityCreator <Group> entityCreator)
     : base(taskListStore.Groups, entityCreator)
 {
 }
Example #20
0
 public PostEntityOperationHandler(IEntityReader entityReader, IEntityCreator entityCreator, IODataEntityDtoBuilderFactory dtoBuilderFactory)
 {
     this.entityReader      = entityReader;
     this.entityCreator     = entityCreator;
     this.dtoBuilderFactory = dtoBuilderFactory;
 }
Example #21
0
 /// <summary>
 ///     Unregister a module commander and all its commands
 /// </summary>
 /// <param name="entityCreator"></param>
 public void UnregisterEntityCreatorCommander(IEntityCreator entityCreator)
 {
     lock (m_entityCreators)
     {
         foreach (PCode pcode in entityCreator.CreationCapabilities)
         {
             m_entityCreators[pcode] = null;
         }
     }
 }
Example #22
0
 public GunControlSystem(IEntityCreator creator)
 {
     _creator        = creator;
     _updateCallback = OnUpdate;
 }
Example #23
0
 public SomeService(ISystemInfo systemInfo, IEntityCreator entityCreator, ISettingsManager settingsManager, ICreator <IFileCacher> fileCacherCreator, IFileSystemManager fileSystemManager, ILogger logger)
 {
 }
Example #24
0
        public IList<object> ExecuteMultiRowRetrievalQuery(IDbCommand command, IEntityCreator entityCreator, bool allowDuplicates)
        {
            IDataReader dataReader = null;
            try
            {
                this.PrepareCommandForExecution(command);

                bool wasConnectionClosed = (activeConnection.State != ConnectionState.Open);
                // execute the query
                try
                {
                    if (wasConnectionClosed)
                    {
                        this.OpenConnection();
                    }
                    dataReader = command.ExecuteReader(CommandBehavior.Default);
                    return this.FetchAllRows(dataReader, entityCreator, allowDuplicates);
                }
                catch (Exception ex)
                {
                    throw new CommandExecutionException(
                        String.Format("An exception was caught during the execution of a retrieval query: {0}. Check InnerException, QueryExecuted and Parameters of this exception to examine the cause of this exception.", ex.Message),
                            command.CommandText, command.Parameters, ex);
                }
                finally
                {
                    if (wasConnectionClosed)
                    {
                        this.CloseConnection();
                    }
                    if (command != null)
                    {
                        command.Dispose();
                    }
                }
            }
            finally
            {
                if (dataReader != null)
                    dataReader.Dispose();
                this.CloseConnectionIfPossible();
            }
        }
Example #25
0
 public void RegisterEntityCreatorModule(IEntityCreator entityCreator)
 {
     lock (m_entityCreators)
     {
         foreach (PCode pcode in entityCreator.CreationCapabilities)
         {
             m_entityCreators[pcode] = entityCreator;
         }
     }
 }
Example #26
0
 public TasksModel(ITaskListStore taskListStore, IEntityCreator <Task> entityCreator)
     : base(taskListStore.Tasks, entityCreator)
 {
 }