mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Format APPM source
This commit is contained in:
parent
345125c042
commit
f48f939e7a
@ -28,24 +28,14 @@ import java.util.List;
|
||||
*/
|
||||
public interface LifecycleStateDAO {
|
||||
|
||||
/**
|
||||
* To get the latest lifecycle state for the given application release id.
|
||||
* @param applicationReleaseId id of the application release.
|
||||
*
|
||||
* @return Latest Lifecycle State for the given application release
|
||||
* @throws LifeCycleManagementDAOException Lifecycle Management DAO Exception.
|
||||
*/
|
||||
LifecycleState getLatestLifeCycleStateByReleaseID(int applicationReleaseId) throws LifeCycleManagementDAOException;
|
||||
|
||||
/**
|
||||
* To get the latest lifecycle state for the given application id and the application release UUID.
|
||||
* @param appId id of the application.
|
||||
* @param uuid UUID of the application release
|
||||
*
|
||||
* @return Latest Lifecycle State for the given application release
|
||||
* @throws LifeCycleManagementDAOException Lifecycle Management DAO Exception.
|
||||
*/
|
||||
LifecycleState getLatestLifeCycleState(int appId, String uuid) throws LifeCycleManagementDAOException;
|
||||
LifecycleState getLatestLifeCycleState(String uuid) throws LifeCycleManagementDAOException;
|
||||
|
||||
/**
|
||||
* To get all changed lifecycle states for the given application release id.
|
||||
|
||||
@ -23,26 +23,42 @@ import org.wso2.carbon.device.application.mgt.core.exception.VisibilityManagemen
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* This interface provides the list of operations that are performed in the database
|
||||
* layer with respect to the visibility.
|
||||
* This interface provides the list of operations that are performed in the database layer with respect to the
|
||||
* visibility.
|
||||
*
|
||||
*/
|
||||
public interface VisibilityDAO {
|
||||
|
||||
/**
|
||||
* To add unrestricted roles for a particular application.
|
||||
/***
|
||||
* This method is used to add unrestricted roles for a particular application.
|
||||
*
|
||||
* @param unrestrictedRoles unrestrictedRoles that could available the application.
|
||||
* @throws VisibilityManagementDAOException Visiblity Management DAO Exception.
|
||||
* @param unrestrictedRoles List of roles. User should have assigned at least one role from unrestricted role list
|
||||
* to view the application.
|
||||
* @param applicationId Id of the application.
|
||||
* @param tenantId Tenant Id.
|
||||
* @throws VisibilityManagementDAOException if an error occured while executing the query.
|
||||
*/
|
||||
void addUnrestrictedRoles(List<String> unrestrictedRoles, int applicationId, int tenantId) throws
|
||||
VisibilityManagementDAOException;
|
||||
void addUnrestrictedRoles(List<String> unrestrictedRoles, int applicationId, int tenantId)
|
||||
throws VisibilityManagementDAOException;
|
||||
|
||||
/***
|
||||
* This method is used to get unrestricted roles of an particular application.
|
||||
*
|
||||
* @param applicationId Id of the application.
|
||||
* @param tenantId Tenant Id.
|
||||
* @return List of unrestricted roles of the application.
|
||||
* @throws VisibilityManagementDAOException if an error occured while executing the query.
|
||||
*/
|
||||
List<String> getUnrestrictedRoles(int applicationId, int tenantId) throws VisibilityManagementDAOException;
|
||||
|
||||
List<String> getUnrestrictedRolesByUUID(String uuid, int tenantId) throws VisibilityManagementDAOException;
|
||||
|
||||
void deleteUnrestrictedRoles(List<String> unrestrictedRoles, int applicationId, int tenantId) throws
|
||||
VisibilityManagementDAOException;
|
||||
|
||||
/***
|
||||
* This method is used to delete unrestricted roles of an particular application.
|
||||
*
|
||||
* @param unrestrictedRoles List of unrestricted roles which are going to remove from the application.
|
||||
* @param applicationId Id of the application.
|
||||
* @param tenantId Tenant Id.
|
||||
* @throws VisibilityManagementDAOException if an error occured while executing the query.
|
||||
*/
|
||||
void deleteUnrestrictedRoles(List<String> unrestrictedRoles, int applicationId, int tenantId)
|
||||
throws VisibilityManagementDAOException;
|
||||
}
|
||||
|
||||
@ -21,7 +21,6 @@ package org.wso2.carbon.device.application.mgt.core.dao.impl.application;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.json.JSONException;
|
||||
import org.wso2.carbon.device.application.mgt.common.AppLifecycleState;
|
||||
import org.wso2.carbon.device.application.mgt.common.dto.ApplicationDTO;
|
||||
import org.wso2.carbon.device.application.mgt.common.dto.CategoryDTO;
|
||||
@ -994,8 +993,7 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
String msg = "SQL Error occurred when deleting category which has ID: " + categoryId + ". Executed query: "
|
||||
+ sql;
|
||||
String msg = "SQL Error occurred when deleting category which has ID: " + categoryId + ". Query: " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
@ -1111,7 +1109,10 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to get distinct tag ids in tag mapping.");
|
||||
}
|
||||
String sql = "SELECT DISTINCT tm.AP_APP_TAG_ID AS ID FROM AP_APP_TAG_MAPPING tm";
|
||||
String sql = "SELECT "
|
||||
+ "DISTINCT "
|
||||
+ "tm.AP_APP_TAG_ID AS ID "
|
||||
+ "FROM AP_APP_TAG_MAPPING tm";
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
List<Integer> distinctTagIds = new ArrayList<>();
|
||||
@ -1142,16 +1143,14 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
log.debug("Request received in DAO Layer to add application tags which has application ID: "
|
||||
+ applicationId);
|
||||
}
|
||||
Connection conn;
|
||||
PreparedStatement stmt = null;
|
||||
String sql = "INSERT INTO AP_APP_TAG_MAPPING "
|
||||
+ "(AP_APP_TAG_ID, "
|
||||
+ "AP_APP_ID, "
|
||||
+ " TENANT_ID) "
|
||||
+ "VALUES (?, ?, ?)";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
stmt = conn.prepareStatement(sql);
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
for (Integer tagId : tagIds) {
|
||||
stmt.setInt(1, tagId);
|
||||
stmt.setInt(2, applicationId);
|
||||
@ -1159,23 +1158,24 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
stmt.addBatch();
|
||||
}
|
||||
stmt.executeBatch();
|
||||
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when adding tags", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to add tags for application which has ID: "
|
||||
+ applicationId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred while adding tags", e);
|
||||
} finally {
|
||||
DAOUtil.cleanupResources(stmt, null);
|
||||
String msg = "SQL Error occurred when adding tags for application which has the ID: " + applicationId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getAppTags(int appId, int tenantId) throws ApplicationManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to get tags for given application.");
|
||||
log.debug("Request received in DAO Layer to get tags of application which has application Id " + appId);
|
||||
}
|
||||
Connection conn;
|
||||
List<String> tags = new ArrayList<>();
|
||||
String sql = "SELECT tag.TAG AS TAG "
|
||||
+ "FROM "
|
||||
@ -1183,7 +1183,7 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
+ "INNER JOIN AP_APP app ON tag_map.AP_APP_ID = app.ID "
|
||||
+ "WHERE app.ID = ? AND app.TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)){
|
||||
stmt.setInt(1, appId);
|
||||
stmt.setInt(2, tenantId);
|
||||
@ -1195,10 +1195,15 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
}
|
||||
return tags;
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when adding tags", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to get application tags. Application Id: "
|
||||
+ appId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred while adding tags", e);
|
||||
String msg = "SQL error occured while getting application tags. ApplicationId: " + appId + " Executed "
|
||||
+ "query " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1207,7 +1212,6 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to verify whether tag is associated with an application.");
|
||||
}
|
||||
Connection conn;
|
||||
String sql = "SELECT tm.AP_APP_ID AS ID "
|
||||
+ "FROM AP_APP_TAG_MAPPING tm "
|
||||
+ "WHERE "
|
||||
@ -1215,7 +1219,7 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
+ "tm.AP_APP_ID = ? AND "
|
||||
+ "tm.TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, tagId);
|
||||
stmt.setInt(2, applicationId);
|
||||
@ -1225,28 +1229,31 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
}
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when verifying the existence of a tag mapping",
|
||||
e);
|
||||
String msg = "Error occurred while obtaining the DB connection when verifying the existence of a tag "
|
||||
+ "mapping. Application ID " + applicationId + " tag ID: " + tagId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred when verifying the existence of a tag mapping.",
|
||||
e);
|
||||
String msg = "SQL Error occurred when verifying the existence of a tag mapping. Application ID "
|
||||
+ applicationId + " tag ID " + tagId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasTagMapping (int tagId, int tenantId) throws ApplicationManagementDAOException{
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to verify whether tag is associated with at least one application.");
|
||||
log.debug("Request received in DAO Layer to verify whether tag is associated with at least one "
|
||||
+ "application.");
|
||||
}
|
||||
Connection conn;
|
||||
String sql = "SELECT tm.AP_APP_ID AS ID "
|
||||
+ "FROM AP_APP_TAG_MAPPING tm "
|
||||
+ "WHERE "
|
||||
+ "tm.AP_APP_TAG_ID = ? AND "
|
||||
+ "tm.TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, tagId);
|
||||
stmt.setInt(2, tenantId);
|
||||
@ -1255,28 +1262,31 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
}
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when verifying the existence of a tag mapping",
|
||||
e);
|
||||
String msg = "Error occurred while obtaining the DB connection to verify whether tag is associated with at "
|
||||
+ "least one application. Tag ID " + tagId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred when verifying the existence of a tag mapping.",
|
||||
e);
|
||||
String msg = "Error occurred while executing the query to verify whether tag is associated with at least "
|
||||
+ "one application. Tag ID " + tagId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteApplicationTags(List<Integer> tagIds, int applicationId, int tenantId) throws ApplicationManagementDAOException{
|
||||
public void deleteApplicationTags(List<Integer> tagIds, int applicationId, int tenantId)
|
||||
throws ApplicationManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to delete Tag mappings.");
|
||||
}
|
||||
Connection conn;
|
||||
String sql = "DELETE FROM "
|
||||
+ "AP_APP_TAG_MAPPING WHERE "
|
||||
+ "AP_APP_TAG_ID = ? AND "
|
||||
+ "AP_APP_ID = ? AND "
|
||||
+ "TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)){
|
||||
for (Integer tagId : tagIds){
|
||||
stmt.setInt(1, tagId);
|
||||
@ -1287,10 +1297,15 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
stmt.executeBatch();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when deleting tag mapping", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to delete tag mapping. Application ID: "
|
||||
+ applicationId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred when deleting tag mapping", e);
|
||||
String msg = "SQL Error occurred while executing the query to delete tag mapping. Application ID: "
|
||||
+ applicationId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1299,7 +1314,6 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to delete Tag mapping.");
|
||||
}
|
||||
Connection conn;
|
||||
String sql = "DELETE FROM "
|
||||
+ "AP_APP_TAG_MAPPING "
|
||||
+ "WHERE "
|
||||
@ -1307,7 +1321,7 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
+ "AP_APP_ID = ? AND "
|
||||
+ "TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, tagId);
|
||||
stmt.setInt(2, applicationId);
|
||||
@ -1315,103 +1329,111 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
stmt.executeUpdate();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when deleting a tag mapping", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to delete a tag mapping. Application ID "
|
||||
+ applicationId + " tag ID " + tagId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("SQL Error occurred when deleting a tag mapping", e);
|
||||
String msg = "SQL Error occurred while executing the query to delete a tag mapping. Application ID "
|
||||
+ applicationId + " tag ID " + tagId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteApplicationTags(int applicationId, int tenantId) throws ApplicationManagementDAOException{
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to delete application tags.");
|
||||
log.debug("Request received in DAO Layer to delete application tags for application ID " + applicationId);
|
||||
}
|
||||
Connection conn;
|
||||
String sql = "DELETE FROM "
|
||||
+ "AP_APP_TAG_MAPPING "
|
||||
+ "WHERE "
|
||||
+ "AP_APP_ID = ? AND "
|
||||
+ "TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, applicationId);
|
||||
stmt.setInt(2, tenantId);
|
||||
stmt.executeUpdate();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when deleting application tags for application ID: "
|
||||
+ applicationId, e);
|
||||
String msg = "Error occurred while obtaining the DB connection when deleting application tags for "
|
||||
+ "application ID: " + applicationId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred when deleting application tags for application ID: " + applicationId, e);
|
||||
String msg = "SQL Error occurred when deleting application tags for application ID: " + applicationId + "."
|
||||
+ " Executed query " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteTagMapping(int tagId, int tenantId) throws ApplicationManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to delete Tag mappings.");
|
||||
log.debug("Request received in DAO Layer to delete application tag. Tag Id " + tagId);
|
||||
}
|
||||
Connection conn;
|
||||
String sql = "DELETE FROM " +
|
||||
"AP_APP_TAG_MAPPING " +
|
||||
"WHERE " +
|
||||
"AP_APP_ID = ? AND " +
|
||||
"TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, tagId);
|
||||
stmt.setInt(2, tenantId);
|
||||
stmt.executeUpdate();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when deleting tag mapping of tag ID: " + tagId,
|
||||
e);
|
||||
String msg = "Error occurred while obtaining the DB connection when deleting application tag which has tag"
|
||||
+ " ID: " + tagId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred when deleting tag mapping of tag ID: " + tagId,
|
||||
e);
|
||||
String msg = "SQL error occurred when deleting application tag which has tag ID: " + tagId + ". executed "
|
||||
+ "query: " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteTag(int tagId, int tenantId) throws ApplicationManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to delete Tag mappings.");
|
||||
log.debug("Request received in DAO Layer to delete Tag which has tag ID " + tagId);
|
||||
}
|
||||
Connection conn;
|
||||
String sql = "DELETE FROM " +
|
||||
"AP_APP_TAG " +
|
||||
"WHERE " +
|
||||
"ID = ? AND " +
|
||||
"TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, tagId);
|
||||
stmt.setInt(2, tenantId);
|
||||
stmt.executeUpdate();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when deleting tag which has ID: " + tagId,
|
||||
e);
|
||||
String msg = "Error occurred while obtaining the DB connection when deleting tag which has ID: " + tagId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred when deleting tag which has ID: " + tagId,
|
||||
e);
|
||||
String msg = "SQL Error occurred when deleting tag which has ID: " + tagId + ". Executed query " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateTag(TagDTO tagDTO, int tenantId) throws ApplicationManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to update the Tag.");
|
||||
log.debug("Request received in DAO Layer to update a Tag.");
|
||||
}
|
||||
Connection conn;
|
||||
String sql = "UPDATE " +
|
||||
"AP_APP_TAG tag " +
|
||||
"SET tag.TAG = ? " +
|
||||
@ -1419,7 +1441,7 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
"tag.ID = ? AND " +
|
||||
"tag.TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setString(1, tagDTO.getTagName());
|
||||
stmt.setInt(2, tagDTO.getId());
|
||||
@ -1427,21 +1449,23 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
stmt.executeUpdate();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when updating tag which has ID: " + tagDTO
|
||||
.getId(), e);
|
||||
String msg = "Error occurred while obtaining the DB connection to update tag which has ID: "
|
||||
+ tagDTO.getId();
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred when updating tag which has ID: " + tagDTO.getId(), e);
|
||||
String msg = "SQL Error occurred when updating tag which has ID: " + tagDTO.getId() + ". Executed query: "
|
||||
+ sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getAppCategories(int appId, int tenantId) throws ApplicationManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to get categories for given application.");
|
||||
log.debug("Request received in DAO Layer to get application categories for given application.");
|
||||
}
|
||||
Connection conn;
|
||||
List<String> categories = new ArrayList<>();
|
||||
String sql = "SELECT CATEGORY "
|
||||
+ "FROM "
|
||||
@ -1449,7 +1473,7 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
+ "INNER JOIN AP_APP app ON cat_map.AP_APP_ID = app.ID "
|
||||
+ "WHERE app.ID = ? AND app.TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)){
|
||||
stmt.setInt(1, appId);
|
||||
stmt.setInt(2, tenantId);
|
||||
@ -1461,10 +1485,15 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
}
|
||||
return categories;
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when adding tags", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to get application categories for "
|
||||
+ "application which has ID " + appId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred while adding tags", e);
|
||||
String msg = "SQL error occurred while executing query to get application categories for "
|
||||
+ "application which has ID " + appId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1473,14 +1502,13 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to verify whether tag is associated with at least one application.");
|
||||
}
|
||||
Connection conn;
|
||||
String sql = "SELECT cm.AP_APP_ID AS ID "
|
||||
+ "FROM AP_APP_CATEGORY_MAPPING cm "
|
||||
+ "WHERE "
|
||||
+ "cm.AP_APP_CATEGORY_ID = ? AND "
|
||||
+ "cm.TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, categoryId);
|
||||
stmt.setInt(2, tenantId);
|
||||
@ -1489,53 +1517,56 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
}
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when verifying the existence of a category mapping",
|
||||
e);
|
||||
String msg = "Error occurred while obtaining the DB connection when verifying the existence of a category "
|
||||
+ "mapping for category ID " + categoryId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred when verifying the existence of a category mapping.", e);
|
||||
String msg = "SQL Error occurred when verifying the existence of a category mapping for category ID "
|
||||
+ categoryId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isExistingAppName(String appName, int deviceTypeId, int tenantId) throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet rs = null;
|
||||
String sql;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
sql = "SELECT AP_APP.ID AS ID "
|
||||
String sql = "SELECT AP_APP.ID AS ID "
|
||||
+ "FROM AP_APP "
|
||||
+ "WHERE "
|
||||
+ "AP_APP.NAME = ? AND "
|
||||
+ "AP_APP.DEVICE_TYPE_ID = ? AND "
|
||||
+ "AP_APP.TENANT_ID = ?";
|
||||
stmt = conn.prepareStatement(sql);
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)){
|
||||
stmt.setString(1, appName);
|
||||
stmt.setInt(2, deviceTypeId);
|
||||
stmt.setInt(3, tenantId);
|
||||
rs = stmt.executeQuery();
|
||||
try (ResultSet rs = stmt.executeQuery()){
|
||||
return rs.next();
|
||||
}
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred while obtaining the DB connection.", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to check whether the existence of "
|
||||
+ "application name for device type which has device type ID " + deviceTypeId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred while getting application List", e);
|
||||
} finally {
|
||||
DAOUtil.cleanupResources(stmt, rs);
|
||||
String msg = "Error occurred while executing query to check whether the existence of application name for "
|
||||
+ "device type which has device type ID " + deviceTypeId + ". executed query " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteApplication(int appId, int tenantId) throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
String sql;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
sql = "DELETE FROM AP_APP "
|
||||
String sql = "DELETE FROM AP_APP "
|
||||
+ "WHERE ID = ? AND "
|
||||
+ "TENANT_ID = ?";
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)){
|
||||
stmt.setInt(1, appId);
|
||||
stmt.setInt(2, tenantId);
|
||||
@ -1548,7 +1579,8 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while deleting application for application ID: " + appId;
|
||||
String msg = "SQL Error occurred while deleting application for application ID: " + appId + " Executed "
|
||||
+ "query " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
|
||||
@ -43,65 +43,53 @@ import java.util.List;
|
||||
public class GenericLifecycleStateDAOImpl extends AbstractDAOImpl implements LifecycleStateDAO {
|
||||
|
||||
private static final Log log = LogFactory.getLog(GenericLifecycleStateDAOImpl.class);
|
||||
|
||||
@Override
|
||||
public LifecycleState getLatestLifeCycleStateByReleaseID(int applicationReleaseId) throws LifeCycleManagementDAOException {
|
||||
|
||||
Connection conn = null;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet rs = null;
|
||||
public LifecycleState getLatestLifeCycleState(String uuid) throws LifeCycleManagementDAOException{
|
||||
String sql = "SELECT "
|
||||
+ "CURRENT_STATE, "
|
||||
+ "PREVIOUS_STATE, "
|
||||
+ "UPDATED_AT, "
|
||||
+ "UPDATED_BY "
|
||||
+ "FROM "
|
||||
+ "AP_APP_LIFECYCLE_STATE "
|
||||
+ "WHERE "
|
||||
+ "AP_APP_RELEASE_ID = (SELECT ID FROM AP_APP_RELEASE WHERE UUID = ?) ORDER BY UPDATED_AT DESC";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
String sql = "SELECT ID, CURRENT_STATE, PREVIOUS_STATE, TENANT_ID, UPDATED_AT, UPDATED_BY FROM "
|
||||
+ "AP_APP_LIFECYCLE_STATE WHERE AP_APP_RELEASE_ID=? ORDER BY UPDATED_AT DESC;";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, applicationReleaseId);
|
||||
rs = stmt.executeQuery();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setString(1, uuid);
|
||||
try (ResultSet rs = stmt.executeQuery()){
|
||||
return constructLifecycle(rs);
|
||||
} catch (SQLException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while getting application List", e);
|
||||
}
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while obtaining the DB connection to get latest"
|
||||
+ " lifecycle state for a specific application", e);
|
||||
} finally {
|
||||
DAOUtil.cleanupResources(stmt, rs);
|
||||
}
|
||||
}
|
||||
|
||||
public LifecycleState getLatestLifeCycleState(int appId, String uuid) throws LifeCycleManagementDAOException{
|
||||
Connection conn = null;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet rs = null;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
String sql = "SELECT ID, CURRENT_STATE, PREVIOUS_STATE, TENANT_ID, UPDATED_AT, UPDATED_BY FROM "
|
||||
+ "AP_APP_LIFECYCLE_STATE WHERE AP_APP_ID=? AND AP_APP_RELEASE_ID=(SELECT ID FROM AP_APP_RELEASE "
|
||||
+ "WHERE UUID=?) ORDER BY UPDATED_AT DESC;";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, appId);
|
||||
stmt.setString(2, uuid);
|
||||
rs = stmt.executeQuery();
|
||||
return constructLifecycle(rs);
|
||||
String msg = "Error occurred while obtaining the DB connection to get latest lifecycle state for a specific"
|
||||
+ " application. Application release UUID: " + uuid;
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while getting application List", e);
|
||||
} catch (DBConnectionException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while obtaining the DB connection to get latest"
|
||||
+ " lifecycle state for a specific application", e);
|
||||
} finally {
|
||||
DAOUtil.cleanupResources(stmt, rs);
|
||||
String msg = "Error occurred while executing query to get latest lifecycle state for a specific "
|
||||
+ "application. Application release UUID: " + uuid + ". Executed Query: " + sql;
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String getAppReleaseCreatedUsername(int appId, String uuid, int tenantId) throws LifeCycleManagementDAOException{
|
||||
Connection conn = null;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet rs = null;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
String sql = "SELECT UPDATED_BY FROM AP_APP_LIFECYCLE_STATE WHERE AP_APP_ID=? AND "
|
||||
+ "AP_APP_RELEASE_ID=(SELECT ID FROM AP_APP_RELEASE WHERE UUID=?) AND CURRENT_STATE = ? AND TENANT_ID = ?;";
|
||||
Connection conn = this.getDBConnection();
|
||||
String sql = "SELECT "
|
||||
+ "UPDATED_BY "
|
||||
+ "FROM AP_APP_LIFECYCLE_STATE "
|
||||
+ "WHERE "
|
||||
+ "AP_APP_ID = ? AND "
|
||||
+ "AP_APP_RELEASE_ID = (SELECT ID FROM AP_APP_RELEASE WHERE UUID=?) AND "
|
||||
+ "CURRENT_STATE = ? AND "
|
||||
+ "TENANT_ID = ? ORDER BY UPDATED_AT DESC LIMIT 1";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, appId);
|
||||
@ -127,9 +115,8 @@ public class GenericLifecycleStateDAOImpl extends AbstractDAOImpl implements Lif
|
||||
@Override
|
||||
public List<LifecycleState> getLifecycleStates(int appReleaseId, int tenantId) throws LifeCycleManagementDAOException {
|
||||
List<LifecycleState> lifecycleStates = new ArrayList<>();
|
||||
Connection conn ;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
String sql = "SELECT "
|
||||
+ "CURRENT_STATE, "
|
||||
+ "PREVIOUS_STATE, "
|
||||
@ -138,36 +125,32 @@ public class GenericLifecycleStateDAOImpl extends AbstractDAOImpl implements Lif
|
||||
+ "FROM AP_APP_LIFECYCLE_STATE "
|
||||
+ "WHERE AP_APP_RELEASE_ID = ? AND "
|
||||
+ "TENANT_ID = ? "
|
||||
+ "ORDER BY UPDATED_AT ASC;";
|
||||
+ "ORDER BY UPDATED_AT ASC";
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)){
|
||||
stmt.setInt(1,appReleaseId);
|
||||
stmt.setInt(2, tenantId);
|
||||
try (ResultSet rs = stmt.executeQuery()){
|
||||
while (rs.next()) {
|
||||
LifecycleState lifecycleState = new LifecycleState();
|
||||
lifecycleState.setCurrentState(rs.getString("CURRENT_STATE"));
|
||||
lifecycleState.setPreviousState(rs.getString("PREVIOUS_STATE"));
|
||||
lifecycleState.setUpdatedAt(rs.getTimestamp("UPDATED_AT"));
|
||||
lifecycleState.setUpdatedBy(rs.getString("UPDATED_BY"));
|
||||
lifecycleStates.add(lifecycleState);
|
||||
lifecycleStates.add(constructLifecycle(rs));
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while obtaining the DB connection when getting "
|
||||
+ "lifecycle states for an application", e);
|
||||
String msg = "Error occurred while obtaining the DB connection when getting lifecycle states for an "
|
||||
+ "application which has application ID: " + appReleaseId;
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while retrieving lifecycle states.", e);
|
||||
String msg = "SQL Error occurred while retrieving lifecycle states for application which has application "
|
||||
+ "ID: " + appReleaseId;
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
}
|
||||
return lifecycleStates;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addLifecycleState(LifecycleState state, int appReleaseId, int tenantId) throws LifeCycleManagementDAOException {
|
||||
Connection conn = null;
|
||||
PreparedStatement stmt = null;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
String sql = "INSERT INTO AP_APP_LIFECYCLE_STATE "
|
||||
+ "(CURRENT_STATE, "
|
||||
+ "PREVIOUS_STATE, "
|
||||
@ -175,14 +158,13 @@ public class GenericLifecycleStateDAOImpl extends AbstractDAOImpl implements Lif
|
||||
+ "UPDATED_BY, "
|
||||
+ "UPDATED_AT, "
|
||||
+ "REASON, "
|
||||
+ "AP_APP_RELEASE_ID, "
|
||||
+ "AP_APP_ID) "
|
||||
+ "VALUES (?, ?, ?, ?, ?, ?, ?, (SELECT AP_APP_ID FROM AP_APP_RELEASE WHERE ID = ?));";
|
||||
|
||||
+ "AP_APP_RELEASE_ID) "
|
||||
+ "VALUES (?, ?, ?, ?, ?, ?, ?)";
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
Timestamp timestamp = new Timestamp(calendar.getTime().getTime());
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setString(1, state.getCurrentState().toUpperCase());
|
||||
stmt.setString(2, state.getPreviousState().toUpperCase());
|
||||
stmt.setInt(3, tenantId);
|
||||
@ -190,47 +172,53 @@ public class GenericLifecycleStateDAOImpl extends AbstractDAOImpl implements Lif
|
||||
stmt.setTimestamp(5, timestamp);
|
||||
stmt.setString(6, state.getReasonForChange());
|
||||
stmt.setInt(7, appReleaseId);
|
||||
stmt.setInt(8, appReleaseId);
|
||||
stmt.executeUpdate();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
log.error("Error occurred while obtaining the DB connection.", e);
|
||||
throw new LifeCycleManagementDAOException("Error occurred while obtaining the DB connection.", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to add lifecycle state for application "
|
||||
+ "release which has ID " + appReleaseId + ". Lifecycle state " + state.getCurrentState();
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
log.error("Error occurred while adding lifecycle: " + state.getCurrentState(), e);
|
||||
throw new LifeCycleManagementDAOException("Error occurred while adding lifecycle: " + state.getCurrentState(), e);
|
||||
} finally {
|
||||
DAOUtil.cleanupResources(stmt, null);
|
||||
String msg = "Error occurred while executing the query to add lifecycle state for application release which"
|
||||
+ " has ID " + appReleaseId + ". Lifecycle state " + state.getCurrentState() + ". Executed query: "
|
||||
+ sql;
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteLifecycleStateByReleaseId(int releaseId) throws LifeCycleManagementDAOException {
|
||||
Connection conn;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
String sql = "DELETE FROM " +
|
||||
"AP_APP_LIFECYCLE_STATE " +
|
||||
String sql = "DELETE "
|
||||
+ "FROM AP_APP_LIFECYCLE_STATE " +
|
||||
"WHERE AP_APP_RELEASE_ID = ?";
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, releaseId);
|
||||
stmt.executeUpdate();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while obtaining the DB connection.", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to delete lifecycle states for application "
|
||||
+ "release ID: " + releaseId;
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while deleting lifecycle for application "
|
||||
+ "release ID: " + releaseId, e);
|
||||
String msg = "Error occurred while executing the query to delete lifecycle states for application release"
|
||||
+ " ID: " + releaseId + ". Executed query " + sql;
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteLifecycleStates(List<Integer> appReleaseIds) throws LifeCycleManagementDAOException{
|
||||
Connection conn;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
String sql = "DELETE FROM " +
|
||||
"AP_APP_LIFECYCLE_STATE " +
|
||||
String sql = "DELETE "
|
||||
+ "FROM AP_APP_LIFECYCLE_STATE " +
|
||||
"WHERE AP_APP_RELEASE_ID = ?";
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
for (Integer releaseId : appReleaseIds) {
|
||||
stmt.setInt(1, releaseId);
|
||||
@ -239,29 +227,32 @@ public class GenericLifecycleStateDAOImpl extends AbstractDAOImpl implements Lif
|
||||
stmt.executeBatch();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while obtaining the DB connection for deleting "
|
||||
+ "application life-cycle states for given application Ids.", e);
|
||||
String msg = "Error occurred while obtaining the DB connection for deleting application life-cycle states "
|
||||
+ "for given application Ids.";
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new LifeCycleManagementDAOException("Error occurred while deleting life-cycle states for given "
|
||||
+ "application releases.", e);
|
||||
String msg = "Error occurred while executing query to delete application life-cycle states for given "
|
||||
+ "application Ids.";
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private LifecycleState constructLifecycle(ResultSet rs) throws LifeCycleManagementDAOException {
|
||||
LifecycleState lifecycleState = null;
|
||||
try {
|
||||
if (rs !=null && rs.next()) {
|
||||
lifecycleState = new LifecycleState();
|
||||
LifecycleState lifecycleState = new LifecycleState();
|
||||
lifecycleState.setCurrentState(rs.getString("CURRENT_STATE"));
|
||||
lifecycleState.setPreviousState(rs.getString("PREVIOUS_STATE"));
|
||||
lifecycleState.setUpdatedAt(rs.getTimestamp("UPDATED_AT"));
|
||||
lifecycleState.setUpdatedBy(rs.getString("UPDATED_BY"));
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
throw new LifeCycleManagementDAOException(
|
||||
"Error occurred while construct lifecycle state by retrieving data from SQL query", e);
|
||||
String msg = "Error occurred while construct lifecycle state by data which is retrieved from SQL query";
|
||||
log.error(msg);
|
||||
throw new LifeCycleManagementDAOException(msg, e);
|
||||
}
|
||||
return lifecycleState;
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@ -47,7 +47,6 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
public List<Integer> addDeviceSubscription(String subscribedBy, List<Integer> deviceIds,
|
||||
String subscribedFrom, String installStatus, int releaseId, int tenantId)
|
||||
throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
String sql = "INSERT INTO "
|
||||
+ "AP_DEVICE_SUBSCRIPTION("
|
||||
+ "SUBSCRIBED_BY, "
|
||||
@ -59,7 +58,7 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
+ "TENANT_ID) "
|
||||
+ "VALUES (?, ?, ?, ?, ?, ?, ?)";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
Timestamp timestamp = new Timestamp(calendar.getTime().getTime());
|
||||
@ -103,10 +102,7 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
public List<Integer> updateDeviceSubscription(String updateBy, List<Integer> deviceIds,
|
||||
boolean isUnsubscribed, String actionTriggeredFrom, String installStatus, int releaseId, int tenantId)
|
||||
throws ApplicationManagementDAOException {
|
||||
|
||||
Connection conn;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
String sql = "UPDATE AP_DEVICE_SUBSCRIPTION SET ";
|
||||
|
||||
if (isUnsubscribed) {
|
||||
@ -121,6 +117,7 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
"AP_APP_RELEASE_ID = ? AND " +
|
||||
"TENANT_ID = ?";
|
||||
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
Timestamp timestamp = new Timestamp(calendar.getTime().getTime());
|
||||
@ -144,27 +141,31 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
}
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
String msg = "Error occurred while obtaining the DB connection to update the device subscriptions of application.";
|
||||
String msg = "Error occurred while obtaining the DB connection to update device subscriptions of "
|
||||
+ "application. Updated by: " + updateBy + " and updating action triggered from "
|
||||
+ actionTriggeredFrom;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred when obtaining database connection for updating the device subscriptions of application.";
|
||||
String msg = "Error occurred when obtaining database connection for updating the device subscriptions of "
|
||||
+ "application. Updated by: " + updateBy + " and updating action triggered from "
|
||||
+ actionTriggeredFrom;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override public void addOperationMapping(int operationId, List<Integer> deviceSubscriptionIds, int tenantId)
|
||||
@Override
|
||||
public void addOperationMapping(int operationId, List<Integer> deviceSubscriptionIds, int tenantId)
|
||||
throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
try {
|
||||
String sql = "INSERT INTO "
|
||||
+ "AP_APP_SUB_OP_MAPPING("
|
||||
+ "OPERATION_ID, "
|
||||
+ "AP_DEVICE_SUBSCRIPTION_ID, "
|
||||
+ "TENANT_ID) "
|
||||
+ "VALUES (?, ?, ?)";
|
||||
conn = this.getDBConnection();
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
for (Integer subId : deviceSubscriptionIds) {
|
||||
stmt.setInt(1, operationId);
|
||||
@ -177,18 +178,21 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
}
|
||||
stmt.executeBatch();
|
||||
}
|
||||
} catch (SQLException | DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred while adding operation subscription mapping to DB",
|
||||
e);
|
||||
} catch (DBConnectionException e) {
|
||||
String msg = "Error occurred while getting database connection to add operation subscription mapping to DB";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while executing query to add operation subscription mapping to DB. Executed "
|
||||
+ "query: " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addUserSubscriptions(int tenantId, String subscribedBy, List<String> users, int releaseId)
|
||||
throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
try {
|
||||
String sql = "INSERT INTO "
|
||||
+ "AP_USER_SUBSCRIPTION("
|
||||
+ "TENANT_ID, "
|
||||
@ -197,11 +201,12 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
+ "USER_NAME, "
|
||||
+ "AP_APP_RELEASE_ID) "
|
||||
+ "VALUES (?, ?, ?, ?, ?)";
|
||||
conn = this.getDBConnection();
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
for (String user : users) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
Timestamp timestamp = new Timestamp(calendar.getTime().getTime());
|
||||
for (String user : users) {
|
||||
stmt.setInt(1, tenantId);
|
||||
stmt.setString(2, subscribedBy);
|
||||
stmt.setTimestamp(3, timestamp);
|
||||
@ -209,22 +214,28 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
stmt.setInt(5, releaseId);
|
||||
stmt.addBatch();
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Adding a mapping to user[" + user + "] to the application release[" + releaseId + "]");
|
||||
log.debug("Adding an user subscription for user " + user + " and application release which "
|
||||
+ "has Id " + releaseId + " to the database.");
|
||||
}
|
||||
}
|
||||
stmt.executeBatch();
|
||||
}
|
||||
} catch (SQLException | DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred while adding device application mapping to DB",
|
||||
e);
|
||||
} catch (DBConnectionException e) {
|
||||
String msg = "Error occurred while getting database connection to add user subscription. Subscribing user "
|
||||
+ "is " + subscribedBy;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while executing query to add user subscription. Subscribing user is "
|
||||
+ subscribedBy + " and executed query: " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addRoleSubscriptions(int tenantId, String subscribedBy, List<String> roles, int releaseId)
|
||||
throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
try {
|
||||
String sql = "INSERT INTO "
|
||||
+ "AP_ROLE_SUBSCRIPTION("
|
||||
+ "TENANT_ID, "
|
||||
@ -233,11 +244,12 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
+ "ROLE_NAME, "
|
||||
+ "AP_APP_RELEASE_ID) "
|
||||
+ "VALUES (?, ?, ?, ?, ?)";
|
||||
conn = this.getDBConnection();
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
for (String role : roles) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
Timestamp timestamp = new Timestamp(calendar.getTime().getTime());
|
||||
for (String role : roles) {
|
||||
stmt.setInt(1, tenantId);
|
||||
stmt.setString(2, subscribedBy);
|
||||
stmt.setTimestamp(3, timestamp);
|
||||
@ -245,22 +257,28 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
stmt.setInt(5, releaseId);
|
||||
stmt.addBatch();
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Adding a mapping to role[" + role + "] to the application release[" + releaseId + "]");
|
||||
log.debug("Adding a role subscription for role " + role + " and application release which "
|
||||
+ "has Id " + releaseId + " to the database.");
|
||||
}
|
||||
}
|
||||
stmt.executeBatch();
|
||||
}
|
||||
} catch (SQLException | DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred while adding role subscription to APPM DB",
|
||||
e);
|
||||
} catch (DBConnectionException e) {
|
||||
String msg = "Error occurred while getting database connection to add role subscription. Subscribing role "
|
||||
+ "is " + subscribedBy;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while executing query to add role subscription. Subscribing role is "
|
||||
+ subscribedBy + " and executed query: " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addGroupSubscriptions(int tenantId, String subscribedBy, List<String> groups, int releaseId)
|
||||
throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
try {
|
||||
String sql = "INSERT INTO "
|
||||
+ "AP_GROUP_SUBSCRIPTION("
|
||||
+ "TENANT_ID, "
|
||||
@ -269,11 +287,12 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
+ "GROUP_NAME, "
|
||||
+ "AP_APP_RELEASE_ID) "
|
||||
+ "VALUES (?, ?, ?, ?, ?)";
|
||||
conn = this.getDBConnection();
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
for (String group : groups) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
Timestamp timestamp = new Timestamp(calendar.getTime().getTime());
|
||||
for (String group : groups) {
|
||||
stmt.setInt(1, tenantId);
|
||||
stmt.setString(2, subscribedBy);
|
||||
stmt.setTimestamp(3, timestamp);
|
||||
@ -281,14 +300,22 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
stmt.setInt(5, releaseId);
|
||||
stmt.addBatch();
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Adding a mapping to group[" + group + "] to the application release[" + releaseId + "]");
|
||||
log.debug("Adding a group subscription for role " + group + " and application release which "
|
||||
+ "has Id " + releaseId + " to the database.");
|
||||
}
|
||||
}
|
||||
stmt.executeBatch();
|
||||
}
|
||||
} catch (SQLException | DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException("Error occurred while adding group subscription to APPM DB",
|
||||
e);
|
||||
} catch (DBConnectionException e) {
|
||||
String msg = "Error occurred while getting database connection to add group subscription. Subscribing "
|
||||
+ "group is " + subscribedBy;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while executing query to add group subscription. Subscribing group is "
|
||||
+ subscribedBy + " and executed query: " + sql;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -299,9 +326,6 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
log.debug("Getting device subscriptions for the application release id " + appReleaseId
|
||||
+ " from the database");
|
||||
}
|
||||
Connection conn;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
String sql = "SELECT "
|
||||
+ "DS.ID AS ID, "
|
||||
+ "DS.SUBSCRIBED_BY AS SUBSCRIBED_BY, "
|
||||
@ -313,6 +337,8 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
+ "DS.DM_DEVICE_ID AS DEVICE_ID "
|
||||
+ "FROM AP_DEVICE_SUBSCRIPTION DS "
|
||||
+ "WHERE DS.AP_APP_RELEASE_ID = ? AND DS.TENANT_ID=?";
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, appReleaseId);
|
||||
stmt.setInt(2, tenantId);
|
||||
@ -324,15 +350,13 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
return DAOUtil.loadDeviceSubscriptions(rs);
|
||||
}
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
String msg =
|
||||
"Error occurred while getting device subscription data for application ID: " + appReleaseId + ".";
|
||||
} catch (DBConnectionException e) {
|
||||
String msg = "Error occurred while obtaining the DB connection for getting device subscription for "
|
||||
+ "application Id: " + appReleaseId + ".";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (DBConnectionException e) {
|
||||
String msg =
|
||||
"Error occurred while obtaining the DB connection for getting device subscription for applicationID: "
|
||||
+ appReleaseId + ".";
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while getting device subscription data for application ID: " + appReleaseId;
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
@ -377,12 +401,14 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
}
|
||||
return deviceSubscriptionDTOHashMap;
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when getting device subscriptions for given "
|
||||
+ "device Ids.", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to get device subscriptions for given device"
|
||||
+ " Ids.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("SWL Error occurred while getting device subscriptions for given"
|
||||
+ " device Ids.", e);
|
||||
String msg = "SQL Error occurred while getting device subscriptions for given device Ids.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -415,12 +441,14 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
}
|
||||
return subscribedUsers;
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when getting subscribed users for given "
|
||||
+ "user names.", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to get already subscribed users for given "
|
||||
+ "user names.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("SWL Error occurred while getting suscribed users for given"
|
||||
+ " user names.", e);
|
||||
String msg = "SQL Error occurred while getting subscribed users for given user names.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -428,8 +456,7 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
public List<String> getSubscribedRoleNames(List<String> roles, int tenantId)
|
||||
throws ApplicationManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug(
|
||||
"Request received in DAO Layer to get already subscribed role names for given list of role names.");
|
||||
log.debug("Request received in DAO Layer to get already subscribed role names for given list of roles.");
|
||||
}
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
@ -454,12 +481,14 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
}
|
||||
return subscribedUsers;
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when getting subscribed roles for given "
|
||||
+ "role names.", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to getg subscribed roles for given role "
|
||||
+ "names.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("SWL Error occurred while getting subscribes roles for given"
|
||||
+ " role names.", e);
|
||||
String msg = "SWL Error occurred while getting subscribes roles for given role names.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -467,7 +496,7 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
public List<String> getSubscribedGroupNames(List<String> groups, int tenantId)
|
||||
throws ApplicationManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to get already subscribed groups for given list of group names.");
|
||||
log.debug("Request received in DAO Layer to get already subscribed groups for given list of groups.");
|
||||
}
|
||||
try {
|
||||
Connection conn = this.getDBConnection();
|
||||
@ -492,12 +521,14 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
}
|
||||
return subscribedUsers;
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when getting subscribed groups for given "
|
||||
+ "group names.", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to get already subscribed groups for given "
|
||||
+ "group names.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("SWL Error occurred while getting subscribed groups for given"
|
||||
+ " group names.", e);
|
||||
String msg = "SQL Error occurred while getting already subscribed groups for given group names.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -530,20 +561,22 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
}
|
||||
return subscribedDevices;
|
||||
} catch (DBConnectionException e) {
|
||||
throw new ApplicationManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when getting subscribed device Ids for given "
|
||||
+ "device Id list.", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to get subscribed device Ids for given "
|
||||
+ "device Id list.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new ApplicationManagementDAOException("SWL Error occurred while getting subscribed device ids for "
|
||||
+ "given devie Id list.", e);
|
||||
} }
|
||||
String msg = "SQL Error occurred while getting already subscribed device ids for given device Id list.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateSubscriptions(int tenantId, String updateBy, List<String> paramList, int releaseId,
|
||||
String subType, String action) throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
String sql = "UPDATE ";
|
||||
if (SubsciptionType.USER.toString().equalsIgnoreCase(subType)) {
|
||||
sql += "AP_USER_SUBSCRIPTION SET ";
|
||||
@ -583,11 +616,13 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
stmt.executeBatch();
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
String msg = "Error occurred while obtaining the DB connection to update the user subscriptions of application.";
|
||||
String msg = "Error occurred while obtaining the DB connection to update the user subscriptions of "
|
||||
+ "application.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred when obtaining database connection for updating the user subscriptions of application.";
|
||||
String msg = "Error occurred when obtaining database connection for updating the user subscriptions of "
|
||||
+ "application.";
|
||||
log.error(msg);
|
||||
throw new ApplicationManagementDAOException(msg, e);
|
||||
}
|
||||
@ -596,9 +631,8 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
@Override
|
||||
public List<Integer> getDeviceSubIdsForOperation(int operationId, int tenantId)
|
||||
throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
List<Integer> deviceSubIds = new ArrayList<>();
|
||||
String sql = "SELECT "
|
||||
+ "ID "
|
||||
@ -631,9 +665,8 @@ public class GenericSubscriptionDAOImpl extends AbstractDAOImpl implements Subsc
|
||||
@Override
|
||||
public boolean updateDeviceSubStatus(int deviceId, List<Integer> deviceSubIds, String status, int tenantId)
|
||||
throws ApplicationManagementDAOException {
|
||||
Connection conn;
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
Connection conn = this.getDBConnection();
|
||||
int index = 1;
|
||||
StringJoiner joiner = new StringJoiner(",",
|
||||
"UPDATE AP_DEVICE_SUBSCRIPTION SET STATUS = ? "
|
||||
|
||||
@ -21,7 +21,6 @@ import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.device.application.mgt.common.exception.DBConnectionException;
|
||||
import org.wso2.carbon.device.application.mgt.core.dao.VisibilityDAO;
|
||||
import org.wso2.carbon.device.application.mgt.core.util.DAOUtil;
|
||||
import org.wso2.carbon.device.application.mgt.core.dao.impl.AbstractDAOImpl;
|
||||
import org.wso2.carbon.device.application.mgt.core.exception.VisibilityManagementDAOException;
|
||||
|
||||
@ -43,16 +42,18 @@ public class GenericVisibilityDAOImpl extends AbstractDAOImpl implements Visibil
|
||||
public void addUnrestrictedRoles(List<String> unrestrictedRoles, int applicationId, int tenantId) throws
|
||||
VisibilityManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to add unrestricted roles");
|
||||
log.debug("Request received in DAO Layer to add unrestricted roles for application which has application"
|
||||
+ " ID " + applicationId);
|
||||
}
|
||||
Connection conn;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet rs = null;
|
||||
String sql = "INSERT INTO AP_UNRESTRICTED_ROLE (ROLE, TENANT_ID, AP_APP_ID) VALUES (?, ?, ?)";
|
||||
String sql = "INSERT INTO "
|
||||
+ "AP_UNRESTRICTED_ROLE "
|
||||
+ "(ROLE, "
|
||||
+ "TENANT_ID, "
|
||||
+ "AP_APP_ID) "
|
||||
+ "VALUES (?, ?, ?)";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
conn.setAutoCommit(false);
|
||||
stmt = conn.prepareStatement(sql);
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
for (String role : unrestrictedRoles) {
|
||||
stmt.setString(1, role);
|
||||
stmt.setInt(2, tenantId);
|
||||
@ -60,100 +61,71 @@ public class GenericVisibilityDAOImpl extends AbstractDAOImpl implements Visibil
|
||||
stmt.addBatch();
|
||||
}
|
||||
stmt.executeBatch();
|
||||
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new VisibilityManagementDAOException("Error occurred while obtaining the DB connection when adding roles", e);
|
||||
String msg = "Error occurred while obtaining the DB connection when adding unrestricted roles for "
|
||||
+ "application which has Id " + applicationId;
|
||||
log.error(msg);
|
||||
throw new VisibilityManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new VisibilityManagementDAOException("Error occurred while adding unrestricted roles", e);
|
||||
} finally {
|
||||
DAOUtil.cleanupResources(stmt, rs);
|
||||
String msg = "Error occurred while executing query to add unrestricted roles for application which has Id "
|
||||
+ applicationId + ". Executed query " + sql;
|
||||
log.error(msg);
|
||||
throw new VisibilityManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getUnrestrictedRoles(int applicationId, int tenantId) throws VisibilityManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to get unrestricted roles");
|
||||
log.debug("Request received in DAO Layer to get unrestricted roles for application which has application "
|
||||
+ "ID " + applicationId);
|
||||
}
|
||||
Connection conn;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet rs = null;
|
||||
List<String> unrestrictedRoles = new ArrayList<>();
|
||||
String sql = "SELECT ROLE "
|
||||
+ "FROM AP_UNRESTRICTED_ROLE "
|
||||
+ "WHERE AP_APP_ID = ? AND TENANT_ID = ?";
|
||||
+ "WHERE AP_APP_ID = ? AND "
|
||||
+ "TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
conn.setAutoCommit(false);
|
||||
stmt = conn.prepareStatement(sql);
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setInt(1, applicationId);
|
||||
stmt.setInt(2, tenantId);
|
||||
rs = stmt.executeQuery();
|
||||
|
||||
try (ResultSet rs = stmt.executeQuery()) {
|
||||
while (rs.next()) {
|
||||
unrestrictedRoles.add(rs.getString("ROLE"));
|
||||
}
|
||||
return unrestrictedRoles;
|
||||
|
||||
}
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new VisibilityManagementDAOException("Error occurred while obtaining the DB connection when adding roles", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to get unrestricted roles for application "
|
||||
+ "which has application Id " + applicationId;
|
||||
log.error(msg);
|
||||
throw new VisibilityManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new VisibilityManagementDAOException("Error occurred while adding unrestricted roles", e);
|
||||
} finally {
|
||||
DAOUtil.cleanupResources(stmt, rs);
|
||||
String msg = "Error occurred while executing query to get unrestricted roles for application which has "
|
||||
+ "application Id " + applicationId + ". Executed query: " + sql;
|
||||
log.error(msg);
|
||||
throw new VisibilityManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public List<String> getUnrestrictedRolesByUUID(String uuid, int tenantId) throws VisibilityManagementDAOException {
|
||||
public void deleteUnrestrictedRoles(List<String> unrestrictedRoles, int applicationId, int tenantId)
|
||||
throws VisibilityManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to get unrestricted roles for UUID: " + uuid);
|
||||
log.debug("Request received in DAO Layer to delete unrestricted roles of application which has "
|
||||
+ "application Id " + applicationId);
|
||||
}
|
||||
Connection conn;
|
||||
List<String> unrestrictedRoles = new ArrayList<>();
|
||||
String sql = "SELECT ROLE FROM AP_UNRESTRICTED_ROLE "
|
||||
+ "WHERE "
|
||||
+ "AP_APP_ID = (SELECT AR.AP_APP_ID FROM AP_APP_RELEASE AR WHERE AR.UUID = ? AND AR.TENANT_ID = ? ) "
|
||||
+ "AND TENANT_ID = ?";
|
||||
String sql = "DELETE "
|
||||
+ "FROM AP_UNRESTRICTED_ROLE "
|
||||
+ "WHERE AP_APP_ID = ? AND "
|
||||
+ "ROLE = ? AND "
|
||||
+ "TENANT_ID = ?";
|
||||
try {
|
||||
conn = this.getDBConnection();
|
||||
conn.setAutoCommit(false);
|
||||
Connection conn = this.getDBConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
stmt.setString(1, uuid);
|
||||
stmt.setInt(2, tenantId);
|
||||
stmt.setInt(3, tenantId);
|
||||
try (ResultSet rs = stmt.executeQuery();) {
|
||||
while (rs.next()) {
|
||||
unrestrictedRoles.add(rs.getString("ROLE"));
|
||||
}
|
||||
return unrestrictedRoles;
|
||||
}
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new VisibilityManagementDAOException(
|
||||
"Error occurred while obtaining the DB connection when getting unrestricted roles for UUID: "
|
||||
+ uuid, e);
|
||||
} catch (SQLException e) {
|
||||
throw new VisibilityManagementDAOException(
|
||||
"Error occurred while getting unrestricted roles for UUID: " + uuid, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteUnrestrictedRoles(List<String> unrestrictedRoles, int applicationId, int tenantId) throws VisibilityManagementDAOException {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Request received in DAO Layer to delete unrestricted roles");
|
||||
}
|
||||
Connection conn;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet rs = null;
|
||||
String sql = "DELETE FROM AP_UNRESTRICTED_ROLE WHERE AP_APP_ID = ? AND ROLE = ? AND TENANT_ID = ?;";
|
||||
try{
|
||||
conn = this.getDBConnection();
|
||||
conn.setAutoCommit(false);
|
||||
stmt = conn.prepareStatement(sql);
|
||||
|
||||
for (String role : unrestrictedRoles) {
|
||||
stmt.setInt(1, applicationId);
|
||||
stmt.setString(2, role);
|
||||
@ -161,13 +133,17 @@ public class GenericVisibilityDAOImpl extends AbstractDAOImpl implements Visibil
|
||||
stmt.addBatch();
|
||||
}
|
||||
stmt.executeBatch();
|
||||
|
||||
}
|
||||
} catch (DBConnectionException e) {
|
||||
throw new VisibilityManagementDAOException("Error occurred while obtaining the DB connection when adding roles", e);
|
||||
String msg = "Error occurred while obtaining the DB connection to delete unrestricted roles of an "
|
||||
+ "application which has application Id " + applicationId;
|
||||
log.error(msg);
|
||||
throw new VisibilityManagementDAOException(msg, e);
|
||||
} catch (SQLException e) {
|
||||
throw new VisibilityManagementDAOException("Error occurred while adding unrestricted roles", e);
|
||||
} finally {
|
||||
DAOUtil.cleanupResources(stmt, rs);
|
||||
String msg = "Error occurred while executing query to delete unrestricted roles of an application which has"
|
||||
+ " application Id " + applicationId + ". executed query: " + sql;
|
||||
log.error(msg);
|
||||
throw new VisibilityManagementDAOException(msg, e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -294,7 +294,8 @@ public class ReviewManagerImpl implements ReviewManager {
|
||||
if (reviewDTO.getRootParentId() == -1 && reviewDTO.getImmediateParentId() == -1) {
|
||||
if (!reviewDTO.getReleaseUuid().equals(uuid)) {
|
||||
isActiveReview = false;
|
||||
} else if (updatingReview.getRating() > 0 && updatingReview.getRating() != reviewDTO.getRating()) {
|
||||
} else {
|
||||
if (updatingReview.getRating() > 0 && updatingReview.getRating() != reviewDTO.getRating()) {
|
||||
Runnable task = () -> ReviewManagerImpl.this
|
||||
.calculateRating(updatingReview.getRating(), reviewDTO.getRating(), uuid, tenantId);
|
||||
new Thread(task).start();
|
||||
@ -303,6 +304,7 @@ public class ReviewManagerImpl implements ReviewManager {
|
||||
if (!reviewDTO.getContent().equals(updatingReview.getContent())) {
|
||||
reviewDTO.setContent(updatingReview.getContent());
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (!reviewDTO.getReleaseUuid().equals(uuid)) {
|
||||
String msg = "You are trying to update reply comment, but associated application release UUID and "
|
||||
@ -775,7 +777,7 @@ public class ReviewManagerImpl implements ReviewManager {
|
||||
List<String> uuids = applicationDTO.getApplicationReleaseDTOs().stream().map(ApplicationReleaseDTO::getUuid)
|
||||
.collect(Collectors.toList());
|
||||
List<Integer> appRatings = this.reviewDAO.getAllAppRatingValues(uuids, tenantId);
|
||||
double appAverageRatingValue = appRatings.stream().mapToDouble(x -> x).average().orElse(Double.NaN);
|
||||
double appAverageRatingValue = appRatings.stream().mapToDouble(x -> x).average().orElse(0.0);
|
||||
this.applicationDAO.updateApplicationRating(uuid, appAverageRatingValue, tenantId);
|
||||
} catch (ApplicationManagementDAOException e) {
|
||||
String msg = "Error occurred when getting application data or updating application rating value.";
|
||||
|
||||
@ -29,11 +29,8 @@ import org.wso2.carbon.device.application.mgt.core.util.APIUtil;
|
||||
import org.wso2.carbon.device.application.mgt.store.api.services.admin.ReviewManagementStoreAdminAPI;
|
||||
|
||||
import javax.ws.rs.DELETE;
|
||||
import javax.ws.rs.DefaultValue;
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.PathParam;
|
||||
import javax.ws.rs.QueryParam;
|
||||
import javax.ws.rs.core.Response;
|
||||
|
||||
/**
|
||||
|
||||
@ -81,7 +81,6 @@ CREATE TABLE IF NOT EXISTS AP_APP_LIFECYCLE_STATE(
|
||||
UPDATED_BY VARCHAR(100) NOT NULL,
|
||||
UPDATED_AT TIMESTAMP NOT NULL,
|
||||
AP_APP_RELEASE_ID INTEGER NOT NULL,
|
||||
AP_APP_ID INTEGER NOT NULL,
|
||||
REASON TEXT DEFAULT NULL,
|
||||
PRIMARY KEY (ID),
|
||||
CONSTRAINT fk_AP_APP_LIFECYCLE_STATE_AP_APP_RELEASE1
|
||||
|
||||
Loading…
Reference in New Issue
Block a user