in src/main/java/org/apache/sling/tenant/internal/TenantProviderImpl.java [247:274]
public Tenant create(final String tenantId, final Map<String, Object> properties) {
return call(new ResourceResolverTask<Tenant>() {
@Override
public Tenant call(ResourceResolver adminResolver) {
try {
// create the tenant
Resource tenantRes = createTenantResource(adminResolver, tenantId, properties);
TenantImpl tenant = new TenantImpl(tenantRes);
customizeTenant(tenantRes, tenant, true);
adminResolver.commit();
// refresh tenant instance, as it copies property from
// resource
tenant.loadProperties(tenantRes);
return tenant;
} catch (PersistenceException e) {
log.error("create: Failed creating Tenant {}", tenantId, e);
} finally {
adminResolver.close();
}
// no new tenant in case of problems
return null;
}
});
}