Skip to content

Commit

Permalink
Address comments.
Browse files Browse the repository at this point in the history
  • Loading branch information
JeethJJ committed Oct 16, 2024
1 parent 390d2fe commit 9ab5dad
Show file tree
Hide file tree
Showing 8 changed files with 104 additions and 126 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ private ApplicationConstants() {
public static final String SYSTEM_APPLICATIONS_CONFIG_ELEMENT = "SystemApplications";
public static final String DEFAULT_APPLICATIONS_CONFIG_ELEMENT = "DefaultApplications";
public static final String APPLICATION_NAME_CONFIG_ELEMENT = "ApplicationName";
public static final String PORTAL_NAME_CONFIG_ELEMENT = "PortalName";
public static final String PORTAL_NAMES_CONFIG_ELEMENT = "SystemPortals.PortalName";

// Application Management Service Configurations.
public static final String ENABLE_APPLICATION_ROLE_VALIDATION_PROPERTY = "ApplicationMgt.EnableRoleValidation";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -466,6 +466,7 @@ public List<TrustedApp> getTrustedApps(PlatformType platformType) throws Identit
return new ArrayList<>();
}

@Deprecated
@Override
public ApplicationBasicInfo[] getApplicationBasicInfo(String tenantDomain, String username, String filter,
int offset, int limit)
Expand All @@ -474,14 +475,6 @@ public ApplicationBasicInfo[] getApplicationBasicInfo(String tenantDomain, Strin
return getApplicationBasicInfo(tenantDomain, username, filter, offset, limit, false);
}

@Override
public ApplicationBasicInfo[] getApplicationBasicInfo(String tenantDomain, String username, String filter,
int offset, int limit, Boolean excludeSystemPortals)
throws IdentityApplicationManagementException {

return new ApplicationBasicInfo[0];
}

