private AuthenticatedUser getAppOwner(OAuthConsumerAppDTO application, String tenantAwareLoggedInUser, String tenantDomain) throws IdentityOAuthAdminException { // We first set the logged in user as the owner. AuthenticatedUser appOwner = buildAuthenticatedUser(tenantAwareLoggedInUser, tenantDomain); String applicationOwnerInRequest = application.getUsername(); if (StringUtils.isNotBlank(applicationOwnerInRequest)) { String tenantAwareAppOwnerInRequest = MultitenantUtils.getTenantAwareUsername(applicationOwnerInRequest); try { if (CarbonContext.getThreadLocalCarbonContext().getUserRealm(). getUserStoreManager().isExistingUser(tenantAwareAppOwnerInRequest)) { // Since the app owner sent in OAuthConsumerAppDTO is a valid one we set the appOwner to be // the one sent in the OAuthConsumerAppDTO. appOwner = buildAuthenticatedUser(tenantAwareAppOwnerInRequest, tenantDomain); } else { log.warn("OAuth application owner user name " + applicationOwnerInRequest + " does not exist in the user store. Using logged-in user name " + tenantAwareLoggedInUser + " as app owner name"); } } catch (UserStoreException e) { throw handleError("Error while retrieving the user store manager for user: " + applicationOwnerInRequest, e); } } return appOwner; } }
AuthenticatedUser loggedInUser = buildAuthenticatedUser(tenantAwareLoggedInUserName, tenantDomain);
String tenantDomain = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantDomain(); String tenantAwareLoggedInUserName = PrivilegedCarbonContext.getThreadLocalCarbonContext().getUsername(); AuthenticatedUser user = buildAuthenticatedUser(tenantAwareLoggedInUserName, tenantDomain);