throws RegistryException {
try {
UserStoreManager userStoreReader = userRealm.getUserStoreManager();
RealmConfiguration realmConfig;
try {
realmConfig = userRealm.getRealmConfiguration();
} catch (UserStoreException e) {
String msg = "Failed to retrieve realm configuration.";
log.error(msg, e);
throw new RegistryException(msg, e);
}
String systemUser = CarbonConstants.REGISTRY_SYSTEM_USERNAME;
if (systemUser.equals(userName)) {
return true;
}
String adminUser = realmConfig.getAdminUserName();
if (adminUser.equals(userName)) {
return true;
}
String[] roles = userStoreReader.getRoleListOfUser(userName);
String adminRoleName = realmConfig.getAdminRoleName();
if (containsString(adminRoleName, roles)) {
return true;
}
} catch (UserStoreException e) {