Пример #1
0
        public async Task ContinueClusterSetup()
        {
            AssertOnlyInSetupMode();

            var operationCancelToken = new OperationCancelToken(ServerStore.ServerShutdown);
            var operationId          = GetLongQueryString("operationId", false);

            if (operationId.HasValue == false)
            {
                operationId = ServerStore.Operations.GetNextOperationId();
            }

            using (ServerStore.ContextPool.AllocateOperationContext(out JsonOperationContext context))
                using (var continueSetupInfoJson = context.ReadForMemory(RequestBodyStream(), "continue-cluster-setup"))
                {
                    var continueSetupInfo = JsonDeserializationServer.ContinueSetupInfo(continueSetupInfoJson);

                    await ServerStore.Operations.AddOperation(
                        null, "Continue Cluster Setup.",
                        Documents.Operations.Operations.OperationType.Setup,
                        progress => SetupManager.ContinueClusterSetupTask(progress, continueSetupInfo, ServerStore, operationCancelToken.Token),
                        operationId.Value, token : operationCancelToken);
                }

            NoContentStatus();
        }