Skip to content

Commit 17fe040

Browse files
committed
Refactor getInitiationData to conditionally add USER_IDENTIFIER based on multi-attribute login setting
1 parent ddc64db commit 17fe040

2 files changed

Lines changed: 9 additions & 85 deletions

File tree

components/org.wso2.carbon.identity.application.authentication.handler.identifier/src/main/java/org/wso2/carbon/identity/application/authentication/handler/identifier/UserResolveExecutor.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import org.apache.commons.lang.StringUtils;
2424
import org.apache.commons.logging.Log;
2525
import org.apache.commons.logging.LogFactory;
26+
import org.wso2.carbon.context.PrivilegedCarbonContext;
2627
import org.wso2.carbon.identity.application.authentication.framework.util.FrameworkConstants;
2728
import org.wso2.carbon.identity.application.authentication.handler.identifier.internal.IdentifierAuthenticatorServiceComponent;
2829
import org.wso2.carbon.identity.central.log.mgt.utils.LoggerUtils;
@@ -76,8 +77,11 @@ public String getName() {
7677
public List<String> getInitiationData() {
7778

7879
List<String> initiationData = new ArrayList<>();
80+
String tenantDomain = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantDomain();
81+
if (IdentifierAuthenticatorServiceComponent.getMultiAttributeLogin().isEnabled(tenantDomain)){
82+
initiationData.add(USER_IDENTIFIER);
83+
}
7984
initiationData.add(USERNAME_CLAIM_URI);
80-
initiationData.add(USER_IDENTIFIER);
8185
return initiationData;
8286
}
8387

@@ -152,18 +156,14 @@ private ExecutorResponse resolveUser(String username, String tenantDomain, FlowE
152156
* Retrieves the user realm for the given tenant domain.
153157
*
154158
* @param tenantDomain Tenant domain.
155-
* @return UserRealm for the tenant, or null if not available.
159+
* @return UserRealm instance for the tenant.
156160
* @throws UserStoreException If an error occurs while retrieving the user realm.
157161
*/
158162
private UserRealm getUserRealm(String tenantDomain) throws UserStoreException {
159163

160-
try {
161-
RealmService realmService = IdentifierAuthenticatorServiceComponent.getRealmService();
162-
int tenantId = realmService.getTenantManager().getTenantId(tenantDomain);
163-
return (UserRealm) realmService.getTenantUserRealm(tenantId);
164-
} catch (Exception e) {
165-
throw new UserStoreException("Error while retrieving user realm for tenant: " + tenantDomain, e);
166-
}
164+
RealmService realmService = IdentifierAuthenticatorServiceComponent.getRealmService();
165+
int tenantId = realmService.getTenantManager().getTenantId(tenantDomain);
166+
return (UserRealm) realmService.getTenantUserRealm(tenantId);
167167
}
168168

169169
/**

components/org.wso2.carbon.identity.application.authentication.handler.identifier/src/main/java/org/wso2/carbon/identity/application/authentication/handler/identifier/util/IdentifierErrorConstants.java

Lines changed: 0 additions & 76 deletions
This file was deleted.

0 commit comments

Comments
 (0)