public IEngineModule Create(Type enginemoduletype, IModuleStorage modulestorage, IContextDataReader contextdatareader) { EEngineModuleType engineModuleType; if (moduletypes.TryGetValue(enginemoduletype, out engineModuleType)) { switch (engineModuleType) { case EEngineModuleType.ConfigurationPersistenceModule: return(new ReaderFacadeOfConfigurationPersistence(new RfcpLocalContextProvider(modulestorage, contextdatareader))); case EEngineModuleType.ConfigurationHandlerModule: return(new MainFacadeOfConfigurationHandler(new MfchLocalContextProvider(modulestorage, contextdatareader))); case EEngineModuleType.LoadModelInstanceManagerModule: return(new LoadFacadeOfModelInstanceManager(new LfmimLocalContextProvider(modulestorage, contextdatareader))); case EEngineModuleType.MainModelIntstanceManagerModule: return(new MainFacadeOfModelInstanceManager(new MfmimLocalContextProvider(modulestorage, contextdatareader))); default: return(null); } } return(null); }
/// <summary> /// コンストラクタ /// </summary> /// <param name="ware">ウェア情報</param> /// <param name="macro">マクロ名</param> /// <param name="moduleType">モジュール種別</param> /// <param name="maxWorkers">従業員数</param> /// <param name="workersCapacity">最大収容人数</param> /// <param name="noBluePrint">設計図が無いか</param> /// <param name="products">モジュールの製品</param> /// <param name="storage">保管庫情報</param> /// <param name="equipments">装備一覧</param> public Module( IWare ware, string macro, IModuleType moduleType, long maxWorkers, long workersCapacity, bool noBluePrint, IReadOnlyList <IModuleProduct> products, IModuleStorage storage, IReadOnlyDictionary <string, IWareEquipment> equipments ) { ID = ware.ID; Name = ware.Name; WareGroup = ware.WareGroup; TransportType = ware.TransportType; Description = ware.Description; Volume = ware.Volume; MinPrice = ware.MinPrice; AvgPrice = ware.AvgPrice; MaxPrice = ware.MaxPrice; Owners = ware.Owners; Productions = ware.Productions; Resources = ware.Resources; Tags = ware.Tags; WareEffects = ware.WareEffects; MacroName = macro; ModuleType = moduleType; MaxWorkers = maxWorkers; WorkersCapacity = workersCapacity; NoBluePrint = noBluePrint; Products = products; Storage = storage; Equipments = equipments; }
public LfmimLocalContextProvider(IModuleStorage modulestorage, IContextDataReader contextdatareader) { moduleStorage = modulestorage; contextDataReader = contextdatareader; }
public ModuleLogic(IModuleStorage moduleStorage) { _moduleStorage = moduleStorage; }
public MfchLocalContextProvider(IModuleStorage modulestorage, IContextDataReader contextdatareader) { readerFacadeOfConfigurationPersistence = modulestorage.GetModule <IReaderFacadeOfConfigurationPersistence>(); loadFacadeOfModelInstanceManager = modulestorage.GetModule <ILoadFacadeOfModelInstanceManager>(); }
//private IContextProviderManager contextProviderManager; public MainContext() { moduleStorage = new ModuleStorage(new ModuleFactory(), contextDataReader); //contextProviderManager = new ContextProviderManager(moduleStorage, contextDataReader); }