/// <summary> /// Accepts the type which will specify the users custom configuration. /// This type should implement <see cref="IConfigureThisEndpoint" />. /// </summary> /// <param name="specifier"></param> /// <param name="args"></param> /// <param name="defaultProfiles"></param> /// <param name="endpointName"></param> /// <param name="scannableAssembliesFullName">Assemblies full name that were scanned.</param> public GenericHost(IConfigureThisEndpoint specifier, string[] args, List <Type> defaultProfiles, string endpointName, IEnumerable <string> scannableAssembliesFullName = null) { this.specifier = specifier; if (String.IsNullOrEmpty(endpointName)) { endpointName = specifier.GetType().Namespace ?? specifier.GetType().Assembly.GetName().Name; } Configure.GetEndpointNameAction = () => endpointName; Configure.DefineEndpointVersionRetriever = () => FileVersionRetriever.GetFileVersion(specifier.GetType()); if (scannableAssembliesFullName == null) { var assemblyScanner = new AssemblyScanner(); assemblyScanner.MustReferenceAtLeastOneAssembly.Add(typeof(IHandleMessages <>).Assembly); assembliesToScan = assemblyScanner .GetScannableAssemblies() .Assemblies; } else { assembliesToScan = scannableAssembliesFullName .Select(Assembly.Load) .ToList(); } profileManager = new ProfileManager(assembliesToScan, specifier, args, defaultProfiles); ProfileActivator.ProfileManager = profileManager; configManager = new ConfigManager(assembliesToScan, specifier); wcfManager = new WcfManager(); roleManager = new RoleManager(assembliesToScan); }
public GenericHost(IConfigureThisEndpoint specifier, string[] args, List<Type> defaultProfiles, string endpointName, IEnumerable<string> scannableAssembliesFullName = null) { this.specifier = specifier; if (String.IsNullOrEmpty(endpointName)) { endpointName = specifier.GetType().Namespace ?? specifier.GetType().Assembly.GetName().Name; } endpointNameToUse = endpointName; endpointVersionToUse = FileVersionRetriever.GetFileVersion(specifier.GetType()); if (scannableAssembliesFullName == null || !scannableAssembliesFullName.Any()) { var assemblyScanner = new AssemblyScanner(); assemblyScanner.MustReferenceAtLeastOneAssembly.Add(typeof(IHandleMessages<>).Assembly); assembliesToScan = assemblyScanner .GetScannableAssemblies() .Assemblies; } else { assembliesToScan = scannableAssembliesFullName .Select(Assembly.Load) .ToList(); } profileManager = new ProfileManager(assembliesToScan, args, defaultProfiles); wcfManager = new WcfManager(); }
/// <summary> /// Accepts the type which will specify the users custom configuration. /// This type should implement <see cref="IConfigureThisEndpoint"/>. /// </summary> /// <param name="specifier"></param> /// <param name="args"></param> /// <param name="defaultProfiles"></param> public GenericHost(IConfigureThisEndpoint specifier, string[] args, IEnumerable <Type> defaultProfiles) { this.specifier = specifier; var assembliesToScan = AssemblyScanner.GetScannableAssemblies(); profileManager = new ProfileManager(assembliesToScan, specifier, args, defaultProfiles); configManager = new ConfigManager(assembliesToScan, specifier); wcfManager = new WcfManager(assembliesToScan); roleManager = new RoleManager(assembliesToScan); }
/// <summary> /// Accepts the type which will specify the users custom configuration. /// This type should implement <see cref="IConfigureThisEndpoint"/>. /// </summary> /// <param name="specifier"></param> /// <param name="args"></param> /// <param name="defaultProfiles"></param> /// <param name="endpointName"></param> public GenericHost(IConfigureThisEndpoint specifier, string[] args, IEnumerable <Type> defaultProfiles, string endpointName) { this.specifier = specifier; Configure.GetEndpointNameAction = () => endpointName; var assembliesToScan = AssemblyScanner.GetScannableAssemblies() .ToList(); profileManager = new ProfileManager(assembliesToScan, specifier, args, defaultProfiles); ProfileActivator.ProfileManager = profileManager; configManager = new ConfigManager(assembliesToScan, specifier); wcfManager = new WcfManager(assembliesToScan); roleManager = new RoleManager(assembliesToScan); }
/// <summary> /// Accepts the type which will specify the users custom configuration. /// This type should implement <see cref="IConfigureThisEndpoint"/>. /// </summary> /// <param name="specifier"></param> /// <param name="args"></param> /// <param name="defaultProfiles"></param> /// <param name="endpointName"></param> /// <param name="scannableAssembliesFullName">Assemblies full name that were scanned.</param> public GenericHost(IConfigureThisEndpoint specifier, string[] args, IEnumerable <Type> defaultProfiles, string endpointName, IEnumerable <string> scannableAssembliesFullName = null) { this.specifier = specifier; Configure.GetEndpointNameAction = () => endpointName; List <Assembly> assembliesToScan; if (scannableAssembliesFullName == null) { assembliesToScan = AssemblyScanner.GetScannableAssemblies().Assemblies; } else { assembliesToScan = scannableAssembliesFullName.Select(Assembly.Load).ToList(); } profileManager = new ProfileManager(assembliesToScan, specifier, args, defaultProfiles); ProfileActivator.ProfileManager = profileManager; configManager = new ConfigManager(assembliesToScan, specifier); wcfManager = new WcfManager(); roleManager = new RoleManager(assembliesToScan); }