private static void RegisterAuthenticatedUserClient(ContainerBuilder builder) { builder.Register(context => { var configuration = context.Resolve <IStackItConfiguration>(); AuthenticationProvider provider = configuration.AuthenticationProvider; IAuthenticatedUserClient client = null; switch (provider) { case AuthenticationProvider.Development: client = new DevelopmentAuthenticatedUserClient(); break; case AuthenticationProvider.Crowd: ICrowdConfiguration crowdConfiguration = configuration.CrowdConfiguration; var securityServer = context.Resolve <ISecurityServer>(); if (crowdConfiguration.Url != null) { securityServer.Url = crowdConfiguration.Url; } client = new CrowdAuthenticatedUserClient( securityServer, crowdConfiguration.ApplicationName, crowdConfiguration.ApiPassword); break; } return(client); }); }
public StackItConfiguration( AuthenticationProvider authenticationProvider, ICrowdConfiguration crowdConfiguration, IQueueingConfiguration queueingConfiguration, ICloudOptions cloudOptions, IList<IInstanceTypeConfiguration> instanceTypeConfigurations, IPuppetConfiguration puppetConfiguration ) { AuthenticationProvider = authenticationProvider; CrowdConfiguration = crowdConfiguration; QueueingConfiguration = queueingConfiguration; CloudOptions = cloudOptions; InstanceTypes = instanceTypeConfigurations; PuppetConfiguration = puppetConfiguration; }
public StackItConfiguration( AuthenticationProvider authenticationProvider, ICrowdConfiguration crowdConfiguration, IQueueingConfiguration queueingConfiguration, ICloudOptions cloudOptions, IList <IInstanceTypeConfiguration> instanceTypeConfigurations, IPuppetConfiguration puppetConfiguration ) { AuthenticationProvider = authenticationProvider; CrowdConfiguration = crowdConfiguration; QueueingConfiguration = queueingConfiguration; CloudOptions = cloudOptions; InstanceTypes = instanceTypeConfigurations; PuppetConfiguration = puppetConfiguration; }