Search in sources :

Example 1 with NoSuchTenantException

use of org.craftercms.profile.exceptions.NoSuchTenantException in project profile by craftercms.

the class TenantServiceImpl method updateTenant.

protected Tenant updateTenant(String tenantName, UpdateCallback callback) throws ProfileException {
    Tenant tenant = getTenant(tenantName);
    if (tenant != null) {
        checkIfTenantActionIsAllowed(tenantName, TenantAction.UPDATE_TENANT);
        UpdateHelper updateHelper = new UpdateHelper();
        TenantUpdater tenantUpdater = new TenantUpdater(tenant, updateHelper, tenantRepository);
        callback.doWithTenant(tenantUpdater);
        try {
            tenantUpdater.update();
        } catch (MongoDataException e) {
            throw new I10nProfileException(ERROR_KEY_UPDATE_TENANT_ERROR, e, tenant.getName());
        }
    } else {
        throw new NoSuchTenantException(tenantName);
    }
    return tenant;
}
Also used : NoSuchTenantException(org.craftercms.profile.exceptions.NoSuchTenantException) UpdateHelper(org.craftercms.commons.mongo.UpdateHelper) Tenant(org.craftercms.profile.api.Tenant) TenantUpdater(org.craftercms.profile.utils.db.TenantUpdater) I10nProfileException(org.craftercms.profile.api.exceptions.I10nProfileException) MongoDataException(org.craftercms.commons.mongo.MongoDataException)

Aggregations

MongoDataException (org.craftercms.commons.mongo.MongoDataException)1 UpdateHelper (org.craftercms.commons.mongo.UpdateHelper)1 Tenant (org.craftercms.profile.api.Tenant)1 I10nProfileException (org.craftercms.profile.api.exceptions.I10nProfileException)1 NoSuchTenantException (org.craftercms.profile.exceptions.NoSuchTenantException)1 TenantUpdater (org.craftercms.profile.utils.db.TenantUpdater)1