/**
* Retrieve application basic information using the application name.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -556,6 +556,7 @@ public ApplicationBasicInfo[] getPaginatedApplicationBasicInfo(String tenantDoma
* @return An array of {@link ApplicationBasicInfo} instances within the limit.
* @throws IdentityApplicationManagementException Error in retrieving basic application information.
*/
@Deprecated
@Override
public ApplicationBasicInfo[] getApplicationBasicInfo(String tenantDomain, String username, String filter,
int offset, int limit)
Expand Down Expand Up @@ -690,6 +691,7 @@ public int getCountOfAllApplications(String tenantDomain, String username)
* @return int
* @throws IdentityApplicationManagementException
*/
@Deprecated
@Override
public int getCountOfApplications(String tenantDomain, String username, String filter) throws
IdentityApplicationManagementException {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,27 +94,32 @@ ApplicationBasicInfo[] getPaginatedApplicationBasicInfo(String tenantDomain, Str
* @param limit Counting value.
* @return An array of {@link ApplicationBasicInfo} instances matching the given filter within the given limit.
* @throws IdentityApplicationManagementException Error in retrieving basic application information.
* @Deprecated This is being deprecated as introducing excludeSystemPortals to exclude system portals in response
* @Deprecated This is being deprecated as introducing excludeSystemPortals to exclude system portals in response.
* use {@link ApplicationPaginationAndSearching#getApplicationBasicInfo(String, String, String, int, int, Boolean)}.
*/
@Deprecated
ApplicationBasicInfo[] getApplicationBasicInfo(String tenantDomain, String username, String filter, int offset,
int limit) throws IdentityApplicationManagementException;

/**
* Get all basic application information for a matching filter with pagination based on the offset and limit.
*
* @param tenantDomain Tenant Domain.
* @param username User name.
* @param filter Application name filter.
* @param offset Starting index of the count.
* @param limit Counting value.
* @param excludeSystemPortals Exclude system portals.
* @param tenantDomain Tenant Domain.
* @param username User name.
* @param filter Application name filter.
* @param offset Starting index of the count.
* @param limit Counting value.
* @param excludeSystemPortals Exclude system portals.
* @return An array of {@link ApplicationBasicInfo} instances matching the given filter within the given limit.
* @throws IdentityApplicationManagementException Error in retrieving basic application information.
*/
ApplicationBasicInfo[] getApplicationBasicInfo(String tenantDomain, String username, String filter, int offset,
int limit, Boolean excludeSystemPortals)
throws IdentityApplicationManagementException;
default ApplicationBasicInfo[] getApplicationBasicInfo(String tenantDomain, String username, String filter,
int offset,
int limit, Boolean excludeSystemPortals)
throws IdentityApplicationManagementException {

return new ApplicationBasicInfo[0];
}

/**
* Get count of all Application Basic Information.
Expand All @@ -138,20 +143,25 @@ int getCountOfAllApplications(String tenantDomain, String username)
* @Deprecated This is being deprecated as introducing excludeSystemPortals to exclude system portals in response.
* use {@link ApplicationPaginationAndSearching#getCountOfApplications(String, String, String, Boolean)}.
*/
@Deprecated
int getCountOfApplications(String tenantDomain, String username, String filter)
throws IdentityApplicationManagementException;

/**
* Get count of all basic application information for a matching filter.
*
* @param tenantDomain Tenant Domain.
* @param username User Name.
* @param filter Application name filter.
* @param excludeSystemPortals Exclude system portals.
* @param tenantDomain Tenant Domain.
* @param username User Name.
* @param filter Application name filter.
* @param excludeSystemPortals Exclude system portals.
* @return int Count of applications.
* @throws org.wso2.carbon.identity.application.common.IdentityApplicationManagementException
*/
int getCountOfApplications(String tenantDomain, String username, String filter, Boolean excludeSystemPortals)
throws IdentityApplicationManagementException;
default int getCountOfApplications(String tenantDomain, String username, String filter,
Boolean excludeSystemPortals)
throws IdentityApplicationManagementException {

return 0;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -49,19 +49,23 @@ ApplicationBasicInfo[] getAllPaginatedApplicationBasicInfo(int pageNumber) throw
* @Deprecated This is being deprecated as introducing excludeSystemPortals to exclude system portals in response.
* use {@link PaginatableFilterableApplicationDAO#getApplicationBasicInfo(int, int, Boolean)}.
*/
@Deprecated
ApplicationBasicInfo[] getApplicationBasicInfo(int offset, int limit) throws IdentityApplicationManagementException;

/**
* Get all the basic application information based on the offset and the limit.
*
* @param offset Starting index of the count.
* @param limit Count value.
* @param excludeSystemPortals Exclude system portals.
* @param offset Starting index of the count.
* @param limit Count value.
* @param excludeSystemPortals Exclude system portals.
* @return An array of {@link ApplicationBasicInfo} instances within the limit.
* @throws IdentityApplicationManagementException Error in retrieving basic application information.
*/
ApplicationBasicInfo[] getApplicationBasicInfo(int offset, int limit, Boolean excludeSystemPortals)
throws IdentityApplicationManagementException;
default ApplicationBasicInfo[] getApplicationBasicInfo(int offset, int limit, Boolean excludeSystemPortals)
throws IdentityApplicationManagementException {

return null;
}

/**
* Get all basic application information for a matching filter that falls under the given page number.
Expand All @@ -87,23 +91,27 @@ ApplicationBasicInfo[] getPaginatedApplicationBasicInfo(int pageNumber, String f
* @Deprecated This is being deprecated as introducing excludeSystemPortals to exclude system portals in response.
* use {@link PaginatableFilterableApplicationDAO#getApplicationBasicInfo(String, int, int, Boolean)}.
*/
@Deprecated
ApplicationBasicInfo[] getApplicationBasicInfo(String filter, int offset, int limit) throws
IdentityApplicationManagementException;

/**
* Get all basic application information for a matching filter based on the offset and the limit.
*
* @param filter Application name filter.
* @param offset Starting index of the count.
* @param limit Count value.
* @param excludeSystemPortals Exclude system portals
* @param filter Application name filter.
* @param offset Starting index of the count.
* @param limit Count value.
* @param excludeSystemPortals Exclude system portals
* @return An array of {@link ApplicationBasicInfo} instances matching the given filter within the given limit.
* @throws IdentityApplicationManagementException Error in retrieving basic application information based on the
* given filter within the given limit.
*
*/
ApplicationBasicInfo[] getApplicationBasicInfo(String filter, int offset, int limit, Boolean excludeSystemPortals)
throws IdentityApplicationManagementException;
default ApplicationBasicInfo[] getApplicationBasicInfo(String filter, int offset, int limit,
Boolean excludeSystemPortals)
throws IdentityApplicationManagementException {

return null;
}

/**
* Get count of applications.
Expand All @@ -122,18 +130,22 @@ ApplicationBasicInfo[] getApplicationBasicInfo(String filter, int offset, int li
* @Deprecated This is being deprecated as introducing excludeSystemPortals to exclude system portals in response.
* use {@link PaginatableFilterableApplicationDAO#getCountOfApplications(String, Boolean)}.
*/
@Deprecated
int getCountOfApplications(String filter) throws IdentityApplicationManagementException;

/**
* Get count of applications matching the filter.
*
* @param filter application search filter
* @param excludeSystemPortals Exclude system portals
* @param filter application search filter
* @param excludeSystemPortals Exclude system portals
* @return matched application count in a int value
* @throws IdentityApplicationManagementException
*/
int getCountOfApplications(String filter, Boolean excludeSystemPortals) throws
IdentityApplicationManagementException;
default int getCountOfApplications(String filter, Boolean excludeSystemPortals) throws
IdentityApplicationManagementException {

return 0;
}

/**
* Get all basic application information for a matching filter.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@

package org.wso2.carbon.identity.application.mgt.dao.impl;

import org.apache.axiom.om.OMElement;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.ArrayUtils;
Expand Down Expand Up @@ -87,7 +86,6 @@
import org.wso2.carbon.identity.core.model.FilterTreeBuilder;
import org.wso2.carbon.identity.core.model.Node;
import org.wso2.carbon.identity.core.model.OperationNode;
import org.wso2.carbon.identity.core.util.IdentityConfigParser;
import org.wso2.carbon.identity.core.util.IdentityDatabaseUtil;
import org.wso2.carbon.identity.core.util.IdentityTenantUtil;
import org.wso2.carbon.identity.core.util.IdentityUtil;
Expand Down Expand Up @@ -124,7 +122,6 @@
import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
Expand Down Expand Up @@ -177,8 +174,7 @@
import static org.wso2.carbon.identity.application.common.util.IdentityApplicationConstants.TRUSTED_APP_CONSENT_GRANTED_SP_PROPERTY_NAME;
import static org.wso2.carbon.identity.application.mgt.ApplicationConstants.LOCAL_SP;
import static org.wso2.carbon.identity.application.mgt.ApplicationConstants.ORACLE;
import static org.wso2.carbon.identity.application.mgt.ApplicationConstants.PORTAL_NAME_CONFIG_ELEMENT;
import static org.wso2.carbon.identity.application.mgt.ApplicationConstants.SYSTEM_PORTALS;
import static org.wso2.carbon.identity.application.mgt.ApplicationConstants.PORTAL_NAMES_CONFIG_ELEMENT;
import static org.wso2.carbon.identity.application.mgt.ApplicationConstants.UNION_SEPARATOR;
import static org.wso2.carbon.identity.application.mgt.ApplicationMgtUtil.getConsoleAccessUrlFromServerConfig;
import static org.wso2.carbon.identity.application.mgt.ApplicationMgtUtil.getMyAccountAccessUrlFromServerConfig;
Expand Down Expand Up @@ -2075,6 +2071,7 @@ public ApplicationBasicInfo[] getPaginatedApplicationBasicInfo(int pageNumber, S
return getApplicationBasicInfo(filter, offset, limit);
}

@Deprecated
@Override
public ApplicationBasicInfo[] getApplicationBasicInfo(String filter, int offset, int limit)
throws IdentityApplicationManagementException {
Expand Down Expand Up @@ -2194,51 +2191,14 @@ private String populateSystemPortalsExcludeQuery(Boolean excludeSystemPortals, B
String excludeSystemPortalsQuery = useTableNameInQuery ?
ApplicationMgtDBQueries.EXCLUDE_SYSTEM_PORTALS_BY_TABLE_NAME_AND_NAME :
ApplicationMgtDBQueries.EXCLUDE_SYSTEM_PORTALS_BY_NAME;
Set<String> systemPortals = getSystemPortalsFromConfiguration(SYSTEM_PORTALS);
return systemPortals.isEmpty() ? "" :
List<String> systemPortals = IdentityUtil.getPropertyAsList(PORTAL_NAMES_CONFIG_ELEMENT);
return systemPortals.isEmpty() ? StringUtils.EMPTY :
String.format(excludeSystemPortalsQuery, systemPortals.stream()
.map(s -> "'" + s + "'")
.collect(Collectors.joining(", ")));
} else {
return "";
}
}

/**
* Get system portals from configuration.
*
* @param parentElement Configuration tag name.
* @return Set of system portals from default.json.
*/
private static Set<String> getSystemPortalsFromConfiguration(String parentElement) {

IdentityConfigParser configParser = IdentityConfigParser.getInstance();
OMElement systemApplicationsConfig = configParser.getConfigElement(parentElement);
if (systemApplicationsConfig == null) {
if (log.isDebugEnabled()) {
log.debug("'" + parentElement + "' config not found.");
}
return Collections.emptySet();
}

Iterator applicationIdentifierIterator = systemApplicationsConfig
.getChildrenWithLocalName(PORTAL_NAME_CONFIG_ELEMENT);
if (applicationIdentifierIterator == null) {
if (log.isDebugEnabled()) {
log.debug("'" + PORTAL_NAME_CONFIG_ELEMENT + "' config not found.");
}
return Collections.emptySet();
}

Set<String> applications = new HashSet<>();
while (applicationIdentifierIterator.hasNext()) {
OMElement applicationIdentifierConfig = (OMElement) applicationIdentifierIterator.next();
String applicationName = applicationIdentifierConfig.getText();
if (StringUtils.isNotBlank(applicationName)) {
applications.add(applicationName.trim());
}
return StringUtils.EMPTY;
}
return applications;
}

/**
Expand Down Expand Up @@ -4033,6 +3993,7 @@ private String generateFilterValueForBackend(String searchOperation, String sear
* @return
* @throws IdentityApplicationManagementException
*/
@Deprecated
@Override
public int getCountOfApplications(String filter) throws IdentityApplicationManagementException {

Expand Down Expand Up @@ -4206,6 +4167,7 @@ public ApplicationBasicInfo[] getAllPaginatedApplicationBasicInfo(int pageNumber
return getApplicationBasicInfo(offset, limit);
}

@Deprecated
@Override
public ApplicationBasicInfo[] getApplicationBasicInfo(int offset, int limit)
throws IdentityApplicationManagementException {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -289,6 +289,7 @@ public ApplicationBasicInfo[] getAllPaginatedApplicationBasicInfo(int pageNumber
}
}

@Deprecated
@Override
public ApplicationBasicInfo[] getApplicationBasicInfo(int offset, int limit)
throws IdentityApplicationManagementException {
Expand Down Expand Up @@ -336,9 +337,11 @@ public ApplicationBasicInfo[] getPaginatedApplicationBasicInfo(int pageNumber, S
}
}

@Deprecated
@Override
public ApplicationBasicInfo[] getApplicationBasicInfo(String filter, int offset, int limit)
throws IdentityApplicationManagementException {

return getApplicationBasicInfo(filter, offset, limit, false);
}

Expand Down Expand Up @@ -367,6 +370,7 @@ public int getCountOfAllApplications() throws IdentityApplicationManagementExcep
}
}

@Deprecated
public int getCountOfApplications(String filter) throws IdentityApplicationManagementException {

return getCountOfApplications(filter, false);
Expand Down
Loading

0 comments on commit 9ab5dad

Please sign in to comment.