public void CanSetStudioConfiguration() { DoNotReuseServer(); using (var store = GetDocumentStore()) { ServerWideStudioConfiguration serverWideStudioConfiguration = store.Maintenance.Server.Send(new GetServerWideStudioConfigurationOperation()); Assert.Null(serverWideStudioConfiguration); StudioConfiguration studioConfiguration = store.Maintenance.Send(new GetStudioConfigurationOperation()); Assert.Null(studioConfiguration); store.Maintenance.Server.Send(new PutServerWideStudioConfigurationOperation(new ServerWideStudioConfiguration { Environment = StudioConfiguration.StudioEnvironment.Development, ReplicationFactor = 2 })); serverWideStudioConfiguration = store.Maintenance.Server.Send(new GetServerWideStudioConfigurationOperation()); Assert.NotNull(serverWideStudioConfiguration); Assert.Equal(StudioConfiguration.StudioEnvironment.Development, serverWideStudioConfiguration.Environment); // from server Assert.Equal(2, serverWideStudioConfiguration.ReplicationFactor); studioConfiguration = store.Maintenance.Send(new GetStudioConfigurationOperation()); Assert.Null(studioConfiguration); store.Maintenance.Send(new PutStudioConfigurationOperation(new StudioConfiguration { Environment = StudioConfiguration.StudioEnvironment.Production })); studioConfiguration = store.Maintenance.Send(new GetStudioConfigurationOperation()); Assert.NotNull(studioConfiguration); Assert.Equal(StudioConfiguration.StudioEnvironment.Production, studioConfiguration.Environment); // from database store.Maintenance.Server.Send(new PutServerWideStudioConfigurationOperation(new ServerWideStudioConfiguration { Environment = StudioConfiguration.StudioEnvironment.None })); studioConfiguration = store.Maintenance.Send(new GetStudioConfigurationOperation()); Assert.NotNull(studioConfiguration); Assert.Equal(StudioConfiguration.StudioEnvironment.Production, studioConfiguration.Environment); // from database store.Maintenance.Send(new PutStudioConfigurationOperation(new StudioConfiguration { Environment = StudioConfiguration.StudioEnvironment.Production, Disabled = true })); studioConfiguration = store.Maintenance.Send(new GetStudioConfigurationOperation()); Assert.NotNull(studioConfiguration); Assert.True(studioConfiguration.Disabled); Assert.Equal(StudioConfiguration.StudioEnvironment.Production, studioConfiguration.Environment); // from database } }
public PutServerWideStudioConfigurationOperation(ServerWideStudioConfiguration configuration) { _configuration = configuration ?? throw new ArgumentNullException(nameof(configuration)); }
public PutServerWideStudioConfigurationCommand(DocumentConventions conventions, JsonOperationContext context, ServerWideStudioConfiguration configuration) { if (conventions == null) { throw new ArgumentNullException(nameof(conventions)); } if (configuration == null) { throw new ArgumentNullException(nameof(configuration)); } if (context == null) { throw new ArgumentNullException(nameof(context)); } _configuration = DocumentConventions.Default.Serialization.DefaultConverter.ToBlittable(configuration, context); }
public PutServerWideStudioConfigurationCommand(DocumentConventions conventions, JsonOperationContext context, ServerWideStudioConfiguration configuration) { if (conventions == null) { throw new ArgumentNullException(nameof(conventions)); } if (configuration == null) { throw new ArgumentNullException(nameof(configuration)); } if (context == null) { throw new ArgumentNullException(nameof(context)); } _configuration = EntityToBlittable.ConvertCommandToBlittable(configuration, context); }