public override void RegisterServieceRequest(ServiceRegister Register) { Register.Register("System.CountUser", (Request parameter, ref Request result) => { var res = CreateMsg.CreateRequest(GetCount(), new RequestType() { Other = "System.CountUser" }); res.SendUser = "******"; result = res; res.RecUserlist.Add(parameter.SendUser); socket.Send(res); }); Register.Register("System.GetUserList", (Request parameter, ref Request result) => { Request request = (Request)parameter; var res = CreateMsg.CreateRequest(GetCount(), new RequestType() { Other = "System.GetUserList" }); res.Content = GetUserList(); res.SendUser = "******"; res.RecUserlist = request.RecUserlist; result = res; socket.Send(res); }); }
public override void RegisterServieceRequest(ServiceRegister Register) { Register.Register(RequestType.Message, (Request parameter, ref Request result) => { socket.Send(parameter); }); Register.Register(RequestType.File, (Request parameter, ref Request result) => { result.Content = FileUpAsync(parameter); }); }
public void Register_SameTypeRegistered_ThrowsInvalidOperationException() { // Arrange var register = new ServiceRegister(); register.Register(new MockService()); // Act TestDelegate td = () => register.Register <MockService>(); // Assert Assert.Throws <ServiceCollisionException <MockService> >(td); }
/// <summary> /// Registers dependencies for Autofac to resolve via reflection at run-time. /// </summary> /// <exception cref="Exception"></exception> public static void RegisterDependencies() { // Create the container builder. var builder = new ContainerBuilder(); // Register the Web API controllers. builder.RegisterApiControllers(Assembly.GetExecutingAssembly()); builder.RegisterWebApiFilterProvider(GlobalConfiguration.Configuration); // Register your dependencies. builder.RegisterType <UnitOfWork>().As <IUnitOfWork>(); builder.RegisterType <TekTak.iLoop.UOW.UnitOfWork>().As <TekTak.iLoop.UOW.IUnitOfWork>(); //builder.RegisterType<iLoopEntity>().InstancePerLifetimeScope(); ServiceRegister.Register(builder); //RegisterJServices(builder); AuthorizationRegister.Register(builder); ValidatorRegister.Register(builder); // Build the container. var container = builder.Build(); // Create the dependency resolver. var resolver = new AutofacWebApiDependencyResolver(container); // Configure Web API with the dependency resolver. GlobalConfiguration.Configuration.DependencyResolver = resolver; FluentValidation.WebApi.FluentValidationModelValidatorProvider.Configure(GlobalConfiguration.Configuration, provider => provider.ValidatorFactory = new ValidatorFactory(container)); }
protected override void RegisterServiceHandler(ServiceRegister registerManager) { registerManager.Register("ReceiveService.DoReceive", (object parameter, ref object result) => { result = DoReceive(parameter as string); }); }
// This method gets called by the runtime. Use this method to add services to the container. // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940 public void ConfigureServices(IServiceCollection services) { services.AddAutoMapper(); services.AddCustomMvc(_appConfig) .AddCustomAuthentication(_environment, _appConfig); ServiceRegister.Register(services); ServiceRegister.AddConfigureSetting(services, _appConfig.Configuration); IdentityModelEventSource.ShowPII = true; }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void ConfigureServices(IServiceCollection services) { services.AddAutoMapper(); services.AddSession(); services.AddInfrastructure <LanguageSub>(Configuration); services.AddMvc().AddDataAnnotationsLocalization().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); services.AddMvcCore().AddVersionedApiExplorer(o => o.GroupNameFormat = "'v'VVV").AddAuthorization(); services.AddMemoryCache(); ServiceRegister.Register(services); services.AddCustomSwagger(); }
public ViewModelLocator() { INavigationService navigationService = new NavigationService(); register = new ServiceRegister(); register.Register(navigationService); navigationService.Configure(PageType.HomePage, new Uri("../Pages/HomePage.xaml", UriKind.Relative)); navigationService.Configure(PageType.CollectSystemBlockPage, new Uri("../Pages/CollectSystemBlockPage.xaml", UriKind.Relative)); navigationService.Configure(PageType.ViewCollectedPage, new Uri("../Pages/ViewCollectedPage.xaml", UriKind.Relative)); navigationService.Configure(PageType.SaveSystemBlockPage, new Uri("../Pages/SaveSystemBlockPage.xaml", UriKind.Relative)); }
protected void Application_Start() { var path = AppDomain.CurrentDomain.BaseDirectory + @"\log4net.config"; log4net.Config.XmlConfigurator.Configure(new FileInfo(path)); AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); ServiceRegister.Register(); }
public void Resolve_ServiceRegistered_ReturnsService() { // Arrange var register = new ServiceRegister(); // Act register.Register <IMockService>(new MockService()); // Assert var service = register.Resolve <IMockService>(); Assert.IsNotNull(service); }
public void RegisterTypeImplementation_NoCollisisons_AddsServiceImplementation() { // Arrange var register = new ServiceRegister(); // Act register.Register <IMockService, MockService>(); // Assert var registeredService = register.Resolve <IMockService>(); Assert.AreEqual(typeof(MockService), registeredService.GetType()); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void ConfigureServices(IServiceCollection services) { services.AddAutoMapper(); services.AddSession(); services.AddInfrastructure <LanguageSub>(Configuration); services.AddMvc().AddDataAnnotationsLocalization().SetCompatibilityVersion(CompatibilityVersion.Version_2_2); services.AddMvcCore().AddVersionedApiExplorer(o => o.GroupNameFormat = "'v'VVV").AddAuthorization(); services.AddMemoryCache(); ServiceRegister.Register(services); services.Configure <APIUrls>(options => Configuration.GetSection(nameof(APIUrls)).Bind(options)); services.AddCatelogueManagementApiServices(); services.AddCustomSwagger(); }
public override void RegisterServieceRequest(ServiceRegister Register) { Register.Register("riderType1", (Request parameter, ref Request result) => { var request = (Request)parameter; orderinfo param = (orderinfo)request.Content; param.driverprice = param.price - Math.Round(param.price * double.Parse(CostService.Config["Profit"]), 2); param.id = request.Head["KeyID"]; riderTypeOne.Add(param.id, param); result.Content = createorder(param); }); Register.Register("riderType2", (Request parameter, ref Request result) => { var request = (Request)parameter; orderinfo param = (orderinfo)request.Content; param.driverprice = param.price - Math.Round(param.price * double.Parse(CostService.Config["Profit"]), 2); param.id = request.Head["KeyID"]; riderTypeTwo.Add(param.id, param); result.Content = createorder(param); }); Register.Register("riderType3", (Request parameter, ref Request result) => { var request = (Request)parameter; orderinfo param = (orderinfo)request.Content; param.driverprice = param.price - Math.Round(param.price * double.Parse(CostService.Config["Profit"]), 2); param.id = request.Head["KeyID"]; riderTypeThere.Add(param.id, param); result.Content = createorder(param); }); Register.Register("riderType4", (Request parameter, ref Request result) => { var request = (Request)parameter; orderinfo param = (orderinfo)request.Content; param.driverprice = param.price - Math.Round(param.price * double.Parse(CostService.Config["Profit"]), 2); param.id = request.Head["KeyID"]; riderTypeThere.Add(param.id, param); result.Content = createorder(param); }); }
public void RegisterInstance_NoServicesRegistered_AddsInstance() { // Arrange var register = new ServiceRegister(); // Act register.Register(new MockService()); // Assert MockService service = null; TestDelegate td = () => service = register.Resolve <MockService>(); Assert.DoesNotThrow(td); Assert.IsNotNull(service); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); var unityContainer = UnityConfiguration.Configure(GlobalConfiguration.Configuration); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); var sourceManager = unityContainer.Resolve <ISourceManager>(); var serviceLocator = unityContainer.Resolve <IServiceLocator>(); // //Cash Service for Service lookup ServiceRegister.Register(sourceManager, serviceLocator); }
public static void initializeDataAndServices() { DatabaseTypeEnum databaseType = DatabaseTypeEnum.SQL_SERVER_DATABASE; DatabaseTypeInitializer.InitializeDatabaseType(databaseType); ServiceRegister serviceRegister = ServiceRegister.getInstance(); serviceRegister.Register(typeof(PersonService), new PersonServiceImpl()); serviceRegister.Register(typeof(AnimalGroupService), new AnimalGroupServiceImpl()); serviceRegister.Register(typeof(AnimalService), new AnimalServiceImpl()); serviceRegister.Register(typeof(CageService), new CageServiceImpl()); serviceRegister.Register(typeof(FoodService), new FoodServiceImpl()); serviceRegister.Register(typeof(EventService), new EventServiceImpl()); serviceRegister.Register(typeof(AddressService), new AddressServiceImpl()); }
public void Replace_SameTypeRegistered_ReplacesServiceWithWarning() { // Arrange bool warningLogged = false; var register = new ServiceRegister(); register.Register <IMockService>(new MockService()); Application.logMessageReceived += (condition, trace, type) => warningLogged = type == LogType.Warning && condition.Contains(typeof(MockService).Name); // Act register.Replace <IMockService>(new MockServiceAlternate()); // Assert var service = register.Resolve <IMockService>(); Assert.AreEqual(typeof(MockServiceAlternate), service.GetType()); Assert.True(warningLogged); }
public override void RegisterServieceRequest(ServiceRegister Register) { Register.Register("text", (Request parameter, ref Request result) => { var req = (Request)parameter; req.Head["CreateTime"] = GetCreateTime().ToString(); result.Content = CreateMsg(req); }); Register.Register("image", (Request parameter, ref Request result) => { var req = (Request)parameter; req.Head["CreateTime"] = GetCreateTime().ToString(); result.Content = CreateMsg(req); }); Register.Register("voice", (Request parameter, ref Request result) => { var req = (Request)parameter; req.Head["CreateTime"] = GetCreateTime().ToString(); result.Content = CreateMsg(req); }); Register.Register("video", (Request parameter, ref Request result) => { var req = (Request)parameter; req.Head["CreateTime"] = GetCreateTime().ToString(); result.Content = CreateMsg(req); }); Register.Register("location", (Request parameter, ref Request result) => { var req = (Request)parameter; req.Head["CreateTime"] = GetCreateTime().ToString(); result.Content = CreateMsg(req); }); Register.Register("link", (Request parameter, ref Request result) => { var req = (Request)parameter; req.Head["CreateTime"] = GetCreateTime().ToString(); result.Content = CreateMsg(req); }); Register.Register("event", (Request parameter, ref Request result) => { var req = (Request)parameter; req.Head["CreateTime"] = GetCreateTime().ToString(); result.Content = CreateMsg(req); }); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddDbContext <AppDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"), o => o.MigrationsAssembly("AspNetCore.Data.EF"))); services.AddIdentity <AppUser, AppRole>() .AddEntityFrameworkStores <AppDbContext>() .AddDefaultTokenProviders(); // Configure Identity services.Configure <IdentityOptions>(options => { // Password settings options.Password.RequireDigit = true; options.Password.RequiredLength = 6; options.Password.RequireNonAlphanumeric = false; options.Password.RequireUppercase = false; options.Password.RequireLowercase = false; // Lockout settings options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromMinutes(30); options.Lockout.MaxFailedAccessAttempts = 10; // User settings options.User.RequireUniqueEmail = true; }); services.AddMvc(); services.AddCors(o => o.AddPolicy("AspNetCoresPolicy", builder => { builder.AllowAnyOrigin() .AllowAnyMethod() .AllowAnyHeader(); })); //Config authen //services.AddAuthentication(o => //{ // o.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; // o.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; //}).AddJwtBearer(cfg => //{ // cfg.RequireHttpsMetadata = false; // cfg.SaveToken = true; // cfg.TokenValidationParameters = new TokenValidationParameters() // { // ValidIssuer = Configuration["Tokens:Issuer"], // ValidAudience = Configuration["Tokens:Issuer"], // IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["Tokens:Key"])) // }; //}); services.AddAutoMapper(); // Add application services. services.AddSingleton(Mapper.Configuration); services.AddScoped <IMapper>(sp => new Mapper(sp.GetRequiredService <AutoMapper.IConfigurationProvider>(), sp.GetService)); services.AddTransient(typeof(IUnitOfWork), typeof(EFUnitOfWork)); services.AddTransient(typeof(IRepository <,>), typeof(EFRepository <,>)); services.AddScoped <SignInManager <AppUser>, SignInManager <AppUser> >(); services.AddScoped <UserManager <AppUser>, UserManager <AppUser> >(); services.AddScoped <RoleManager <AppRole>, RoleManager <AppRole> >(); //services.AddTransient<IProductCategoryService, ProductCategoryService>(); //Register for service ServiceRegister.Register(services); services.AddMvc() .AddViewLocalization() .AddDataAnnotationsLocalization() .AddJsonOptions(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver()); services.AddSwaggerGen(s => { s.SwaggerDoc("v1", new Info { Version = "v1", Title = "ASP NET Core Project", Description = "ASP NET Core - API Swagger surface", License = new License { Name = "MIT", Url = "https://github.com/laptrinhviet/AspNetCore.git" } }); }); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddMemoryCache(); services.AddMvc().AddDataAnnotationsLocalization().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); services.AddMvcCore().AddVersionedApiExplorer(o => o.GroupNameFormat = "'v'VVV").AddAuthorization(); ServiceRegister.Register(services); services.AddCors(options => { options.AddPolicy("AllowAllOrigins", builder => { builder .WithHeaders("accept", "content-type", "origin", "x-custom-header") .AllowAnyOrigin() .AllowAnyHeader() .AllowAnyMethod(); }); }); //services.AddCustomAuthentication(Configuration); services.AddApiVersioning(config => { config.ReportApiVersions = true; config.AssumeDefaultVersionWhenUnspecified = true; config.DefaultApiVersion = new ApiVersion(1, 0); config.ApiVersionReader = new HeaderApiVersionReader("api-version"); }); services.AddSingleton <IActionContextAccessor, ActionContextAccessor>(); services.AddJsonLocalization(opts => opts.ResourcesPath = Configuration["LANGUAGE_PATH"]); //Multiple language setting var supportedCultures = new[] { new CultureInfo(StaticVariable.EnCulture), new CultureInfo(StaticVariable.VnCulture) }; var localizationOptions = new RequestLocalizationOptions() { DefaultRequestCulture = new RequestCulture(culture: StaticVariable.EnCulture, uiCulture: StaticVariable.EnCulture), SupportedCultures = supportedCultures, SupportedUICultures = supportedCultures }; localizationOptions.RequestCultureProviders = new[] { new RouteDataRequestCultureProvider() { RouteDataStringKey = "lang", Options = localizationOptions } }; services.AddSingleton(localizationOptions); services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) .AddJwtBearer(jwtBearerOptions => { jwtBearerOptions.TokenValidationParameters = new TokenValidationParameters() { ValidateActor = false, ValidateAudience = true, ValidateLifetime = true, ValidateIssuerSigningKey = true, ValidIssuer = Configuration["Issuer"], ValidAudience = Configuration["Audience"], IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["SigningKey"])) }; jwtBearerOptions.SaveToken = true; }); services.AddSwaggerGen( options => { var provider = services.BuildServiceProvider() .GetRequiredService <IApiVersionDescriptionProvider>(); foreach (var description in provider.ApiVersionDescriptions) { options.SwaggerDoc( description.GroupName, new Info() { Title = $"eFMS Mobile API {description.ApiVersion}", Version = description.ApiVersion.ToString(), Description = "eFMS Mobile API Document" }); } options.DocumentFilter <SwaggerAddEnumDescriptions>(); options.AddSecurityDefinition("oauth2", new OAuth2Scheme { Flow = "implicit", // just get token via browser (suitable for swagger SPA) AuthorizationUrl = "", Scopes = new Dictionary <string, string> { { "apimobile", "Mobile API" } } }); options.OperationFilter <AuthorizeCheckOperationFilter>(); // Required to use access token }); }