@Override public String getCurrentUserDomain() { return tenantService.getCurrentUserDomain(); }
@Override public String getCurrentUserDomain() { return tenantService.getCurrentUserDomain(); }
@Override public boolean isTenantUser() { // return isTenantUser(AuthenticationUtil.getRunAsUser()); return (!getCurrentUserDomain().equals(TenantService.DEFAULT_DOMAIN)); }
@Override public boolean isTenantUser() { // return isTenantUser(AuthenticationUtil.getRunAsUser()); return (!getCurrentUserDomain().equals(TenantService.DEFAULT_DOMAIN)); }
@Override public void checkDomain(String name) { if (name == null) { return; } String nameDomain = null; int idx1 = name.indexOf(SEPARATOR); if (idx1 == 0) { int idx2 = name.indexOf(SEPARATOR, 1); nameDomain = name.substring(1, idx2); } String tenantDomain = getCurrentUserDomain(); if (((nameDomain == null) && (!tenantDomain.equals(DEFAULT_DOMAIN))) || ((nameDomain != null) && (!nameDomain.equals(tenantDomain)))) { throw new AlfrescoRuntimeException("domain mismatch: expected = " + tenantDomain + ", actual = " + nameDomain); } }
@Override public String getBaseName(String name, boolean forceForNonTenant) { if (name == null) { return null; } String tenantDomain = getCurrentUserDomain(); int idx1 = name.indexOf(SEPARATOR); if (idx1 == 0) { int idx2 = name.indexOf(SEPARATOR, 1); String nameDomain = name.substring(1, idx2); if ((!tenantDomain.equals(DEFAULT_DOMAIN)) && (!tenantDomain.equals(nameDomain))) { throw new AlfrescoRuntimeException("domain mismatch: expected = " + tenantDomain + ", actual = " + nameDomain); } if ((!tenantDomain.equals(DEFAULT_DOMAIN)) || (forceForNonTenant)) { // remove tenant domain name = name.substring(idx2 + 1); } } return name; }
@Override public void checkDomain(String name) { if (name == null) { return; } String nameDomain = null; int idx1 = name.indexOf(SEPARATOR); if (idx1 == 0) { int idx2 = name.indexOf(SEPARATOR, 1); nameDomain = name.substring(1, idx2); } String tenantDomain = getCurrentUserDomain(); if (((nameDomain == null) && (!tenantDomain.equals(DEFAULT_DOMAIN))) || ((nameDomain != null) && (!nameDomain.equals(tenantDomain)))) { throw new AlfrescoRuntimeException("domain mismatch: expected = " + tenantDomain + ", actual = " + nameDomain); } }
@Override public QName getName(QName name) { String tenantDomain = getCurrentUserDomain(); if (!tenantDomain.equals(DEFAULT_DOMAIN)) { checkTenantEnabled(tenantDomain); name = getName(name, tenantDomain); } return name; }
@Override public QName getName(QName name) { String tenantDomain = getCurrentUserDomain(); if (!tenantDomain.equals(DEFAULT_DOMAIN)) { checkTenantEnabled(tenantDomain); name = getName(name, tenantDomain); } return name; }
@Override public String getBaseName(String name, boolean forceForNonTenant) { if (name == null) { return null; } String tenantDomain = getCurrentUserDomain(); int idx1 = name.indexOf(SEPARATOR); if (idx1 == 0) { int idx2 = name.indexOf(SEPARATOR, 1); String nameDomain = name.substring(1, idx2); if ((!tenantDomain.equals(DEFAULT_DOMAIN)) && (!tenantDomain.equals(nameDomain))) { throw new AlfrescoRuntimeException("domain mismatch: expected = " + tenantDomain + ", actual = " + nameDomain); } if ((!tenantDomain.equals(DEFAULT_DOMAIN)) || (forceForNonTenant)) { // remove tenant domain name = name.substring(idx2 + 1); } } return name; }
@Override public String getName(String name) { if (name == null) { return null; } String tenantDomain = getCurrentUserDomain(); if (!tenantDomain.equals(DEFAULT_DOMAIN)) { int idx1 = name.indexOf(SEPARATOR); if (idx1 != 0) { // no tenant domain prefix, so add it name = SEPARATOR + tenantDomain + SEPARATOR + name; } else { int idx2 = name.indexOf(SEPARATOR, 1); String nameDomain = name.substring(1, idx2); if (!tenantDomain.equalsIgnoreCase(nameDomain)) { throw new AlfrescoRuntimeException("domain mismatch: expected = " + tenantDomain + ", actual = " + nameDomain); } } } return name; }
@Override public String getName(String name) { if (name == null) { return null; } String tenantDomain = getCurrentUserDomain(); if (!tenantDomain.equals(DEFAULT_DOMAIN)) { int idx1 = name.indexOf(SEPARATOR); if (idx1 != 0) { // no tenant domain prefix, so add it name = SEPARATOR + tenantDomain + SEPARATOR + name; } else { int idx2 = name.indexOf(SEPARATOR, 1); String nameDomain = name.substring(1, idx2); if (!tenantDomain.equalsIgnoreCase(nameDomain)) { throw new AlfrescoRuntimeException("domain mismatch: expected = " + tenantDomain + ", actual = " + nameDomain); } } } return name; }
@Override public String getDomain(String name, boolean checkCurrentDomain) { ParameterCheck.mandatory("name", name); String nameDomain = DEFAULT_DOMAIN; int idx1 = name.indexOf(SEPARATOR); if (idx1 == 0) { int idx2 = name.indexOf(SEPARATOR, 1); nameDomain = getTenantDomain(name.substring(1, idx2)); if (checkCurrentDomain) { String tenantDomain = getCurrentUserDomain(); if ((!tenantDomain.equals(DEFAULT_DOMAIN)) && (!tenantDomain.equals(nameDomain))) { throw new AlfrescoRuntimeException("domain mismatch: expected = " + tenantDomain + ", actual = " + nameDomain); } } } return nameDomain; }
@Override public String getDomain(String name, boolean checkCurrentDomain) { ParameterCheck.mandatory("name", name); String nameDomain = DEFAULT_DOMAIN; int idx1 = name.indexOf(SEPARATOR); if (idx1 == 0) { int idx2 = name.indexOf(SEPARATOR, 1); nameDomain = getTenantDomain(name.substring(1, idx2)); if (checkCurrentDomain) { String tenantDomain = getCurrentUserDomain(); if ((!tenantDomain.equals(DEFAULT_DOMAIN)) && (!tenantDomain.equals(nameDomain))) { throw new AlfrescoRuntimeException("domain mismatch: expected = " + tenantDomain + ", actual = " + nameDomain); } } } return nameDomain; }
@Override public void checkDomainUser(String username) { ParameterCheck.mandatory("Username", username); String tenantDomain = getCurrentUserDomain(); if (!tenantDomain.equals(DEFAULT_DOMAIN)) { int idx2 = username.lastIndexOf(SEPARATOR); if ((idx2 > 0) && (idx2 < (username.length() - 1))) { String tenantUserDomain = username.substring(idx2 + 1); if ((tenantUserDomain == null) || (!tenantDomain.equalsIgnoreCase(tenantUserDomain))) { throw new TenantDomainMismatchException(tenantDomain, tenantUserDomain); } } else { throw new TenantDomainMismatchException(tenantDomain, null); } } }
@Override public void checkDomainUser(String username) { ParameterCheck.mandatory("Username", username); String tenantDomain = getCurrentUserDomain(); if (!tenantDomain.equals(DEFAULT_DOMAIN)) { int idx2 = username.lastIndexOf(SEPARATOR); if ((idx2 > 0) && (idx2 < (username.length() - 1))) { String tenantUserDomain = username.substring(idx2 + 1); if ((tenantUserDomain == null) || (!tenantDomain.equalsIgnoreCase(tenantUserDomain))) { throw new TenantDomainMismatchException(tenantDomain, tenantUserDomain); } } else { throw new TenantDomainMismatchException(tenantDomain, null); } } }