@Override public String getUserDomain(String username) { // can be null (e.g. for System user / during app ctx init) if ((username != null) && AuthenticationUtil.isMtEnabled()) { int idx = username.lastIndexOf(SEPARATOR); if ((idx > 0) && (idx < (username.length() - 1))) { String tenantDomain = getTenantDomain(username.substring(idx + 1)); checkTenantEnabled(tenantDomain); return tenantDomain; } } return DEFAULT_DOMAIN; // default domain - non-tenant user }
@Override public String getUserDomain(String username) { // can be null (e.g. for System user / during app ctx init) if ((username != null) && AuthenticationUtil.isMtEnabled()) { int idx = username.lastIndexOf(SEPARATOR); if ((idx > 0) && (idx < (username.length() - 1))) { String tenantDomain = getTenantDomain(username.substring(idx + 1)); checkTenantEnabled(tenantDomain); return tenantDomain; } } return DEFAULT_DOMAIN; // default domain - non-tenant user }
@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; }
protected String getName(String name, String tenantDomain, boolean checkTenantEnabled) { ParameterCheck.mandatory("tenantDomain", tenantDomain); if (name == null) { return null; } if (checkTenantEnabled) { checkTenantEnabled(tenantDomain); } int idx1 = name.indexOf(SEPARATOR); if (idx1 != 0) { // no domain, so add it as a prefix (between two domain separators) 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; }
protected String getName(String name, String tenantDomain, boolean checkTenantEnabled) { ParameterCheck.mandatory("tenantDomain", tenantDomain); if (name == null) { return null; } if (checkTenantEnabled) { checkTenantEnabled(tenantDomain); } int idx1 = name.indexOf(SEPARATOR); if (idx1 != 0) { // no domain, so add it as a prefix (between two domain separators) 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 QName getName(NodeRef inNodeRef, QName name) { ParameterCheck.mandatory("InNodeRef", inNodeRef); int idx = inNodeRef.getStoreRef().getIdentifier().lastIndexOf(SEPARATOR); if (idx != -1) { String tenantDomain = inNodeRef.getStoreRef().getIdentifier().substring(1, idx); checkTenantEnabled(tenantDomain); return getName(name, tenantDomain); } return name; }
@Override public QName getName(NodeRef inNodeRef, QName name) { ParameterCheck.mandatory("InNodeRef", inNodeRef); int idx = inNodeRef.getStoreRef().getIdentifier().lastIndexOf(SEPARATOR); if (idx != -1) { String tenantDomain = inNodeRef.getStoreRef().getIdentifier().substring(1, idx); checkTenantEnabled(tenantDomain); return getName(name, tenantDomain); } return name; }