public async Task <IActionResult> New(string moniker, [FromQuery][Required] string pocEmailAddress) { try { SystemTenant tenant = await _systemTenantsService.GetItemAsync(moniker); if (tenant.PointOfContact.EmailAddress.Address.Equals(pocEmailAddress, StringComparison.InvariantCultureIgnoreCase)) { tenant = await _systemTenantsService.ReplaceItemAsync(tenant); ObjectResult statusCode = StatusCode(StatusCodes.Status200OK, "New token issued."); var response = new { tenant.SetupToken, statusCode }; return(Ok(new { response })); } else { ObjectResult statusCode = StatusCode(StatusCodes.Status400BadRequest, "Token NOT issued. PoC email address does not match."); var response = new { statusCode }; return(BadRequest(new { response })); } } catch (Exception ex) { return(BadRequest("Error generating new setup token. Error: " + ex.Message)); } }
public async Task <SystemTenant> Register(SystemTenantModel model) { SystemTenant tenant = null; // If tenant exists in container, return. if (await TenantExists(model.Moniker)) { throw new MonikerAlreadyExistsException(model.Moniker.ToUpper()); } // Get all lookup items. List <LookupGroupEntity> systemLookupItems = (await _systemLookupItemService.GetItems()).ToList(); // Get current subscription. Subscription currentSubscription = await _systemSubscriptionService.GetItem(model.SubscriptionId); // Create and populate tenant object. tenant = new SystemTenant(model, currentSubscription, systemLookupItems); tenant = await _systemTenantManager.CreateItemAsync(tenant); return(tenant); }
public async Task <SystemTenant> Register(string moniker) { SystemTenant tenant = null; // If tenant exists in container, return. if (await TenantExists(moniker)) { throw new MonikerAlreadyExistsException(moniker.ToUpper()); } // Get list of tenants from config file. var models = _configuration.GetSection("tenants").Get <List <SystemTenantModel> >(); // If tenant does not exist in config file, return. if (!models.Exists(x => string.Compare(x.Moniker, moniker, true) == 0)) { throw new MonikerDoesNotExistException(moniker.ToUpper()); } foreach (SystemTenantModel registrationModel in models) { // Get all lookup items. List <LookupGroupEntity> systemLookupItems = (await _systemLookupItemService.GetItems()).ToList(); // Get current subscription. Subscription currentSubscription = await _systemSubscriptionService.GetItem(registrationModel.SubscriptionId); // Create and populate tenant object. tenant = new SystemTenant(registrationModel, currentSubscription, systemLookupItems); tenant = await _systemTenantManager.CreateItemAsync(tenant); return(tenant); } return(tenant); }