mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Fix application installing issue
This commit is contained in:
parent
bc3e2fc899
commit
e2acb5c4c8
@ -63,12 +63,13 @@ public class Util {
|
||||
|
||||
while (rs.next()) {
|
||||
if (applicationId != rs.getInt("APP_ID")) {
|
||||
|
||||
if (application != null) {
|
||||
applications.add(application);
|
||||
}
|
||||
applicationId = rs.getInt("APP_ID");
|
||||
application = new Application();
|
||||
application.setTags(new ArrayList<>());
|
||||
application.setUnrestrictedRoles(new ArrayList<>());
|
||||
application.setId(applicationId);
|
||||
application.setName(rs.getString("APP_NAME"));
|
||||
application.setType(rs.getString("APP_TYPE"));
|
||||
@ -76,23 +77,25 @@ public class Util {
|
||||
application.setSubType(rs.getString("SUB_TYPE"));
|
||||
application.setPaymentCurrency(rs.getString("CURRENCY"));
|
||||
application.setIsRestricted(rs.getBoolean("RESTRICTED"));
|
||||
|
||||
List<String> tags = new ArrayList<>();
|
||||
tags.add(rs.getString("APP_TAG").toLowerCase());
|
||||
application.setTags(tags);
|
||||
|
||||
List<String> unrestrictedRoles = new ArrayList<>();
|
||||
unrestrictedRoles.add(rs.getString("ROLE").toLowerCase());
|
||||
application.setUnrestrictedRoles(unrestrictedRoles);
|
||||
} else {
|
||||
String tag = rs.getString("APP_TAG").toLowerCase();
|
||||
String unrestrictedRole = rs.getString("ROLE").toLowerCase();
|
||||
if (application != null && !application.getTags().contains(tag)) {
|
||||
String tag = rs.getString("APP_TAG");
|
||||
String unrestrictedRole = rs.getString("ROLE");
|
||||
if (tag != null) {
|
||||
application.getTags().add(tag);
|
||||
}
|
||||
if (application != null && !application.getUnrestrictedRoles().contains(unrestrictedRole)) {
|
||||
if (unrestrictedRole != null) {
|
||||
application.getUnrestrictedRoles().add(unrestrictedRole);
|
||||
}
|
||||
} else {
|
||||
String tag = rs.getString("APP_TAG");
|
||||
String unrestrictedRole = rs.getString("ROLE");
|
||||
if (application != null) {
|
||||
if (tag != null && !application.getTags().contains(tag)) {
|
||||
application.getTags().add(tag);
|
||||
}
|
||||
if (unrestrictedRole != null && !application.getUnrestrictedRoles().contains(unrestrictedRole)) {
|
||||
application.getUnrestrictedRoles().add(unrestrictedRole);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (rs.last()) {
|
||||
applications.add(application);
|
||||
@ -119,6 +122,8 @@ public class Util {
|
||||
while (rs.next()) {
|
||||
if (iteration == 0) {
|
||||
application = new Application();
|
||||
application.setTags(new ArrayList<>());
|
||||
application.setUnrestrictedRoles(new ArrayList<>());
|
||||
applicatioId = rs.getInt("APP_ID");
|
||||
application.setId(applicatioId);
|
||||
application.setName(rs.getString("APP_NAME"));
|
||||
@ -130,13 +135,12 @@ public class Util {
|
||||
application.setDeviceTypeId(rs.getInt("DEVICE_TYPE_ID"));
|
||||
}
|
||||
|
||||
String tag = rs.getString("APP_TAG").toLowerCase();
|
||||
String unrestrictedRole = rs.getString("ROLE").toLowerCase();
|
||||
if (application.getTags() != null && application.getTags().contains(tag)) {
|
||||
String tag = rs.getString("APP_TAG");
|
||||
String unrestrictedRole = rs.getString("ROLE");
|
||||
if (tag != null && !application.getTags().contains(tag)) {
|
||||
application.getTags().add(tag);
|
||||
}
|
||||
if (application.getUnrestrictedRoles() != null && application.getUnrestrictedRoles()
|
||||
.contains(unrestrictedRole)) {
|
||||
if (unrestrictedRole != null && !application.getUnrestrictedRoles().contains(unrestrictedRole)) {
|
||||
application.getUnrestrictedRoles().add(unrestrictedRole);
|
||||
}
|
||||
iteration++;
|
||||
|
||||
@ -100,17 +100,15 @@ public class ApplicationManagerImpl implements ApplicationManager {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Create Application received for the tenant : " + tenantId + " From" + " the user : " + userName);
|
||||
}
|
||||
|
||||
ConnectionManagerUtil.openDBConnection();
|
||||
validateAppCreatingRequest(application, tenantId);
|
||||
validateAppReleasePayload(application.getApplicationReleases().get(0));
|
||||
DeviceType deviceType;
|
||||
ApplicationRelease applicationRelease;
|
||||
List<ApplicationRelease> applicationReleases = new ArrayList<>();
|
||||
try {
|
||||
ConnectionManagerUtil.beginDBTransaction();
|
||||
// Getting the device type details to get device type ID for internal mappings
|
||||
deviceType = Util.getDeviceManagementService().getDeviceType(application.getDeviceType());
|
||||
ConnectionManagerUtil.beginDBTransaction();
|
||||
|
||||
if (deviceType == null) {
|
||||
log.error("Device type is not matched with application type");
|
||||
@ -165,7 +163,8 @@ public class ApplicationManagerImpl implements ApplicationManager {
|
||||
LifecycleState lifecycleState = new LifecycleState();
|
||||
lifecycleState.setCurrentState(AppLifecycleState.CREATED.toString());
|
||||
lifecycleState.setPreviousState(AppLifecycleState.CREATED.toString());
|
||||
changeLifecycleState(appId, applicationRelease.getUuid(), lifecycleState, false);
|
||||
lifecycleState.setUpdatedBy(userName);
|
||||
this.lifecycleStateDAO.addLifecycleState(lifecycleState, appId, applicationRelease.getUuid(), tenantId);
|
||||
|
||||
applicationRelease.setLifecycleState(lifecycleState);
|
||||
applicationReleases.add(applicationRelease);
|
||||
@ -192,8 +191,6 @@ public class ApplicationManagerImpl implements ApplicationManager {
|
||||
log.error(msg, e);
|
||||
ConnectionManagerUtil.rollbackDBTransaction();
|
||||
throw new ApplicationManagementException(msg, e);
|
||||
} finally {
|
||||
ConnectionManagerUtil.closeDBConnection();
|
||||
}
|
||||
}
|
||||
|
||||
@ -693,20 +690,31 @@ public class ApplicationManagerImpl implements ApplicationManager {
|
||||
* @param application Application that need to be validated
|
||||
* @throws ValidationException Validation Exception
|
||||
*/
|
||||
private void validateApplicationExistence(Application application, int tenantId) throws ApplicationManagementException {
|
||||
private void validateApplicationExistence(Application application, int tenantId)
|
||||
throws ApplicationManagementException {
|
||||
Filter filter = new Filter();
|
||||
filter.setFullMatch(true);
|
||||
filter.setAppName(application.getName().trim());
|
||||
filter.setOffset(0);
|
||||
filter.setLimit(1);
|
||||
|
||||
try {
|
||||
ConnectionManagerUtil.openDBConnection();
|
||||
ApplicationList applicationList = applicationDAO.getApplications(filter, tenantId);
|
||||
if (applicationList != null && applicationList.getApplications() != null && !applicationList.getApplications()
|
||||
.isEmpty()) {
|
||||
if (applicationList != null && applicationList.getApplications() != null && !applicationList
|
||||
.getApplications().isEmpty()) {
|
||||
throw new ApplicationManagementException(
|
||||
"Already an application registered with same name - " + applicationList.getApplications().get(0)
|
||||
.getName());
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementException("test 1");
|
||||
|
||||
} catch (ApplicationManagementDAOException e) {
|
||||
throw new ApplicationManagementException("test 2");
|
||||
|
||||
} finally {
|
||||
ConnectionManagerUtil.closeDBConnection();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Loading…
Reference in New Issue
Block a user