private static void Register(this IProfileRegistry registry, IEnumerable <ServiceDescriptor> descriptors) { foreach (var descriptor in descriptors) { registry.Register(descriptor); } }
private static void ConfigureInternalDependencies(IProfileRegistry registry, StartupParameters parameters) { registry.For <ISnsTopicCreator>().Use <SnsTopicCreator>(); registry.For <ISnsSubscriptionCreator>().Use <SnsSubscriptionCreator>(); registry.For <ITableAlarmCreator>().Use <TableAlarmCreator>(); registry.For <IIndexAlarmCreator>().Use <IndexAlarmCreator>(); registry.For <IAlarmFinder>().Use <AlarmFinder>(); registry.For <IConfigLoader>().Use <ConfigLoader>(); registry.For <IQueueAlarmCreator>().Use <QueueAlarmCreator>(); var s3Location = GetS3Location(parameters); registry .For <ICloudformationStackDeployer>() .Use(ctx => new CloudformationStackDeployer( ctx.GetInstance <IAlarmLogger>(), ctx.GetInstance <IAmazonCloudFormation>(), ctx.GetInstance <IAmazonS3>(), s3Location )); registry.For <IAlarmCreator>().Use <CloudFormationAlarmCreator>(); }
private void Process(Type type, IProfileRegistry registry) { if (!type.IsAbstract && typeof(IHttpController).IsAssignableFrom(type)) { registry.For(type).Use(type); } }
public static void Register(IProfileRegistry registry) { if (registry == null) { throw new ArgumentNullException(nameof(registry)); } }
public static void Register(IProfileRegistry registry) { if(registry == null) throw new ArgumentNullException("registry"); registry.For<AuthenticationSection>().Singleton().Use(() => (AuthenticationSection) ConfigurationManager.GetSection("system.web/authentication")); registry.For<IConfigurationManager>().Singleton().Use<ConfigurationManagerWrapper>(); registry.For<IFormsAuthentication>().Singleton().Use<FormsAuthenticationWrapper>(); registry.For<IFormsAuthenticationModule>().Singleton().Use<FormsAuthenticationModuleWrapper>(); registry.For<IHttpRuntime>().Singleton().Use<HttpRuntimeWrapper>(); // Web registry.For<HttpApplicationState>().HybridHttpOrThreadLocalScoped().Use(() => HttpContext.Current.Application); registry.For<HttpApplicationStateBase>().HybridHttpOrThreadLocalScoped().Use<HttpApplicationStateWrapper>(); registry.For<HttpContext>().HybridHttpOrThreadLocalScoped().Use(() => HttpContext.Current); registry.For<HttpContextBase>().HybridHttpOrThreadLocalScoped().Use<HttpContextWrapper>(); registry.For<HttpRequest>().HybridHttpOrThreadLocalScoped().Use(() => HttpContext.Current.Request); registry.For<HttpRequestBase>().HybridHttpOrThreadLocalScoped().Use<HttpRequestWrapper>(); registry.For<HttpResponse>().HybridHttpOrThreadLocalScoped().Use(() => HttpContext.Current.Response); registry.For<HttpResponseBase>().HybridHttpOrThreadLocalScoped().Use<HttpResponseWrapper>(); registry.For<HttpServerUtility>().HybridHttpOrThreadLocalScoped().Use(() => HttpContext.Current.Server); registry.For<HttpServerUtilityBase>().HybridHttpOrThreadLocalScoped().Use<HttpServerUtilityWrapper>(); registry.For<HttpSessionState>().HybridHttpOrThreadLocalScoped().Use(() => HttpContext.Current.Session); registry.For<HttpSessionStateBase>().HybridHttpOrThreadLocalScoped().Use<HttpSessionStateWrapper>(); }
private void Process(Type type, IProfileRegistry registry) { if (!type.IsAbstract && typeof (IHttpController).IsAssignableFrom(type)) { registry.For(type).Use(type); } }
public static void Configure(IProfileRegistry registry) { AddService <DBInstance, RdsSource, RdsAlarmDataProvider, ResourceConfig>( registry, WatchmanServiceConfigurationMapper.MapRds ); AddService <AutoScalingGroup, AutoScalingGroupSource, AutoScalingGroupAlarmDataProvider, AutoScalingResourceConfig>( registry, WatchmanServiceConfigurationMapper.MapAutoScaling ); AddService <Subnet, VpcSubnetSource, VpcSubnetAlarmDataProvider, ResourceConfig>( registry, WatchmanServiceConfigurationMapper.MapVpcSubnet ); AddService <FunctionConfiguration, LambdaSource, LambdaAlarmDataProvider, ResourceConfig>( registry, WatchmanServiceConfigurationMapper.MapLambda ); AddService <LoadBalancerDescription, ElbSource, ElbAlarmDataProvider, ResourceConfig>( registry, WatchmanServiceConfigurationMapper.MapElb ); AddService <KinesisStreamData, KinesisStreamSource, KinesisStreamAlarmDataProvider, ResourceConfig>( registry, WatchmanServiceConfigurationMapper.MapStream ); AddService <StateMachineListItem, StepFunctionSource, StepFunctionAlarmDataProvider, ResourceConfig>( registry, WatchmanServiceConfigurationMapper.MapStepFunction ); AddService <TableDescription, TableDescriptionSource, DynamoDbDataProvider, ResourceConfig>( registry, WatchmanServiceConfigurationMapper.MapDynamoDb); }
private static void RegisterInstances(this IProfileRegistry registry, IEnumerable <InstanceRegistration> registrations) { foreach (var registration in registrations) { registry.For(registration.ServiceType).Use(registration.Instance); } }
private static void RegisterTypes(this IProfileRegistry registry, IEnumerable <TypeRegistration> registrations) { foreach (var registration in registrations) { registry.Register(registration); } }
public static void Configure(IProfileRegistry registry, StartupParameters parameters) { var region = AwsStartup.ParseRegion(parameters.AwsRegion); var creds = AwsStartup.CredentialsWithFallback( parameters.AwsAccessKey, parameters.AwsSecretKey, parameters.AwsProfile); registry.For <IAmazonDynamoDB>() .Use(ctx => new AmazonDynamoDBClient(creds, new AmazonDynamoDBConfig { RegionEndpoint = region })); registry.For <IAmazonCloudWatch>() .Use(ctx => new AmazonCloudWatchClient(creds, new AmazonCloudWatchConfig { RegionEndpoint = region })); registry.For <IAmazonSimpleNotificationService>() .Use(ctx => new AmazonSimpleNotificationServiceClient(creds, new AmazonSimpleNotificationServiceConfig { RegionEndpoint = region })); registry.For <IAmazonRDS>() .Use(ctx => new AmazonRDSClient(creds, new AmazonRDSConfig { RegionEndpoint = region })); registry.For <IAmazonAutoScaling>() .Use(ctx => new AmazonAutoScalingClient(creds, region)); registry.For <IAmazonCloudFormation>() .Use(ctx => new AmazonCloudFormationClient(creds, region)); registry.For <IAmazonLambda>().Use(ctx => new AmazonLambdaClient(creds, region)); registry.For <IAmazonEC2>().Use(ctx => new AmazonEC2Client(creds, region)); registry.For <IAmazonElasticLoadBalancing>().Use(ctx => new AmazonElasticLoadBalancingClient(creds, region)); registry.For <IAmazonS3>().Use(ctx => new AmazonS3Client(creds, region)); registry.For <IAmazonStepFunctions>().Use(ctx => new AmazonStepFunctionsClient(creds, region)); }
private void Config(IProfileRegistry config, ITypeProvider typeProvider) { var largeMessageBodyTempPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), Guid.NewGuid().ToString()); config.For<ILogger>() .Use<ConsoleLogger>() .Singleton(); config.For<ILargeMessageBodyStore>() .Use(c => new FileSystemStorageBuilder().Configure() .WithStorageDirectory(largeMessageBodyTempPath) .WithLogger(c.GetInstance<ILogger>()) .Build()) .Singleton(); config.For<IBus>() .Use(c => new BusBuilder().Configure() .WithNames("IntegrationTestHarness", Environment.MachineName) .WithConnectionString(@"Endpoint=sb://shouldnotexist.example.com/;SharedAccessKeyName=IntegrationTestHarness;SharedAccessKey=borkborkbork=") .WithLargeMessageStorage(sc => sc.WithLargeMessageBodyStore(c.GetInstance<ILargeMessageBodyStore>()) .WithMaxSmallMessageSize(50 * 1024) .WithMaxLargeMessageSize(1024 * 1024)) .WithTypesFrom(typeProvider) .WithDefaultTimeout(TimeSpan.FromSeconds(10)) .WithLogger(c.GetInstance<ILogger>()) .Build()) .Singleton(); }
private static void ConfigureLoggers(IProfileRegistry registry, StartupParameters parameters) { var fileSettings = new FileSettings(parameters.ConfigFolderLocation); var alarmLogger = new ConsoleAlarmLogger(parameters.Verbose); var loadLogger = new ConsoleConfigLoadLogger(parameters.Verbose); registry.For <FileSettings>().Use(fileSettings); registry.For <IAlarmLogger>().Use(alarmLogger); registry.For <IConfigLoadLogger>().Use(loadLogger); }
private void RefreshTable() { // TODO: how to get rid of infinite loop? // will use WatchDog class to optimize this. while (true) { IProfileRegistry registry = Program.Container.Resolve <IProfileRegistry>(); if (registry == null) { break; } IList <Variable> list = new List <Variable>(); Thread.Sleep(Convert.ToInt32(textBoxRefresh.Text, CultureInfo.CurrentCulture) * 1000); NormalAgentProfile prof = registry.DefaultProfile as NormalAgentProfile; int rows; if (prof != null) { rows = Messenger.Walk( prof.VersionCode, prof.Agent, prof.GetCommunity, new ObjectIdentifier(_definition.GetNumericalForm()), list, prof.Timeout, WalkMode.WithinSubtree); } else { SecureAgentProfile p = (SecureAgentProfile)registry.DefaultProfile; Discovery discovery = Messenger.GetNextDiscovery(SnmpType.GetBulkRequestPdu); ReportMessage report = discovery.GetResponse(p.Timeout, p.Agent); rows = Messenger.BulkWalk( VersionCode.V3, p.Agent, new OctetString(p.UserName), new ObjectIdentifier(_definition.GetNumericalForm()), list, p.Timeout, 10, WalkMode.WithinSubtree, p.Privacy, report); } SetRows(rows); PopulateGrid(list); } }
public static void Configure(IProfileRegistry registry, StartupParameters parameters) { var region = AwsStartup.ParseRegion(parameters.AwsRegion); var creds = AwsStartup.CredentialsWithFallback( parameters.AwsAccessKey, parameters.AwsSecretKey, parameters.AwsProfile); registry.For <IAmazonDynamoDB>() .Use(ctx => new AmazonDynamoDBClient(creds, new AmazonDynamoDBConfig { RegionEndpoint = region })); registry.For <IAmazonCloudWatch>() .Use(ctx => new AmazonCloudWatchClient(creds, new AmazonCloudWatchConfig { RegionEndpoint = region })); }
private static void RegisterCollectionTypes(this IProfileRegistry registry, IEnumerable <CollectionTypeRegistration> registrations) { foreach (var collectionRegistration in registrations) { foreach (var implementationType in collectionRegistration.ImplementationTypes) { var registration = new TypeRegistration( collectionRegistration.ServiceType, implementationType, collectionRegistration.Lifetime); registry.Register(registration); } } }
private static void AddAutoMapper(IProfileRegistry profileRegistry) { var profiles = AssemblyHandler.GetProfileTypes(); var mapperConfiguration = new MapperConfiguration( cfg => { foreach (var profile in profiles) { cfg.AddProfile(profile); } }); var mapper = mapperConfiguration.CreateMapper(); profileRegistry.For <IMapper>().Use(mapper); }
private static void ConfigureInternalDependencies(IProfileRegistry registry, StartupParameters parameters) { registry.For <ISnsTopicCreator>().Use <SnsTopicCreator>(); registry.For <ISnsSubscriptionCreator>().Use <SnsSubscriptionCreator>(); registry.For <ITableAlarmCreator>().Use <TableAlarmCreator>(); registry.For <IIndexAlarmCreator>().Use <IndexAlarmCreator>(); registry.For <IAlarmFinder>().Use <AlarmFinder>(); registry.For <IConfigLoader>().Use <ConfigLoader>(); registry.For <IQueueAlarmCreator>().Use <QueueAlarmCreator>(); registry.For <IDynamoAlarmGenerator>().Use <DynamoAlarmGenerator>(); registry.For <IOrphanTablesReporter>().Use <OrphanTablesReporter>(); registry.For <IOrphanQueuesReporter>().Use <OrphanQueuesReporter>(); registry.For <ISqsAlarmGenerator>().Use <SqsAlarmGenerator>(); registry.For <ICurrentTimeProvider>().Use <CurrentTimeProvider>(); if (!string.IsNullOrWhiteSpace(parameters.WriteCloudFormationTemplatesToDirectory)) { registry .For <ICloudformationStackDeployer>() .Use( ctx => new DummyCloudFormationStackDeployer( parameters.WriteCloudFormationTemplatesToDirectory, ctx.GetInstance <IAlarmLogger>())); } else { var s3Location = GetS3Location(parameters); registry .For <ICloudformationStackDeployer>() .Use(ctx => new CloudformationStackDeployer( ctx.GetInstance <IAlarmLogger>(), ctx.GetInstance <IAmazonCloudFormation>(), ctx.GetInstance <IAmazonS3>(), s3Location )); } registry.For <IAlarmCreator>().Use <CloudFormationAlarmCreator>(); }
private static void AddService <TServiceModel, TSource, TDataProvider, TResourceAlarmConfig>( IProfileRegistry registry, Func <WatchmanConfiguration, WatchmanServiceConfiguration <TResourceAlarmConfig> > mapper) where TServiceModel : class where TSource : IResourceSource <TServiceModel> where TDataProvider : IAlarmDimensionProvider <TServiceModel>, IResourceAttributesProvider <TServiceModel, TResourceAlarmConfig> where TResourceAlarmConfig : class, IServiceAlarmConfig <TResourceAlarmConfig>, new() { registry.For <IResourceSource <TServiceModel> >().Use <TSource>(); registry.For <IAlarmDimensionProvider <TServiceModel> >().Use <TDataProvider>(); registry.For <IResourceAttributesProvider <TServiceModel, TResourceAlarmConfig> >().Use <TDataProvider>(); registry.For <IServiceAlarmTasks>() .Use <ServiceAlarmTasks <TServiceModel, TResourceAlarmConfig> >() .Ctor <Func <WatchmanConfiguration, WatchmanServiceConfiguration <TResourceAlarmConfig> > >() .Is(mapper); }
private static void AddService <TServiceModel, TSource, TDimensionProvider, TAttributeProvider>( IProfileRegistry registry, Func <WatchmanConfiguration, WatchmanServiceConfiguration> mapper) where TServiceModel : class where TSource : IResourceSource <TServiceModel> where TDimensionProvider : IAlarmDimensionProvider <TServiceModel> where TAttributeProvider : IResourceAttributesProvider <TServiceModel> { registry.For <IResourceSource <TServiceModel> >().Use <TSource>(); registry.For <IAlarmDimensionProvider <TServiceModel> >().Use <TDimensionProvider>(); registry.For <IResourceAttributesProvider <TServiceModel> >().Use <TAttributeProvider>(); registry.For <IServiceAlarmTasks <TServiceModel> >() .Use <ServiceAlarmTasks <TServiceModel> >() .Ctor <Func <WatchmanConfiguration, WatchmanServiceConfiguration> >() .Is(mapper); registry.For <IServiceAlarmTasks>().Use(ctx => ctx.GetInstance <IServiceAlarmTasks <TServiceModel> >()); }
public static void Register(IProfileRegistry registry) { if (registry == null) { throw new ArgumentNullException(nameof(registry)); } // Web registry.For <HttpRequest>().HybridHttpOrThreadLocalScoped().Use(() => HttpContext.Current.Request); registry.For <HttpRequestBase>().HybridHttpOrThreadLocalScoped().Use <HttpRequestWrapper>(); registry.For <IApplicationConfiguration>().Singleton().Use <BundleConfiguration>(); registry.For <IApplicationConfiguration>().Singleton().Use <FilterConfiguration>(); registry.For <IFormViewModel>().HybridHttpOrThreadLocalScoped().Use <FormViewModel>(); registry.For <IHomeViewModel>().HybridHttpOrThreadLocalScoped().Use <HomeViewModel>(); registry.For <IHtmlIdFactory>().Singleton().Use <HtmlIdFactory>(); registry.For <IHttpEncoder>().Singleton().Use <HttpEncoder>(); registry.For <IModelFactory>().Singleton().Use <ModelFactory>(); registry.For <IModelMetadataProvider>().Singleton().Use <ExtendedCachedDataAnnotationsModelMetadataProvider>(); registry.For <ISystemInformationFactory>().Singleton().Use <SystemInformationFactory>(); }
private static void Register(this IProfileRegistry registry, ServiceDescriptor descriptor) { if (descriptor.ImplementationType != null) { registry.For(descriptor.ServiceType) .LifecycleIs(descriptor.Lifetime) .Use(descriptor.ImplementationType); return; } if (descriptor.ImplementationFactory != null) { registry.For(descriptor.ServiceType) .LifecycleIs(descriptor.Lifetime) .Use(descriptor.CreateFactory()); return; } registry.For(descriptor.ServiceType) .LifecycleIs(descriptor.Lifetime) .Use(descriptor.ImplementationInstance); }
public static void UseOptions <T>(this IProfileRegistry registry, string configSection) where T : class, new() { registry.For <IOptions <T> >().Use(() => new OptionsProvider <T>(configSection)).Singleton(); }
private static void ConfigureResourceSources(IProfileRegistry registry) { registry.For <IResourceSource <TableDescription> >().Use <TableDescriptionSource>(); registry.For <IResourceSource <QueueData> >().Use <QueueSource>(); }
public static void AddRegistry(this IProfileRegistry profileRegistry, IContainerRegistry registry) { profileRegistry.RegisterTypes(registry.TypeRegistrations); profileRegistry.RegisterCollectionTypes(registry.CollectionTypeRegistrations); profileRegistry.RegisterInstances(registry.InstanceRegistrations); }
private static void Register(this IProfileRegistry registry, TypeRegistration registration) { registry.For(registration.ServiceType) .Use(registration.ImplementationType) .LifecycleIs(registration.Lifetime); }
public static void ConfigureInternalDependencies(IProfileRegistry registry) { registry.For <IResourceSource <TableDescription> >().Use <TableDescriptionSource>(); registry.For <IConfigLoader>().Use <ConfigLoader>(); }
private static void RegisterType(Type registrationType, Type implementationType, Lifetime lifetime, IProfileRegistry registry) { switch (lifetime) { case Lifetime.Transient: registry.For(registrationType) .LifecycleIs(Lifecycles.Unique) .Use(implementationType); break; case Lifetime.Singleton: registry.For(registrationType) .LifecycleIs(Lifecycles.Singleton) .Use(implementationType); break; case Lifetime.PerRequest: registry.For(registrationType) .Use(implementationType); break; default: throw new ArgumentOutOfRangeException("lifetime", lifetime, String.Format("Unknown Lifetime: {0}.", lifetime)); } }