From 578266a41994566b516f2725fa306ee67cf5e54c Mon Sep 17 00:00:00 2001 From: navodzoysa Date: Mon, 5 Dec 2022 18:48:41 +0530 Subject: [PATCH 01/10] Fix error when deleting tags/categories with special characters --- .../ApplicationManagementPublisherAdminAPI.java | 14 +++++++------- ...ApplicationManagementPublisherAdminAPIImpl.java | 8 ++++---- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/admin/ApplicationManagementPublisherAdminAPI.java b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/admin/ApplicationManagementPublisherAdminAPI.java index c3db07a21b..37554f6634 100644 --- a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/admin/ApplicationManagementPublisherAdminAPI.java +++ b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/admin/ApplicationManagementPublisherAdminAPI.java @@ -157,12 +157,12 @@ public interface ApplicationManagementPublisherAdminAPI { @PathParam("appId") int applicatioId); @DELETE - @Path("/tags/{tagName}") + @Path("/tags") @Produces(MediaType.APPLICATION_JSON) @ApiOperation( consumes = MediaType.APPLICATION_JSON, produces = MediaType.APPLICATION_JSON, - httpMethod = "GET", + httpMethod = "DELETE", value = "Delete application tag", notes = "This will delete application tag", tags = "Application Management", @@ -185,10 +185,10 @@ public interface ApplicationManagementPublisherAdminAPI { }) Response deleteTag( @ApiParam( - name = "tagName", + name = "tag-name", value = "Tag Name", required = true) - @PathParam("tagName") String tagName + @QueryParam("tag-name") String tagName ); @POST @@ -273,7 +273,7 @@ public interface ApplicationManagementPublisherAdminAPI { ); @DELETE - @Path("/categories/{categoryName}") + @Path("/categories") @Produces(MediaType.APPLICATION_JSON) @ApiOperation( consumes = MediaType.APPLICATION_JSON, @@ -301,10 +301,10 @@ public interface ApplicationManagementPublisherAdminAPI { }) Response deleteCategory( @ApiParam( - name = "categoryName", + name = "category-name", value = "Category Name", required = true) - @PathParam("categoryName") String categoryName + @QueryParam("category-name") String categoryName ); @PUT diff --git a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/admin/ApplicationManagementPublisherAdminAPIImpl.java b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/admin/ApplicationManagementPublisherAdminAPIImpl.java index 9799ab9a7f..9dae875ca8 100644 --- a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/admin/ApplicationManagementPublisherAdminAPIImpl.java +++ b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/admin/ApplicationManagementPublisherAdminAPIImpl.java @@ -104,9 +104,9 @@ public class ApplicationManagementPublisherAdminAPIImpl implements ApplicationMa @DELETE @Override @Consumes(MediaType.WILDCARD) - @Path("/tags/{tagName}") + @Path("/tags") public Response deleteTag( - @PathParam("tagName") String tagName) { + @QueryParam("tag-name") String tagName) { ApplicationManager applicationManager = APIUtil.getApplicationManager(); try { applicationManager.deleteTag(tagName); @@ -169,9 +169,9 @@ public class ApplicationManagementPublisherAdminAPIImpl implements ApplicationMa @DELETE @Override @Consumes(MediaType.WILDCARD) - @Path("/categories/{categoryName}") + @Path("/categories") public Response deleteCategory( - @PathParam("categoryName") String categoryName) { + @QueryParam("category-name") String categoryName) { ApplicationManager applicationManager = APIUtil.getApplicationManager(); try { applicationManager.deleteCategory(categoryName); From a367cd6b359f1310000c845c01aadd677ab5d9ce Mon Sep 17 00:00:00 2001 From: navodzoysa Date: Mon, 5 Dec 2022 13:11:37 +0530 Subject: [PATCH 02/10] Fix duplicate group and role error handling responses --- .../impl/RoleManagementServiceImpl.java | 27 +++++++++++++------ .../GroupManagementProviderServiceImpl.java | 14 ++++++---- .../api/service/TraccarClientFactory.java | 2 +- .../api/service/addons/TraccarClientImpl.java | 2 +- 4 files changed, 30 insertions(+), 15 deletions(-) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/RoleManagementServiceImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/RoleManagementServiceImpl.java index 7bedb0f890..af05da7991 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/RoleManagementServiceImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/RoleManagementServiceImpl.java @@ -54,6 +54,7 @@ import org.wso2.carbon.registry.core.session.UserRegistry; import org.wso2.carbon.registry.resource.services.utils.ChangeRolePermissionsUtil; import org.wso2.carbon.user.api.*; import org.wso2.carbon.user.core.common.AbstractUserStoreManager; +import org.wso2.carbon.user.core.constants.UserCoreErrorConstants.ErrorMessages; import org.wso2.carbon.user.mgt.UserRealmProxy; import org.wso2.carbon.user.mgt.common.UIPermissionNode; import org.wso2.carbon.user.mgt.common.UserAdminException; @@ -316,21 +317,31 @@ public class RoleManagementServiceImpl implements RoleManagementService { entity("Role '" + roleInfo.getRoleName() + "' has " + "successfully been" + " added").build(); } catch (UserStoreException e) { - String msg = "Error occurred while adding role '" + roleInfo.getRoleName() + "'"; - log.error(msg, e); - return Response.serverError().entity( - new ErrorResponse.ErrorResponseBuilder().setMessage(msg).build()).build(); + String errorCode = ""; + String errorMessage = e.getMessage(); + if (errorMessage != null && !errorMessage.isEmpty() && + errorMessage.contains(ErrorMessages.ERROR_CODE_ROLE_ALREADY_EXISTS.getCode())) { + errorCode = e.getMessage().split("-")[0].trim(); + } + if (ErrorMessages.ERROR_CODE_ROLE_ALREADY_EXISTS.getCode().equals(errorCode)) { + String roleName = roleInfo.getRoleName().split("/")[1]; + String msg = "Role already exists with name " + roleName + "."; + log.warn(msg); + return Response.status(Response.Status.CONFLICT).entity(msg).build(); + } else { + String msg = "Error occurred while adding role '" + roleInfo.getRoleName() + "'"; + log.error(msg, e); + return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); + } } catch (URISyntaxException e) { String msg = "Error occurred while composing the URI at which the information of the newly created role " + "can be retrieved"; log.error(msg, e); - return Response.serverError().entity( - new ErrorResponse.ErrorResponseBuilder().setMessage(msg).build()).build(); + return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); } catch (UnsupportedEncodingException e) { String msg = "Error occurred while encoding role name"; log.error(msg, e); - return Response.serverError().entity( - new ErrorResponse.ErrorResponseBuilder().setMessage(msg).build()).build(); + return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/GroupManagementProviderServiceImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/GroupManagementProviderServiceImpl.java index 66a8ba9362..aed9bc8782 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/GroupManagementProviderServiceImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/GroupManagementProviderServiceImpl.java @@ -47,6 +47,7 @@ import org.wso2.carbon.device.mgt.common.exceptions.DeviceManagementException; import org.wso2.carbon.device.mgt.common.exceptions.DeviceNotFoundException; import org.wso2.carbon.device.mgt.common.GroupPaginationRequest; import org.wso2.carbon.device.mgt.common.PaginationResult; +import org.wso2.carbon.device.mgt.common.exceptions.TrackerAlreadyExistException; import org.wso2.carbon.device.mgt.common.exceptions.TransactionManagementException; import org.wso2.carbon.device.mgt.common.group.mgt.DeviceGroup; import org.wso2.carbon.device.mgt.common.group.mgt.DeviceGroupConstants; @@ -140,12 +141,15 @@ public class GroupManagementProviderServiceImpl implements GroupManagementProvid if (HttpReportingUtil.isTrackerEnabled()){ existingGroup = this.groupDAO.getGroup(deviceGroup.getName(), tenantId); int groupId = existingGroup.getGroupId(); - DeviceManagementDataHolder.getInstance().getDeviceAPIClientService() - .addGroup(deviceGroup, groupId, tenantId); + try { + DeviceManagementDataHolder.getInstance().getDeviceAPIClientService() + .addGroup(deviceGroup, groupId, tenantId); + } catch (TrackerAlreadyExistException e) { + throw new GroupAlreadyExistException("Group exist with name " + deviceGroup.getName()); + } + } else { + throw new GroupAlreadyExistException("Group exist with name " + deviceGroup.getName()); } - // add a group if not exist in traccar starts - - throw new GroupAlreadyExistException("Group exist with name " + deviceGroup.getName()); } } catch (GroupManagementDAOException e) { GroupManagementDAOFactory.rollbackTransaction(); diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/traccar/api/service/TraccarClientFactory.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/traccar/api/service/TraccarClientFactory.java index bffa6f5e85..2a94596230 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/traccar/api/service/TraccarClientFactory.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/traccar/api/service/TraccarClientFactory.java @@ -648,7 +648,7 @@ public class TraccarClientFactory { TrackerManagementDAOFactory.openConnection(); trackerGroupInfo = trackerDAO.getTrackerGroup(groupId, tenantId); if (trackerGroupInfo != null) { - String msg = "The group already exit"; + String msg = "The group already exists in Traccar."; log.error(msg); throw new TrackerAlreadyExistException(msg); } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/traccar/api/service/addons/TraccarClientImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/traccar/api/service/addons/TraccarClientImpl.java index 0e9264a325..efa13ee6a7 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/traccar/api/service/addons/TraccarClientImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/traccar/api/service/addons/TraccarClientImpl.java @@ -555,7 +555,7 @@ public class TraccarClientImpl implements TraccarClient { TrackerManagementDAOFactory.openConnection(); trackerGroupInfo = trackerDAO.getTrackerGroup(groupId, tenantId); if (trackerGroupInfo != null) { - String msg = "The group already exit"; + String msg = "The group already exists in Traccar."; log.error(msg); throw new TrackerAlreadyExistException(msg); } From 71c4e3b4d072cabd7e6a1cb6945455a3664a644b Mon Sep 17 00:00:00 2001 From: Kavin Prathaban Date: Mon, 12 Dec 2022 08:17:48 +0000 Subject: [PATCH 03/10] Add fix for error on searching app with AppType with ALL filter Co-authored-by: Kavin Prathaban Co-committed-by: Kavin Prathaban --- .../core/dao/impl/application/GenericApplicationDAOImpl.java | 5 +++-- .../core/dao/impl/application/OracleApplicationDAOImpl.java | 5 +++-- .../dao/impl/application/SQLServerApplicationDAOImpl.java | 5 +++-- .../application/mgt/core/impl/ApplicationManagerImpl.java | 2 +- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/GenericApplicationDAOImpl.java b/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/GenericApplicationDAOImpl.java index 5b07d0a049..362c9086d7 100644 --- a/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/GenericApplicationDAOImpl.java +++ b/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/GenericApplicationDAOImpl.java @@ -31,6 +31,7 @@ import io.entgra.application.mgt.core.util.DAOUtil; import io.entgra.application.mgt.core.dao.impl.AbstractDAOImpl; import io.entgra.application.mgt.core.exception.ApplicationManagementDAOException; import io.entgra.application.mgt.core.exception.UnexpectedServerErrorException; +import io.entgra.application.mgt.core.util.Constants; import java.sql.Connection; import java.sql.PreparedStatement; @@ -149,7 +150,7 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic } sql += "WHERE AP_APP.TENANT_ID = ? "; - if (StringUtils.isNotEmpty(filter.getAppType())) { + if (StringUtils.isNotEmpty(filter.getAppType()) && !Constants.ALL.equalsIgnoreCase(filter.getAppType())) { sql += "AND AP_APP.TYPE = ? "; } if (StringUtils.isNotEmpty(filter.getAppName())) { @@ -204,7 +205,7 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic try (PreparedStatement stmt = conn.prepareStatement(sql)) { int paramIndex = 1; stmt.setInt(paramIndex++, tenantId); - if (StringUtils.isNotEmpty(filter.getAppType())) { + if (StringUtils.isNotEmpty(filter.getAppType()) && !Constants.ALL.equalsIgnoreCase(filter.getAppType())) { stmt.setString(paramIndex++, filter.getAppType()); } if (StringUtils.isNotEmpty(filter.getAppName())) { diff --git a/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/OracleApplicationDAOImpl.java b/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/OracleApplicationDAOImpl.java index 6f4c31f1b9..58e85560a7 100644 --- a/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/OracleApplicationDAOImpl.java +++ b/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/OracleApplicationDAOImpl.java @@ -26,6 +26,7 @@ import io.entgra.application.mgt.common.dto.ApplicationDTO; import io.entgra.application.mgt.common.exception.DBConnectionException; import io.entgra.application.mgt.core.exception.ApplicationManagementDAOException; import io.entgra.application.mgt.core.util.DAOUtil; +import io.entgra.application.mgt.core.util.Constants; import java.sql.Connection; import java.sql.PreparedStatement; @@ -94,7 +95,7 @@ public class OracleApplicationDAOImpl extends GenericApplicationDAOImpl { || StringUtils.isNotEmpty(filter.getAppReleaseType())) { sql += "LEFT JOIN AP_APP_RELEASE ON AP_APP.ID = AP_APP_RELEASE.AP_APP_ID "; } - if (StringUtils.isNotEmpty(filter.getAppType())) { + if (StringUtils.isNotEmpty(filter.getAppType()) && !Constants.ALL.equalsIgnoreCase(filter.getAppType())) { sql += "AND AP_APP.TYPE = ? "; } if (StringUtils.isNotEmpty(filter.getAppName())) { @@ -145,7 +146,7 @@ public class OracleApplicationDAOImpl extends GenericApplicationDAOImpl { Connection conn = this.getDBConnection(); try (PreparedStatement stmt = conn.prepareStatement(sql)) { int paramIndex = 1; - if (StringUtils.isNotEmpty(filter.getAppType())) { + if (StringUtils.isNotEmpty(filter.getAppType()) && !Constants.ALL.equalsIgnoreCase(filter.getAppType())) { stmt.setString(paramIndex++, filter.getAppType()); } if (StringUtils.isNotEmpty(filter.getAppName())) { diff --git a/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/SQLServerApplicationDAOImpl.java b/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/SQLServerApplicationDAOImpl.java index 0ddbe3c333..9ad0b9d4c0 100644 --- a/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/SQLServerApplicationDAOImpl.java +++ b/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/dao/impl/application/SQLServerApplicationDAOImpl.java @@ -25,6 +25,7 @@ import io.entgra.application.mgt.common.dto.ApplicationDTO; import io.entgra.application.mgt.common.exception.DBConnectionException; import io.entgra.application.mgt.core.exception.ApplicationManagementDAOException; import io.entgra.application.mgt.core.util.DAOUtil; +import io.entgra.application.mgt.core.util.Constants; import java.sql.Connection; import java.sql.PreparedStatement; @@ -93,7 +94,7 @@ public class SQLServerApplicationDAOImpl extends GenericApplicationDAOImpl { || StringUtils.isNotEmpty(filter.getAppReleaseType())) { sql += "LEFT JOIN AP_APP_RELEASE ON AP_APP.ID = AP_APP_RELEASE.AP_APP_ID "; } - if (StringUtils.isNotEmpty(filter.getAppType())) { + if (StringUtils.isNotEmpty(filter.getAppType()) && !Constants.ALL.equalsIgnoreCase(filter.getAppType())) { sql += "AND AP_APP.TYPE = ? "; } if (StringUtils.isNotEmpty(filter.getAppName())) { @@ -144,7 +145,7 @@ public class SQLServerApplicationDAOImpl extends GenericApplicationDAOImpl { Connection conn = this.getDBConnection(); try (PreparedStatement stmt = conn.prepareStatement(sql)) { int paramIndex = 1; - if (StringUtils.isNotEmpty(filter.getAppType())) { + if (StringUtils.isNotEmpty(filter.getAppType()) && !Constants.ALL.equalsIgnoreCase(filter.getAppType())) { stmt.setString(paramIndex++, filter.getAppType()); } if (StringUtils.isNotEmpty(filter.getAppName())) { diff --git a/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/impl/ApplicationManagerImpl.java b/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/impl/ApplicationManagerImpl.java index 26f97f0caf..157d73241d 100644 --- a/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/impl/ApplicationManagerImpl.java +++ b/components/application-mgt/io.entgra.application.mgt.core/src/main/java/io/entgra/application/mgt/core/impl/ApplicationManagerImpl.java @@ -2932,7 +2932,7 @@ public class ApplicationManagerImpl implements ApplicationManager { if (!StringUtils.isEmpty(appType)) { boolean isValidAppType = false; for (ApplicationType applicationType : ApplicationType.values()) { - if (applicationType.toString().equalsIgnoreCase(appType)) { + if (applicationType.toString().equalsIgnoreCase(appType) || Constants.ALL.equalsIgnoreCase(appType)) { isValidAppType = true; break; } From 458ab342695267cc62e5309d5c361a0a01b2d465 Mon Sep 17 00:00:00 2001 From: Amalka Subasinghe Date: Mon, 12 Dec 2022 11:39:01 +0000 Subject: [PATCH 04/10] updated EntgraLogger methods (#30) Co-authored-by: Amalka Subasinghe Co-authored-by: Pahansith Gunathilake Reviewed-on: https://repository.entgra.net/community/device-mgt-core/pulls/30 Co-authored-by: Amalka Subasinghe Co-committed-by: Amalka Subasinghe --- .../pom.xml | 2 +- .../extensions/logger/spi/EntgraLogger.java | 54 +++++-------------- 2 files changed, 14 insertions(+), 42 deletions(-) diff --git a/components/device-mgt-extensions/io.entgra.device.mgt.extensions.logger/pom.xml b/components/device-mgt-extensions/io.entgra.device.mgt.extensions.logger/pom.xml index d340500b82..fc57038041 100644 --- a/components/device-mgt-extensions/io.entgra.device.mgt.extensions.logger/pom.xml +++ b/components/device-mgt-extensions/io.entgra.device.mgt.extensions.logger/pom.xml @@ -51,7 +51,7 @@ Entgra Logger Bundle io.entgra.device.mgt.extensions.logger, - org.apache.commons.logging;version="[1.2,2) + org.apache.commons.logging io.entgra.device.mgt.extensions.logger.* diff --git a/components/device-mgt-extensions/io.entgra.device.mgt.extensions.logger/src/main/java/io/entgra/device/mgt/extensions/logger/spi/EntgraLogger.java b/components/device-mgt-extensions/io.entgra.device.mgt.extensions.logger/src/main/java/io/entgra/device/mgt/extensions/logger/spi/EntgraLogger.java index ba34e1552f..c959eb4885 100644 --- a/components/device-mgt-extensions/io.entgra.device.mgt.extensions.logger/src/main/java/io/entgra/device/mgt/extensions/logger/spi/EntgraLogger.java +++ b/components/device-mgt-extensions/io.entgra.device.mgt.extensions.logger/src/main/java/io/entgra/device/mgt/extensions/logger/spi/EntgraLogger.java @@ -24,57 +24,29 @@ import org.apache.commons.logging.Log; public interface EntgraLogger extends Log { - void info(String message); + void info(Object object, LogContext logContext); + + void info(Object object, Throwable t, LogContext logContext); - void info(String message, Throwable t); + void debug(Object object, LogContext logContext); - void info(String message, LogContext logContext); + void debug(Object object, Throwable t, LogContext logContext); - void debug(String message); + void error(Object object, LogContext logContext); - void debug(String message, Throwable t); + void error(Object object, Throwable t, LogContext logContext); - void debug(String message, LogContext logContext); + void fatal(Object object, LogContext logContext); - void error(String message); + void fatal(Object object, Throwable t, LogContext logContext); - void error(String message, Throwable t); + void trace(Object object, LogContext logContext); - void error(String message, LogContext logContext); + void trace(Object object, Throwable t, LogContext logContext); - void error(String message, Throwable t, LogContext logContext); + void warn(Object object, LogContext logContext); - void warn(String message); - - void warn(String message, Throwable t); - - void warn(String message, LogContext logContext); - - void warn(String message, Throwable t, LogContext logContext); - - void trace(String message); - - void trace(String message, Throwable t); - - void trace(String message, LogContext logContext); - - void fatal(String message); - - void fatal(String message, Throwable t); - - void fatal(String message, LogContext logContext); - - boolean isDebugEnabled(); - - boolean isErrorEnabled(); - - boolean isFatalEnabled(); - - boolean isInfoEnabled(); - - boolean isTraceEnabled(); - - boolean isWarnEnabled(); + void warn(Object object, Throwable t, LogContext logContext); void clearLogContext(); From 9a5322845f920225291435b7bbed5ce71778fb9b Mon Sep 17 00:00:00 2001 From: shamalka Date: Tue, 13 Dec 2022 10:54:20 +0530 Subject: [PATCH 05/10] Change otp api to return token --- .../carbon/device/mgt/common/spi/OTPManagementService.java | 2 +- .../mgt/core/otp/mgt/service/OTPManagementServiceImpl.java | 3 ++- .../io/entgra/ui/request/interceptor/OTPInvokerHandler.java | 2 +- .../authenticator/framework/WebappAuthenticationValve.java | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/spi/OTPManagementService.java b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/spi/OTPManagementService.java index f63a95ca32..6349407dc1 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/spi/OTPManagementService.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/spi/OTPManagementService.java @@ -34,7 +34,7 @@ public interface OTPManagementService { * @throws OTPManagementException if error occurs while creating OTP token and storing tenant details. * @throws BadRequestException if found and incompatible payload to create OTP token. */ - void sendUserVerifyingMail(OTPWrapper otpWrapper) throws OTPManagementException, DeviceManagementException; + String sendUserVerifyingMail(OTPWrapper otpWrapper) throws OTPManagementException, DeviceManagementException; /** * Check the validity of the OTP diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/otp/mgt/service/OTPManagementServiceImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/otp/mgt/service/OTPManagementServiceImpl.java index c80502ec4f..150795ccb8 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/otp/mgt/service/OTPManagementServiceImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/otp/mgt/service/OTPManagementServiceImpl.java @@ -78,7 +78,7 @@ public class OTPManagementServiceImpl implements OTPManagementService { } @Override - public void sendUserVerifyingMail(OTPWrapper otpWrapper) throws OTPManagementException, DeviceManagementException { + public String sendUserVerifyingMail(OTPWrapper otpWrapper) throws OTPManagementException, DeviceManagementException { Tenant tenant = validateTenantCreatingDetails(otpWrapper); OneTimePinDTO oneTimePinDTO = createOneTimePin(otpWrapper.getEmail(), otpWrapper.getEmailType(), otpWrapper.getUsername(), tenant, -1234); @@ -90,6 +90,7 @@ public class OTPManagementServiceImpl implements OTPManagementService { props.setProperty("otp-token", oneTimePinDTO.getOtpToken()); sendMail(props, tenant.getEmail(), DeviceManagementConstants.EmailAttributes.USER_VERIFY_TEMPLATE); ConnectionManagerUtil.commitDBTransaction(); + return oneTimePinDTO.getOtpToken(); } catch (TransactionManagementException e) { String msg = "Error occurred while disabling AutoCommit."; log.error(msg, e); diff --git a/components/ui-request-interceptor/io.entgra.ui.request.interceptor/src/main/java/io/entgra/ui/request/interceptor/OTPInvokerHandler.java b/components/ui-request-interceptor/io.entgra.ui.request.interceptor/src/main/java/io/entgra/ui/request/interceptor/OTPInvokerHandler.java index 44dbe7882e..440a02f98e 100644 --- a/components/ui-request-interceptor/io.entgra.ui.request.interceptor/src/main/java/io/entgra/ui/request/interceptor/OTPInvokerHandler.java +++ b/components/ui-request-interceptor/io.entgra.ui.request.interceptor/src/main/java/io/entgra/ui/request/interceptor/OTPInvokerHandler.java @@ -166,7 +166,7 @@ public class OTPInvokerHandler extends HttpServlet { throws IOException { String schema = req.getScheme(); apiEndpoint = schema + HandlerConstants.SCHEME_SEPARATOR + System.getProperty(HandlerConstants.IOT_GW_HOST_ENV_VAR) - + HandlerConstants.COLON + HandlerUtil.getGatewayPort(schema); + + HandlerConstants.COLON + HandlerUtil.getCorePort(schema); if (StringUtils.isBlank(req.getHeader(HandlerConstants.OTP_HEADER))) { log.error("Unauthorized, Please provide OTP token."); diff --git a/components/webapp-authenticator-framework/org.wso2.carbon.webapp.authenticator.framework/src/main/java/org/wso2/carbon/webapp/authenticator/framework/WebappAuthenticationValve.java b/components/webapp-authenticator-framework/org.wso2.carbon.webapp.authenticator.framework/src/main/java/org/wso2/carbon/webapp/authenticator/framework/WebappAuthenticationValve.java index 3864954fe9..58f35fab19 100644 --- a/components/webapp-authenticator-framework/org.wso2.carbon.webapp.authenticator.framework/src/main/java/org/wso2/carbon/webapp/authenticator/framework/WebappAuthenticationValve.java +++ b/components/webapp-authenticator-framework/org.wso2.carbon.webapp.authenticator.framework/src/main/java/org/wso2/carbon/webapp/authenticator/framework/WebappAuthenticationValve.java @@ -315,4 +315,4 @@ public class WebappAuthenticationValve extends CarbonTomcatValve { break; } } -} \ No newline at end of file +} From 0712cd744a655687efdc77ace124339a647e1447 Mon Sep 17 00:00:00 2001 From: shamalka Date: Tue, 13 Dec 2022 13:51:32 +0530 Subject: [PATCH 06/10] Remove unwanted lines --- .../core/otp/mgt/service/OTPManagementServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/otp/mgt/service/OTPManagementServiceImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/otp/mgt/service/OTPManagementServiceImpl.java index 150795ccb8..985fe76486 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/otp/mgt/service/OTPManagementServiceImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/otp/mgt/service/OTPManagementServiceImpl.java @@ -85,10 +85,10 @@ public class OTPManagementServiceImpl implements OTPManagementService { try { ConnectionManagerUtil.beginDBTransaction(); this.otpManagementDAO.addOTPData(Collections.singletonList(oneTimePinDTO)); - Properties props = new Properties(); - props.setProperty("first-name", tenant.getAdminFirstName()); - props.setProperty("otp-token", oneTimePinDTO.getOtpToken()); - sendMail(props, tenant.getEmail(), DeviceManagementConstants.EmailAttributes.USER_VERIFY_TEMPLATE); +// Properties props = new Properties(); +// props.setProperty("first-name", tenant.getAdminFirstName()); +// props.setProperty("otp-token", oneTimePinDTO.getOtpToken()); +// sendMail(props, tenant.getEmail(), DeviceManagementConstants.EmailAttributes.USER_VERIFY_TEMPLATE); ConnectionManagerUtil.commitDBTransaction(); return oneTimePinDTO.getOtpToken(); } catch (TransactionManagementException e) { From e4bc9f87f89a8de470484a09f1ec5b2a737539c5 Mon Sep 17 00:00:00 2001 From: ThilinaPremachandra Date: Thu, 15 Dec 2022 01:05:07 +0530 Subject: [PATCH 07/10] fixed the validation issue --- .../impl/util/RequestValidationUtil.java | 13 ++++++++++++- .../impl/util/RequestValidationUtil.java | 12 +++++++++++- .../dao/util/DeviceManagementDAOUtil.java | 19 +++++++++++++++++++ 3 files changed, 42 insertions(+), 2 deletions(-) diff --git a/components/application-mgt/io.entgra.application.mgt.store.api/src/main/java/io/entgra/application/mgt/store/api/services/impl/util/RequestValidationUtil.java b/components/application-mgt/io.entgra.application.mgt.store.api/src/main/java/io/entgra/application/mgt/store/api/services/impl/util/RequestValidationUtil.java index 642107afc1..d36c0e2512 100644 --- a/components/application-mgt/io.entgra.application.mgt.store.api/src/main/java/io/entgra/application/mgt/store/api/services/impl/util/RequestValidationUtil.java +++ b/components/application-mgt/io.entgra.application.mgt.store.api/src/main/java/io/entgra/application/mgt/store/api/services/impl/util/RequestValidationUtil.java @@ -50,11 +50,22 @@ public class RequestValidationUtil { case "REMOVED": case "BLOCKED": case "CREATED": + case "CONFIGURED": + case "READY_TO_CONNECT": + case "RETURN_PENDING": + case "RETURNED": + case "DEFECTIVE": + case "WARRANTY_PENDING": + case "WARRANTY_SENT": + case "WARRANTY_REPLACED": + case "ASSIGNED": break; default: String msg = "Invalid enrollment status type: " + status + ". \nValid status types " + "are ACTIVE | INACTIVE | UNCLAIMED | UNREACHABLE | SUSPENDED | " + - "DISENROLLMENT_REQUESTED | REMOVED | BLOCKED | CREATED"; + "DISENROLLMENT_REQUESTED | REMOVED | BLOCKED | CREATED | CONFIGURED | READY_TO_CONNECT | " + + "RETURN_PENDING | RETURNED | DEFECTIVE | WARRANTY_PENDING | WARRANTY_SENT | " + + "WARRANTY_REPLACED | ASSIGNED |"; log.error(msg); throw new BadRequestException(msg); } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java index 1308dfa970..b41d39158b 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java @@ -153,11 +153,21 @@ public class RequestValidationUtil { case "REMOVED": case "BLOCKED": case "CREATED": + case "CONFIGURED": + case "READY_TO_CONNECT": + case "RETURN_PENDING": + case "RETURNED": + case "DEFECTIVE": + case "WARRANTY_PENDING": + case "WARRANTY_SENT": + case "WARRANTY_REPLACED": + case "ASSIGNED": break; default: String msg = "Invalid enrollment status type: " + status + ". \nValid status types are " + "ACTIVE | INACTIVE | UNCLAIMED | UNREACHABLE | SUSPENDED | " + - "DISENROLLMENT_REQUESTED | REMOVED | BLOCKED | CREATED"; + "DISENROLLMENT_REQUESTED | REMOVED | BLOCKED | CREATED | CONFIGURED | READY_TO_CONNECT | " + + "RETURN_PENDING | RETURNED | DEFECTIVE | WARRANTY_PENDING | WARRANTY_SENT | WARRANTY_REPLACED | ASSIGNED "; log.error(msg); throw new InputValidationException(new ErrorResponse.ErrorResponseBuilder() .setCode(HttpStatus.SC_BAD_REQUEST) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/util/DeviceManagementDAOUtil.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/util/DeviceManagementDAOUtil.java index 91b549d9e6..089bb4cf03 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/util/DeviceManagementDAOUtil.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/util/DeviceManagementDAOUtil.java @@ -26,6 +26,7 @@ import java.util.Date; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.el.lang.ELSupport; import org.wso2.carbon.context.CarbonContext; import org.wso2.carbon.device.mgt.common.Device; import org.wso2.carbon.device.mgt.common.DeviceBilling; @@ -211,6 +212,24 @@ public final class DeviceManagementDAOUtil { return enrolmentInfos.get(EnrolmentInfo.Status.SUSPENDED); } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.BLOCKED)) { return enrolmentInfos.get(EnrolmentInfo.Status.BLOCKED); + } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.CONFIGURED)) { + return enrolmentInfos.get(EnrolmentInfo.Status.CONFIGURED); + } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.READY_TO_CONNECT)) { + return enrolmentInfos.get(EnrolmentInfo.Status.READY_TO_CONNECT); + } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.RETURN_PENDING)) { + return enrolmentInfos.get(EnrolmentInfo.Status.RETURN_PENDING); + } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.RETURNED)) { + return enrolmentInfos.get(EnrolmentInfo.Status.RETURNED); + } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.DEFECTIVE)) { + return enrolmentInfos.get(EnrolmentInfo.Status.DEFECTIVE); + } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.WARRANTY_PENDING)) { + return enrolmentInfos.get(EnrolmentInfo.Status.WARRANTY_PENDING); + } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.WARRANTY_SENT)) { + return enrolmentInfos.get(EnrolmentInfo.Status.WARRANTY_SENT); + } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.WARRANTY_REPLACED)) { + return enrolmentInfos.get(EnrolmentInfo.Status.WARRANTY_REPLACED); + } else if (enrolmentInfos.containsKey(EnrolmentInfo.Status.ASSIGNED)) { + return enrolmentInfos.get(EnrolmentInfo.Status.ASSIGNED); } return enrolmentInfo; } From 1bea33b25975a2f6de7171cf85f851bcfb48c1c4 Mon Sep 17 00:00:00 2001 From: ThilinaPremachandra Date: Thu, 15 Dec 2022 13:36:37 +0530 Subject: [PATCH 08/10] fixed ownership validation issue --- .../jaxrs/service/impl/util/RequestValidationUtil.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java index b41d39158b..f9a27bee4c 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java @@ -185,12 +185,18 @@ public class RequestValidationUtil { switch (ownership) { case "BYOD": case "COPE": + case "WORK_PROFILE": + case "GOOGLE_ENTERPRISE": + case "COSU": + case "FULLY_MANAGED": + case "DEDICATED_DEVICE": return; default: throw new InputValidationException( new ErrorResponse.ErrorResponseBuilder().setCode(400l).setMessage( "Invalid ownership type received. " + - "Valid ownership types are BYOD | COPE").build()); + "Valid ownership types are BYOD | COPE " + + "WORK_PROFILE | GOOGLE_ENTERPRISE | COSU | FULLY_MANAGED | DEDICATED_DEVICE").build()); } } From 472d34dc09d2b3b014d241278cce05ae4e66667c Mon Sep 17 00:00:00 2001 From: navodzoysa Date: Fri, 16 Dec 2022 08:31:22 +0530 Subject: [PATCH 09/10] Fix incorrect query param when directly publishing an app --- .../ApplicationManagementPublisherAPI.java | 16 ++++++++-------- .../api/services/SPApplicationService.java | 8 ++++---- .../ApplicationManagementPublisherAPIImpl.java | 8 ++++---- .../services/impl/SPApplicationServiceImpl.java | 8 ++++---- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/ApplicationManagementPublisherAPI.java b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/ApplicationManagementPublisherAPI.java index 93918ae1e9..bfc2c7ed61 100644 --- a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/ApplicationManagementPublisherAPI.java +++ b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/ApplicationManagementPublisherAPI.java @@ -322,7 +322,7 @@ public interface ApplicationManagementPublisherAPI { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished); + @QueryParam("is-published") boolean isPublished); @POST @Path("/web-app") @@ -366,7 +366,7 @@ public interface ApplicationManagementPublisherAPI { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished + @QueryParam("is-published") boolean isPublished ); @POST @@ -411,7 +411,7 @@ public interface ApplicationManagementPublisherAPI { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished + @QueryParam("is-published") boolean isPublished ); @POST @@ -457,7 +457,7 @@ public interface ApplicationManagementPublisherAPI { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished + @QueryParam("is-published") boolean isPublished ); @POST @@ -512,7 +512,7 @@ public interface ApplicationManagementPublisherAPI { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished + @QueryParam("is-published") boolean isPublished ); @POST @@ -567,7 +567,7 @@ public interface ApplicationManagementPublisherAPI { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished + @QueryParam("is-published") boolean isPublished ); @POST @@ -617,7 +617,7 @@ public interface ApplicationManagementPublisherAPI { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished + @QueryParam("is-published") boolean isPublished ); @POST @@ -672,7 +672,7 @@ public interface ApplicationManagementPublisherAPI { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished + @QueryParam("is-published") boolean isPublished ); @PUT diff --git a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/SPApplicationService.java b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/SPApplicationService.java index 5d4797db38..3b53852aba 100644 --- a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/SPApplicationService.java +++ b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/SPApplicationService.java @@ -318,7 +318,7 @@ public interface SPApplicationService { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished); + @QueryParam("is-published") boolean isPublished); /** * This method is used to register an APIM application for tenant domain. @@ -345,7 +345,7 @@ public interface SPApplicationService { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished); + @QueryParam("is-published") boolean isPublished); @Path("/{identity-server-id}/service-provider/{service-provider-id}/create/web-app") @POST @@ -369,7 +369,7 @@ public interface SPApplicationService { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished); + @QueryParam("is-published") boolean isPublished); @Path("/{identity-server-id}/service-provider/{service-provider-id}/create/custom-app") @POST @@ -392,5 +392,5 @@ public interface SPApplicationService { name = "isPublished", value = "Published state of the application" ) - @QueryParam("isPublished") boolean isPublished); + @QueryParam("is-published") boolean isPublished); } diff --git a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/ApplicationManagementPublisherAPIImpl.java b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/ApplicationManagementPublisherAPIImpl.java index 078af292d9..8df89f208a 100644 --- a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/ApplicationManagementPublisherAPIImpl.java +++ b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/ApplicationManagementPublisherAPIImpl.java @@ -260,7 +260,7 @@ public class ApplicationManagementPublisherAPIImpl implements ApplicationManagem @PathParam("deviceType") String deviceTypeName, @PathParam("appId") int appId, EntAppReleaseWrapper entAppReleaseWrapper, - @QueryParam("isPublished") boolean isPublished) { + @QueryParam("is-published") boolean isPublished) { try { ApplicationManager applicationManager = APIUtil.getApplicationManager(); applicationManager.validateEntAppReleaseCreatingRequest(entAppReleaseWrapper, deviceTypeName); @@ -284,7 +284,7 @@ public class ApplicationManagementPublisherAPIImpl implements ApplicationManagem public Response createPubAppRelease( @PathParam("deviceType") String deviceTypeName, @PathParam("appId") int appId, - PublicAppReleaseWrapper publicAppReleaseWrapper, @QueryParam("isPublished") boolean isPublished) { + PublicAppReleaseWrapper publicAppReleaseWrapper, @QueryParam("is-published") boolean isPublished) { try { ApplicationManager applicationManager = APIUtil.getApplicationManager(); @@ -312,7 +312,7 @@ public class ApplicationManagementPublisherAPIImpl implements ApplicationManagem @Override public Response createWebAppRelease( @PathParam("appId") int appId, - WebAppReleaseWrapper webAppReleaseWrapper, @QueryParam("isPublished") boolean isPublished) { + WebAppReleaseWrapper webAppReleaseWrapper, @QueryParam("is-published") boolean isPublished) { try { ApplicationManager applicationManager = APIUtil.getApplicationManager(); applicationManager.validateWebAppReleaseCreatingRequest(webAppReleaseWrapper); @@ -340,7 +340,7 @@ public class ApplicationManagementPublisherAPIImpl implements ApplicationManagem public Response createCustomAppRelease( @PathParam("deviceType") String deviceTypeName, @PathParam("appId") int appId, - CustomAppReleaseWrapper customAppReleaseWrapper, @QueryParam("isPublished") boolean isPublished) { + CustomAppReleaseWrapper customAppReleaseWrapper, @QueryParam("is-published") boolean isPublished) { try { ApplicationManager applicationManager = APIUtil.getApplicationManager(); applicationManager.validateCustomAppReleaseCreatingRequest(customAppReleaseWrapper, deviceTypeName); diff --git a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/SPApplicationServiceImpl.java b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/SPApplicationServiceImpl.java index ec197dd47f..4abe861ce8 100644 --- a/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/SPApplicationServiceImpl.java +++ b/components/application-mgt/io.entgra.application.mgt.publisher.api/src/main/java/io/entgra/application/mgt/publisher/api/services/impl/SPApplicationServiceImpl.java @@ -295,7 +295,7 @@ public class SPApplicationServiceImpl implements SPApplicationService { @Override public Response createEntApp(@PathParam("identity-server-id") int identityServerId, @PathParam("service-provider-id") String serviceProviderId, ApplicationWrapper app, - @QueryParam("isPublished") boolean isPublished) { + @QueryParam("is-published") boolean isPublished) { return createSPApplication(identityServerId, serviceProviderId, app, isPublished); } @@ -304,7 +304,7 @@ public class SPApplicationServiceImpl implements SPApplicationService { @Override public Response createPubApp(@PathParam("identity-server-id") int identityServerId, @PathParam("service-provider-id") String serviceProviderId, PublicAppWrapper app, - @QueryParam("isPublished") boolean isPublished) { + @QueryParam("is-published") boolean isPublished) { return createSPApplication(identityServerId, serviceProviderId, app, isPublished); } @@ -313,7 +313,7 @@ public class SPApplicationServiceImpl implements SPApplicationService { @Override public Response createWebApp(@PathParam("identity-server-id") int identityServerId, @PathParam("service-provider-id") String serviceProviderId, WebAppWrapper app, - @QueryParam("isPublished") boolean isPublished) { + @QueryParam("is-published") boolean isPublished) { return createSPApplication(identityServerId, serviceProviderId, app, isPublished); } @@ -322,7 +322,7 @@ public class SPApplicationServiceImpl implements SPApplicationService { @Override public Response createCustomApp(@PathParam("identity-server-id") int identityServerId, @PathParam("service-provider-id") String serviceProviderId, CustomAppWrapper app, - @QueryParam("isPublished") boolean isPublished) { + @QueryParam("is-published") boolean isPublished) { return createSPApplication(identityServerId, serviceProviderId, app, isPublished); } From 05f7a61af058e1acbf23ee0bec09c185d1919374 Mon Sep 17 00:00:00 2001 From: Sanjana Rajapakshe Date: Fri, 16 Dec 2022 05:52:05 +0000 Subject: [PATCH 10/10] Fix incorrect date type issue Co-authored-by: Sanjana Rajapakshe Co-committed-by: Sanjana Rajapakshe --- .../src/main/resources/dbscripts/cdm/application-mgt/h2.sql | 4 ++-- .../main/resources/dbscripts/cdm/application-mgt/mssql.sql | 4 ++-- .../resources/dbscripts/cdm/application-mgt/postgresql.sql | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/h2.sql b/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/h2.sql index 8c62906e71..bb85e18ffa 100644 --- a/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/h2.sql +++ b/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/h2.sql @@ -57,8 +57,8 @@ CREATE TABLE IF NOT EXISTS AP_APP_REVIEW( COMMENT TEXT NOT NULL, ROOT_PARENT_ID INTEGER NOT NULL, IMMEDIATE_PARENT_ID INTEGER NOT NULL, - CREATED_AT TIMESTAMP NOT NULL, - MODIFIED_AT TIMESTAMP NOT NULL, + CREATED_AT BIGINT NOT NULL, + MODIFIED_AT BIGINT NOT NULL, RATING INTEGER NULL, USERNAME VARCHAR(45) NOT NULL, ACTIVE_REVIEW BOOLEAN NOT NULL DEFAULT TRUE, diff --git a/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/mssql.sql b/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/mssql.sql index 1b89c2dcc4..754eaca191 100644 --- a/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/mssql.sql +++ b/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/mssql.sql @@ -58,8 +58,8 @@ CREATE TABLE AP_APP_REVIEW( COMMENT VARCHAR(max) NOT NULL, ROOT_PARENT_ID INTEGER NOT NULL, IMMEDIATE_PARENT_ID INTEGER NOT NULL, - CREATED_AT DATETIME2(0) NOT NULL, - MODIFIED_AT DATETIME2(0) NOT NULL, + CREATED_AT BIGINT NOT NULL, + MODIFIED_AT BIGINT NOT NULL, RATING INTEGER NULL, USERNAME VARCHAR(45) NOT NULL, ACTIVE_REVIEW BIT NOT NULL DEFAULT 1, diff --git a/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/postgresql.sql b/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/postgresql.sql index ae57ee10e9..946d720dfd 100644 --- a/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/postgresql.sql +++ b/features/application-mgt/io.entgra.application.mgt.server.feature/src/main/resources/dbscripts/cdm/application-mgt/postgresql.sql @@ -63,8 +63,8 @@ CREATE TABLE IF NOT EXISTS AP_APP_REVIEW( COMMENT TEXT NOT NULL, ROOT_PARENT_ID INTEGER NOT NULL, IMMEDIATE_PARENT_ID INTEGER NOT NULL, - CREATED_AT TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP NOT NULL, - MODIFIED_AT TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP NOT NULL, + CREATED_AT BIGINT NOT NULL, + MODIFIED_AT BIGINT NOT NULL, RATING INTEGER NULL, USERNAME VARCHAR(45) NOT NULL, ACTIVE_REVIEW BOOLEAN NOT NULL DEFAULT TRUE,