public RegisterServiceRegistryContainerResult(string name, CoreServices.ServiceRegistry registry, Type type, MethodInfo method, ServiceRegistryLoaderAttribute attr) { Success = true; Type = type; MethodInfo = method; Attribute = attr; ServiceRegistry = registry; Name = name; }
public CoreServices.ServiceRegistry Build() { Args.ThrowIf(_forTypes.Count != _useTypes.Count, "Type count mismatch: for types ({0}) use types({1})", _forTypes.Count, _useTypes.Count); CoreServices.ServiceRegistry reg = new CoreServices.ServiceRegistry(); for (int i = 0; i < _forTypes.Count; i++) { reg.Set(_forTypes[i], _useTypes[i]); } return(reg); }
public CoreServices.ServiceRegistry RegistryLoader() { ConsoleLogger logger = new ConsoleLogger(); logger.StartLoggingThread(); CoreServices.ServiceRegistry registry = new CoreServices.ServiceRegistry(); registry .For <ILogger>().Use(logger) .ForCtor <TestRegistryClass>("ctorParam").Use(TestValue); return(registry); }
public void CanRegisterContainer() { ServiceRegistryService svc = GetServiceRegistrationService(nameof(ServiceRegistryLoaderTest)); List <ServiceRegistryContainerRegistrationResult> results = svc.RegisterServiceRegistryContainers(Assembly.GetExecutingAssembly()); Expect.AreEqual(1, results.Count); CoreServices.ServiceRegistry registry = svc.GetServiceRegistry(results[0].Name); TestRegistryClass instance = registry.Get <TestRegistryClass>(); Expect.AreEqual(instance.SetByCtor, TestRegistryContainer.TestValue); Expect.AreEqual(typeof(ConsoleLogger), instance.Logger.GetType()); }
public static ServiceProxyServer Serve(this CoreServices.ServiceRegistry registry, HostPrefix[] hostPrefixes, ILogger logger = null, BamConf conf = null) { conf = conf ?? BamConf.Load(ServiceConfig.ContentRoot); logger = logger ?? Log.Default; ServiceProxyServer server = new ServiceProxyServer(registry, new ServiceProxyResponder(conf, logger), logger); foreach (HostPrefix prefix in hostPrefixes) { server.HostPrefixes.Add(prefix); } server.Start(); return(server); }
public void ServiceRegistryLoaderTest() { ServiceRegistryService svc = GetServiceRegistrationService(nameof(ServiceRegistryLoaderTest)); string name = nameof(ServiceRegistryLoaderTest); svc.RegisterServiceRegistryLoader(name, typeof(TestServiceRegistryContainer).GetMethod("Create"), true); CoreServices.ServiceRegistry reg = svc.GetServiceRegistry(name); TestMonkey value = reg.Get <TestMonkey>(); Expect.AreEqual("SomeValue", value.Name); Expect.IsNull(value.Logger); reg.SetProperties(value); Expect.IsObjectOfType <ConsoleLogger>(value.Logger); }
public static ServiceProxyServer Serve <T>(this T service, HostPrefix[] hostPrefixes, ILogger logger = null, BamConf conf = null) { CoreServices.ServiceRegistry reg = new CoreServices.ServiceRegistry(); reg.For <T>().Use(service); return(reg.Serve(hostPrefixes, logger, conf)); }
public static ServiceProxyServer Serve(this CoreServices.ServiceRegistry registry, ILogger logger = null, string hostName = "localhost", int port = 8080, bool ssl = false, BamConf conf = null) { return(Serve(registry, new HostPrefix[] { new HostPrefix { HostName = hostName, Port = port, Ssl = ssl } }, logger, conf)); }
public static ServiceProxyServer Serve <T>(this T service, ILogger logger = null, string hostName = "localhost", int port = 8080, bool ssl = false, BamConf conf = null) where T : ProxyableService { CoreServices.ServiceRegistry reg = new CoreServices.ServiceRegistry(); reg.For <T>().Use(service); return(reg.Serve(logger, hostName, port, ssl, conf)); }