public DtoProvisionResponse ConfirmProvisionRequest(DtoConfirmProvisionRequest request) { var computerService = new ServiceComputer(); var computer = computerService.GetByGuid(request.Guid); if (computer == null) { return new DtoProvisionResponse() { ProvisionStatus = EnumProvisionStatus.Status.Error } } ; if (computer.ProvisionStatus == EnumProvisionStatus.Status.Reset) { return new DtoProvisionResponse() { ProvisionStatus = EnumProvisionStatus.Status.Reset } } ; computer.ProvisionStatus = EnumProvisionStatus.Status.Provisioned; computerService.UpdateComputer(computer); var response = new DtoProvisionResponse(); var clientComServers = new GetClientComServers().Run(request.Guid); if (clientComServers != null) { response.ComServers = clientComServers; } response.ProvisionStatus = EnumProvisionStatus.Status.Provisioned; return(response); }
public DtoProvisionResponse ConfirmProvisionRequest(DtoConfirmProvisionRequest confirmRequest) { Request.Method = Method.POST; Request.Resource = string.Format("ProvisionedComm/{0}/ConfirmProvisionRequest/", Resource); return(new ApiRequest().ExecuteSymKeyEncryption <DtoProvisionResponse>(Request, JsonConvert.SerializeObject(confirmRequest))); }
private EnumProvisionStatus.Status ProvisionStage3() { var deviceThumbprint = _serviceSetting.GetSetting("device_thumbprint"); if (string.IsNullOrEmpty(deviceThumbprint.Value)) { //assume stage 2 didn't finish return(EnumProvisionStatus.Status.NotStarted); } var deviceCert = ServiceCertificate.GetCertificateFromStore(deviceThumbprint.Value, StoreName.My); if (deviceCert == null) { return(EnumProvisionStatus.Status.Error); } var confirmRequest = new DtoConfirmProvisionRequest(); confirmRequest.Name = DtoGobalSettings.ClientIdentity.Name; confirmRequest.Guid = _serviceSetting.GetSetting("computer_identifier").Value; confirmRequest.DeviceCert = Convert.ToBase64String(deviceCert.RawData); var confirmResult = new APICall().ProvisionApi.ConfirmProvisionRequest(confirmRequest); if (confirmResult == null) { return(EnumProvisionStatus.Status.Error); } if (confirmResult.ProvisionStatus != EnumProvisionStatus.Status.Provisioned) { return(confirmResult.ProvisionStatus); } UpdateComServers(confirmResult.ComServers); var settingProvisionStatus = _serviceSetting.GetSetting("provision_status"); settingProvisionStatus.Value = Convert.ToInt16(confirmResult.ProvisionStatus).ToString(); _serviceSetting.UpdateSettingValue(settingProvisionStatus); //new provision, if image first run, add to first run group if (File.Exists($"{Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles)}\\Toec\\image_prepped")) { Logger.Debug("Found Image Prep File, Adding to First Run Group"); new APICall().PolicyApi.AddToFirstRunGroup(); } return(EnumProvisionStatus.Status.Provisioned); }
private EnumProvisionStatus.Status ProvisionStage3() { var deviceThumbprint = _serviceSetting.GetSetting("device_thumbprint"); if (string.IsNullOrEmpty(deviceThumbprint.Value)) { //assume stage 2 didn't finish return(EnumProvisionStatus.Status.NotStarted); } var deviceCert = ServiceCertificate.GetCertificateFromStore(deviceThumbprint.Value, StoreName.My); if (deviceCert == null) { return(EnumProvisionStatus.Status.Error); } var confirmRequest = new DtoConfirmProvisionRequest(); confirmRequest.Name = DtoGobalSettings.ClientIdentity.Name; confirmRequest.Guid = _serviceSetting.GetSetting("computer_identifier").Value; confirmRequest.DeviceCert = Convert.ToBase64String(deviceCert.RawData); var confirmResult = new APICall().ProvisionApi.ConfirmProvisionRequest(confirmRequest); if (confirmResult == null) { return(EnumProvisionStatus.Status.Error); } if (confirmResult.ProvisionStatus != EnumProvisionStatus.Status.Provisioned) { return(confirmResult.ProvisionStatus); } UpdateComServers(confirmResult.ComServers); var settingProvisionStatus = _serviceSetting.GetSetting("provision_status"); settingProvisionStatus.Value = Convert.ToInt16(confirmResult.ProvisionStatus).ToString(); _serviceSetting.UpdateSettingValue(settingProvisionStatus); return(EnumProvisionStatus.Status.Provisioned); }