static DataServiceFactory() { var container = UnityFactory.GetContainer(); if (container != null) { if (container.IsRegistered <IDataService>("SyncDataService")) { SyncDataService = container.Resolve <IDataService>("SyncDataService"); } if (container.IsRegistered <IDataService>("AppDataService")) { AppDataService = container.Resolve <IDataService>("AppDataService"); } } if (AppDataService == null) { throw new Exception($"Не проинициализирован {nameof(AppDataService)}!"); } if (SyncDataService == null) { throw new Exception($"Не проинициализирован {nameof(SyncDataService)}!"); } }
/// <summary> /// Получение представления по его имени и типу. /// Если представление не найдено среди статических, то есть возможность сформировать его динамически (используется в редакторе ограничений). /// </summary> /// <param name="viewName">Имя представления, которое требуется получить.</param> /// <param name="dataObjectType">Тип объекта, для которого нужно представление.</param> /// <returns>Найденное/сформированное представление или <c>null</c>.</returns> public static View GetPossibleDynamicView(string viewName, Type dataObjectType) { View resultView = Information.GetView(viewName, dataObjectType); if (resultView == null) { // Если не удалось получить представление для детейла стандартным методом, то пробуем сделать это другим способом. IUnityContainer container = UnityFactory.GetContainer(); IViewGenerator resolvedType; try { resolvedType = container.Resolve <IViewGenerator>(); } catch (ResolutionFailedException) { resolvedType = null; } if (resolvedType != null) { resultView = resolvedType.GenerateView(viewName, dataObjectType); } } return(resultView); }
/// <summary> /// Метод для конфигурации всех сервисов прилоежния. /// </summary> public static void ConfigureServices() { IUnityContainer container = UnityFactory.CreateContainer(); // Сервис аудита. AuditSetter.InitAuditService(DataServiceProvider.DataService); // Сервис тем оформления. //ThemeService.Current = container.Resolve<IThemeService>(); // Настройки лукапа. BaseMasterEditorLookUp.ChangeLookUpSettings = ChangeLookUpSettings; // Менеджер расширенных ограничений. /*if (container.IsRegistered<IAdvLimitManager>()) * AdvLimitManager.Current = container.Resolve<IAdvLimitManager>();*/ // Сервис настроек пользователя. /*if (container.IsRegistered<IUserSettingsService>()) * UserSettingsService.Current = container.Resolve<IUserSettingsService>(); * else * LogService.LogWarn("IUserSettingsService не сконфигурирован в Unity. Будет использована реализация по умолчанию.");*/ }
/// <summary> /// Метод для конфигурации всех сервисов прилоежния. /// </summary> public static void ConfigureServices() { IUnityContainer container = UnityFactory.CreateContainer(); // Сервис аудита. // AuditSetter.InitAuditService(BridgeToDS.GetDataService()); // Сервис тем оформления. ThemeService.Current = container.Resolve <IThemeService>(); // Настройки лукапа. BaseMasterEditorLookUp.ChangeLookUpSettings = FormUtils.ChangeLookUpSettings; // Менеджер расширенных ограничений. if (container.IsRegistered <IAdvLimitManager>()) { AdvLimitManager.Current = container.Resolve <IAdvLimitManager>(); } // Сервис настроек пользователя. if (container.IsRegistered <IUserSettingsService>()) { UserSettingsService.Current = container.Resolve <IUserSettingsService>(); } else { LogService.LogWarn("IUserSettingsService не сконфигурирован в Unity. Будет использована реализация по умолчанию."); } }
public static DateFunctions getDateFunctionsService() { IUnityContainer container = UnityFactory.getUnityContainer(); var nepaliDateData = container.Resolve <NepaliDateData>(); return(new DateFunctionsImpl(nepaliDateData)); }
public static FiscalYearFunctions getFiscalYearService() { IUnityContainer container = UnityFactory.getUnityContainer(); var dateConverter = container.Resolve <dateConverterService>(); var nepaliDateData = container.Resolve <NepaliDateData>(); return(new FiscalYearFunctionsImpl(dateConverter, nepaliDateData)); }
// This method gets called by the runtime. Use this method to add services to the container. public virtual void ConfigureServices(IServiceCollection services) { /* * // Configure Flexberry services (LockService and IDataService) via native DI. * { * services.AddSingleton<IDataService>(provider => * { * IDataService dataService = new PostgresDataService() { CustomizationString = CustomizationString }; * ExternalLangDef.LanguageDef.DataService = dataService; * * return dataService; * }); * * services.AddSingleton<ILockService, LockService>(); * } */ // Configure Flexberry services via Unity. { IUnityContainer unityContainer = UnityFactory.GetContainer(); IDataService dataService = new PostgresDataService() { CustomizationString = CustomizationString }; unityContainer.RegisterInstance(dataService); ExternalLangDef.LanguageDef.DataService = dataService; unityContainer.RegisterInstance <ILockService>(new LockService(dataService)); unityContainer.RegisterInstance <ISecurityManager>(new EmptySecurityManager()); } services.AddMvcCore(options => { options.Filters.Add <CustomExceptionFilter>(); options.EnableEndpointRouting = false; }) .AddFormatterMappings(); services.AddOData(); services.AddSingleton <IDataObjectFileAccessor>(provider => { Uri baseUri = new Uri("http://localhost"); if (ServerAddressesFeature != null && ServerAddressesFeature.Addresses != null) { // This works with pure self-hosted service only. baseUri = new Uri(ServerAddressesFeature.Addresses.Single()); } var env = provider.GetRequiredService <IHostingEnvironment>(); return(new DefaultDataObjectFileAccessor(baseUri, "api/File", "Uploads")); }); }
public static dateConverterService getDateConverterService() { IUnityContainer container = UnityFactory.getUnityContainer(); var dateFunctions = container.Resolve <DateFunctions>(); var startDates = container.Resolve <ConversionStartDateData>(); var nepaliDateData = container.Resolve <NepaliDateData>(); return(new DateConverter.Core.Library.DateConverterImpl(startDates, dateFunctions, nepaliDateData)); }
public UserEntities() { var userAdapter = UnityFactory.Resolve <IUserAdapter>(); JohnDoe = userAdapter.AddUser(new UserEntityBuilder().John().Build()); JaneDoe = userAdapter.AddUser(new UserEntityBuilder().Jane().Build()); userAdapter.SaveChanges(); }
void Start() { //read and parse skeleton josn into SkeletonData TextAsset jsonReader = (TextAsset)Resources.Load("skeleton.json", typeof(TextAsset)); TextReader reader = new StringReader(jsonReader.text); Dictionary <String, System.Object> skeletonRawData = Json.Deserialize(reader) as Dictionary <String, System.Object>; SkeletonData skeletonData = ObjectDataParser.ParseSkeletonData(skeletonRawData); //read and parse texture atlas josn into TextureAtlas Texture _textures = Resources.Load <Texture>("texture"); jsonReader = (TextAsset)Resources.Load("texture.json", typeof(TextAsset)); reader = new StringReader(jsonReader.text); Dictionary <String, System.Object> atlasRawData = Json.Deserialize(reader) as Dictionary <String, System.Object>; AtlasData atlasData = AtlasDataParser.ParseAtlasData(atlasRawData); TextureAtlas textureAtlas = new TextureAtlas(_textures, atlasData); //use the above data to make factory UnityFactory factory = new UnityFactory(); factory.AddSkeletonData(skeletonData, skeletonData.Name); factory.AddTextureAtlas(textureAtlas); //add 20 centaur into scene at some random positions. System.Random random = new System.Random(); for (int i = 0; i < 20; i++) { for (int j = 0; j < 20; j++) { Armature armature = factory.BuildArmature("centaur/charactor", null, "charactor_all"); armature.AdvanceTime(0f); float r0 = (float)random.NextDouble() + 0.5f; float r1 = 0; //(float)random.NextDouble(); float r2 = (float)random.NextDouble(); ((armature.Display as UnityArmatureDisplay).Display as GameObject).transform.position = new Vector3((float)j + r0 * 20f, 1, r2 * 15f); WorldClock.Clock.Add(armature); armature.Animation.GotoAndPlay("run", -1, -1, 0); } } //add 20 bird into scene at some random positions. for (int i = 0; i < 20; i++) { for (int j = 0; j < 20; j++) { Armature armature = factory.BuildArmature("bird/charactor", null, "charactor_all"); armature.AdvanceTime(0f); float r0 = (float)random.NextDouble() + 0.5f; float r1 = (float)random.NextDouble() + 1; float r2 = (float)random.NextDouble(); ((armature.Display as UnityArmatureDisplay).Display as GameObject).transform.position = new Vector3((float)j + r0 * 20f, (float)i * 3f + r1 * 5f, r2 * 15f); WorldClock.Clock.Add(armature); armature.Animation.GotoAndPlay("fly", -1, -1, 0); } } }
public void Initialize(UnityFactory factory, GuiInformation info, XmasModel engine, bool reversed) { this.Factory = factory; this.GUIInfo = info; this.Engine = engine; this.reversed = reversed; Engine.EventManager.Register(new Trigger <ManaCrystalAddedEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaAdded)); Engine.EventManager.Register(new Trigger <ManaCrystalSpentEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaSpent)); Engine.EventManager.Register(new Trigger <ManaRechargedEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaRecharged)); }
public void Initialize(UnityFactory Factory, GuiInformation ginfo, bool isNotMainPlayer) { this.Factory = Factory; this.ginfo = ginfo; this.isNotMainPlayer = isNotMainPlayer; ginfo.Player.Register(new Trigger<PlayerGainedXPEvent>(OnXPGain)); xpscaler = this.ginfo.XPBar.GetComponent<GUITextureAutoScaler>(); initwidth = xpscaler.CurPlacement.width; CheckXp(); }
public void Initialize(UnityFactory factory, GuiInformation info, XmasModel engine, bool reversed) { this.Factory = factory; this.GUIInfo = info; this.Engine = engine; this.reversed = reversed; Engine.EventManager.Register(new Trigger<ManaCrystalAddedEvent>(evt=>evt.Owner==this.GUIInfo.Player,OnManaAdded)); Engine.EventManager.Register(new Trigger<ManaCrystalSpentEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaSpent)); Engine.EventManager.Register(new Trigger<ManaRechargedEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaRecharged)); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); UnityFactory.Initialize(); }
public void Initialize(UnityFactory Factory, GuiInformation ginfo, bool isNotMainPlayer) { this.Factory = Factory; this.ginfo = ginfo; this.isNotMainPlayer = isNotMainPlayer; ginfo.Player.Register(new Trigger <PlayerGainedXPEvent>(OnXPGain)); xpscaler = this.ginfo.XPBar.GetComponent <GUITextureAutoScaler>(); initwidth = xpscaler.CurPlacement.width; CheckXp(); }
static DataChangeMessageHandlerFactory() { var container = UnityFactory.GetContainer(); DataMessageHandler = container.Resolve <IDataMessageHandler>(); if (DataMessageHandler == null) { throw new Exception($"Не проинициализирован {nameof(DataMessageHandler)}!"); } }
static void Main(string[] args) { using (UnityFactory uFactory = new UnityFactory()) { IRoomBL RoomObj = uFactory.CreateRoomObject(); Room room = new Room { Narration = "Test" }; RoomObj.Add(room); } }
private static bool Login(string login, string password) { IUserManager userManager = UnityFactory.GetContainer().Resolve <IUserManager>(); if (userManager.IsUserExist(login, password)) { FormsAuthentication.SetAuthCookie(login, true); return(true); } return(false); }
private static ICommandCoder GetCommandCoder(string protocolName) { if (CommandCoders.ContainsKey(protocolName)) { return(CommandCoders[protocolName]); } var coder = UnityFactory.Resolve <ICommandCoder>(protocolName); CommandCoders.Add(protocolName, coder); return(CommandCoders[protocolName]); }
void Start() { UnitTemplate template = ScriptableObject.CreateInstance <UnitTemplate>(); template.BaseState = Unit; template.AddAmmuniotion(Unit.Slots[0], Ammunition); //добавить аммуницию к подходящему слоту //через этот метод добавить шлем и перчатки UnityFactory.CreateUnit(template, Vector3.zero); StateText.text = string.Format("Speed - {0}\nHealth - {1}", template.CurrentState.Speed, template.CurrentState.Health); }
public static ISecurityOrchestration CreateSecurityOrchestration(bool isStubbed = false, bool useDI = true) { if (!useDI) { return(isStubbed ? (ISecurityOrchestration) new SecurityOrchestrationStub() : (ISecurityOrchestration) new SecurityOrchestration()); } else { // NOTE: This works locally but in Team City the DI does not resolve return(isStubbed ? UnityFactory.Resolve <ISecurityOrchestration>("StubbedVersion") : UnityFactory.Resolve <ISecurityOrchestration>("LatestVersion")); } }
public void GetConfigResolverTest() { // Arrange. IUnityContainer container = UnityFactory.GetContainer(); // Act. IConfigResolver configResolver = container.Resolve <IConfigResolver>(); configResolver.ResolveConnectionString("TestConnStr"); // Assert. Assert.NotNull(configResolver); }
static TGHelper() { try { DataBaseHelper = UnityFactory.GetContainer().Resolve <DataBaseHelper>("DataBaseHelper"); ChainHelper = UnityFactory.GetContainer().Resolve <DataBaseHelper>("ChainHelper"); DataService = UnityFactory.GetContainer().Resolve <IDataService>(); } catch (Exception ex) { LogService.LogError(ex.Message); throw new Exception("Неверно сконфигурирован Unity", ex); } }
// *** Start programmer edit section *** (DataLink CustomMembers) /// <summary> /// Создать/обновить триггеры в атрибутивной БД /// </summary> public void UpdateAttributiveTriggers(IDbCommand sqlCommand) { try { var attributiveTriggerGenerator = UnityFactory.GetContainer().Resolve <ITriggerGenerator>("AttributiveTriggerGenerator"); attributiveTriggerGenerator.InitByDataLink(this); attributiveTriggerGenerator.DropTriggers(sqlCommand); attributiveTriggerGenerator.GenerateTriggers(sqlCommand); } catch (Exception exception) { throw new Exception(string.Format("Ошибка генерации триггеров атрибутивной БД для соединения со слоем {0}", LayerTable), exception); } }
/// <summary> /// Создать/обновить триггеры в геоданных /// </summary> public void UpdateSpatialTriggers(IDbCommand sqlCommand) { try { var spatialTriggerGenerator = UnityFactory.GetContainer().Resolve <ITriggerGenerator>("SpatialTriggerGenerator"); spatialTriggerGenerator.InitByDataLink(this); spatialTriggerGenerator.DropTriggers(sqlCommand); spatialTriggerGenerator.GenerateTriggers(sqlCommand); } catch (Exception exception) { throw new Exception(string.Format("Ошибка генерации триггеров геоданных для слоя {0}", LayerTable), exception); } }
/// <summary> /// 获取所有注册的客户端设备提供程序 /// </summary> private static void ResolveClientSourceProvier() { try { var providers = UnityFactory.GetContainer().ResolveAll(typeof(IClientSourceProvider)); foreach (var provider in providers) { ClientSourceProviders.Add((IClientSourceProvider)provider); } } catch (Exception ex) { LogService.Instance.Error("Load ClientSource Provider Failed.", ex); } }
/// <summary> /// 获取所有注册的业务处理程序 /// </summary> private static void ResolveBuinessHandler() { try { var handlers = UnityFactory.GetContainer().ResolveAll(typeof(IBuinessHandler)); foreach (var handler in handlers) { BuinessHandlers.Add((IBuinessHandler)handler); } } catch (Exception ex) { LogService.Instance.Error("Load BuinessHandler Failed.", ex); } }
public void LeapYearTest() { UnityFactory.RegisterComponents(); var datetimeProviderMock = new Mock <IDatetimeProvider>(); datetimeProviderMock.SetupGet(dtp => dtp.UtcNow).Returns(new DateTime(2020, 6, 1)); UnityFactory.container.RegisterType <DatetimeCalculator, DatetimeCalculator> (new InjectionConstructor(datetimeProviderMock.Object)); DatetimeCalculator dtprocessor = UnityFactory.container.Resolve <DatetimeCalculator>(); Assert.IsTrue(dtprocessor.IsLeapYear()); }
private void ReplaceConfig(UnityFactory unityFactory, string newConfigName) { //Console.WriteLine($"Assembly.GetExecutingAssembly().CodeBase {Assembly.GetExecutingAssembly().CodeBase}"); //Console.WriteLine($"Environment.CurrentDirectory {Environment.CurrentDirectory}"); //Console.WriteLine($"TestContext.CurrentContext.TestDirectory {TestContext.CurrentContext.TestDirectory}"); //Console.WriteLine($"TestContext.CurrentContext.WorkDirectory {TestContext.CurrentContext.WorkDirectory }"); var path = Path.GetDirectoryName(TestContext.CurrentContext.TestDirectory); var newFile = Path.Combine(path, "Debug", newConfigName); var config = new UnityCustomSection(); config.LoadConfigurationFile(newFile); unityFactory.ReloadSection(config); }
public void ResolveConnectionStringTest() { // Arrange. IUnityContainer container = UnityFactory.GetContainer(); IConfigResolver configResolver = container.Resolve <IConfigResolver>(); Assert.NotNull(configResolver); string connectionStringName = "TestConnStr"; string expectedResult = @"SERVER=.\SQLEXPRESS;Trusted_connection=yes;DATABASE=Test;"; // Act. string actualResult = configResolver.ResolveConnectionString(connectionStringName); // Assert. Assert.Equal(expectedResult, actualResult); }
/// <summary> /// Инициализация сервиса сборщика изменений. /// </summary> static ChangePackageCollectorFactory() { var container = UnityFactory.GetContainer(); if (container != null) { if (container.IsRegistered <IChangePackageCollector>("DefaultPackageCollector")) { ChangePackageCollector = container.Resolve <IChangePackageCollector>("DefaultPackageCollector"); } } if (ChangePackageCollector == null) { throw new Exception($"Не проинициализирован {nameof(ChangePackageCollector)}!"); } }
/// <summary> /// 读取解码器类 /// </summary> /// <param name="protocols"></param> public static void LoadEncoder(List <IProtocol> protocols) { foreach (var protocol in protocols) { try { var encoder = UnityFactory.Resolve <IProtocolEncoder>(protocol.ProtocolModule); encoder.Protocol = protocol; AllProtocols.Add(protocol); ProtocolEncoders.Add(protocol.ProtocolModule, encoder); } catch (Exception ex) { LogService.Instance.Error($"Load Encoder For Protocol {protocol.ProtocolModule} Failed.", ex); } } }
public void Initialize(UnityFactory Factory) { this.Factory = Factory; Prepare(); }