Search in sources :

Example 11 with DataAccessException

use of org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException in project carbon-identity-framework by wso2.

the class SecretDAOImpl method addSecretType.

@Override
public void addSecretType(SecretType secretType) throws SecretManagementException {
    NamedJdbcTemplate jdbcTemplate = getNewTemplate();
    try {
        jdbcTemplate.executeInsert(SQLConstants.INSERT_SECRET_TYPE, preparedStatement -> {
            preparedStatement.setString(DB_SCHEMA_COLUMN_NAME_ID, secretType.getId());
            preparedStatement.setString(DB_SCHEMA_COLUMN_NAME_NAME, secretType.getName());
            preparedStatement.setString(DB_SCHEMA_COLUMN_NAME_DESCRIPTION, secretType.getDescription());
        }, secretType, false);
    } catch (DataAccessException e) {
        throw handleServerException(ERROR_CODE_ADD_SECRET_TYPE, secretType.getName(), e);
    }
}
Also used : NamedJdbcTemplate(org.wso2.carbon.database.utils.jdbc.NamedJdbcTemplate) DataAccessException(org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException)

Example 12 with DataAccessException

use of org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException in project carbon-identity-framework by wso2.

the class UserFunctionalityManagerDAOImpl method deleteMappingForUser.

/**
 * {@inheritDoc}
 */
@Override
public void deleteMappingForUser(String userId, int tenantId, String functionalityIdentifier) throws UserFunctionalityManagementServerException {
    JdbcTemplate jdbcTemplate = JdbcUtils.getNewTemplate();
    try {
        jdbcTemplate.executeUpdate(UserFunctionalityMgtConstants.SqlQueries.DELETE_FUNCTIONALITY_MAPPING, preparedStatement -> {
            preparedStatement.setString(1, userId);
            preparedStatement.setInt(2, tenantId);
            preparedStatement.setString(3, functionalityIdentifier);
        });
    } catch (DataAccessException e) {
        String message = String.format("Error occurred while deleting functionality from DB for functionality Id: %s, user " + "Id: %s and tenant Id: %d.", functionalityIdentifier, userId, tenantId);
        if (log.isDebugEnabled()) {
            log.debug(message, e);
        }
        throw new UserFunctionalityManagementServerException(message, e);
    }
}
Also used : JdbcTemplate(org.wso2.carbon.database.utils.jdbc.JdbcTemplate) UserFunctionalityManagementServerException(org.wso2.carbon.identity.user.functionality.mgt.exception.UserFunctionalityManagementServerException) DataAccessException(org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException)

Example 13 with DataAccessException

use of org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException in project carbon-identity-framework by wso2.

the class UserFunctionalityManagerDAOImpl method getFunctionalityLockStatus.

/**
 * {@inheritDoc}
 */
@Override
public FunctionalityLockStatus getFunctionalityLockStatus(String userId, int tenantId, String functionalityIdentifier) throws UserFunctionalityManagementServerException {
    FunctionalityLockStatus functionalityLockStatus;
    JdbcTemplate jdbcTemplate = JdbcUtils.getNewTemplate();
    try {
        functionalityLockStatus = jdbcTemplate.fetchSingleRecord(UserFunctionalityMgtConstants.SqlQueries.GET_FUNCTIONALITY_LOCK_STATUS, ((resultSet, i) -> new FunctionalityLockStatus(resultSet.getBoolean("IS_FUNCTIONALITY_LOCKED"), resultSet.getLong("FUNCTIONALITY_UNLOCK_TIME"), resultSet.getString("FUNCTIONALITY_LOCK_REASON_CODE"), resultSet.getString("FUNCTIONALITY_LOCK_REASON"))), preparedStatement -> {
            preparedStatement.setString(1, userId);
            preparedStatement.setInt(2, tenantId);
            preparedStatement.setString(3, functionalityIdentifier);
        });
    } catch (DataAccessException e) {
        String message = String.format("Error occurred while retrieving functionality lock status from DB for " + "functionality identifier: %s, user Id: %s and tenant Id: %d.", functionalityIdentifier, userId, tenantId);
        if (log.isDebugEnabled()) {
            log.debug(message, e);
        }
        throw new UserFunctionalityManagementServerException(message, e);
    }
    return functionalityLockStatus;
}
Also used : UserFunctionalityMgtConstants(org.wso2.carbon.identity.user.functionality.mgt.UserFunctionalityMgtConstants) JdbcTemplate(org.wso2.carbon.database.utils.jdbc.JdbcTemplate) UserFunctionalityManagementException(org.wso2.carbon.identity.user.functionality.mgt.exception.UserFunctionalityManagementException) HashMap(java.util.HashMap) UserFunctionalityManager(org.wso2.carbon.identity.user.functionality.mgt.UserFunctionalityManager) UUID(java.util.UUID) FunctionalityLockStatus(org.wso2.carbon.identity.user.functionality.mgt.model.FunctionalityLockStatus) PreparedStatement(java.sql.PreparedStatement) SQLException(java.sql.SQLException) DataAccessException(org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException) UserFunctionalityManagementServerException(org.wso2.carbon.identity.user.functionality.mgt.exception.UserFunctionalityManagementServerException) Log(org.apache.commons.logging.Log) JdbcUtils(org.wso2.carbon.identity.core.util.JdbcUtils) LogFactory(org.apache.commons.logging.LogFactory) UserFunctionalityManagerImpl(org.wso2.carbon.identity.user.functionality.mgt.UserFunctionalityManagerImpl) UserFunctionalityManagerDAO(org.wso2.carbon.identity.user.functionality.mgt.dao.UserFunctionalityManagerDAO) FunctionalityLockStatus(org.wso2.carbon.identity.user.functionality.mgt.model.FunctionalityLockStatus) JdbcTemplate(org.wso2.carbon.database.utils.jdbc.JdbcTemplate) UserFunctionalityManagementServerException(org.wso2.carbon.identity.user.functionality.mgt.exception.UserFunctionalityManagementServerException) DataAccessException(org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException)

Example 14 with DataAccessException

use of org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException in project carbon-identity-framework by wso2.

the class UserFunctionalityPropertyDAOImpl method deleteAllPropertiesForTenant.

/**
 * {@inheritDoc}
 */
@Override
public void deleteAllPropertiesForTenant(int tenantId) throws UserFunctionalityManagementServerException {
    JdbcTemplate jdbcTemplate = JdbcUtils.getNewTemplate();
    try {
        String query;
        if (isOracleDB()) {
            if (StringUtils.isEmpty(TABLE_NAME)) {
                TABLE_NAME = getOracleTableName();
            }
            query = String.format(UserFunctionalityMgtConstants.SqlQueries.DELETE_ALL_PROPERTIES_FOR_TENANT_ORACLE, TABLE_NAME);
        } else {
            query = UserFunctionalityMgtConstants.SqlQueries.DELETE_ALL_PROPERTIES_FOR_TENANT;
        }
        jdbcTemplate.executeUpdate(query, preparedStatement -> {
            preparedStatement.setInt(1, tenantId);
        });
    } catch (DataAccessException e) {
        String message = String.format("Error occurred while deleting functionality lock properties from DB for tenant" + " Id: %d.", tenantId);
        if (log.isDebugEnabled()) {
            log.debug(message, e);
        }
        throw new UserFunctionalityManagementServerException(message, e);
    }
}
Also used : JdbcTemplate(org.wso2.carbon.database.utils.jdbc.JdbcTemplate) UserFunctionalityManagementServerException(org.wso2.carbon.identity.user.functionality.mgt.exception.UserFunctionalityManagementServerException) DataAccessException(org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException)

Example 15 with DataAccessException

use of org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException in project carbon-identity-framework by wso2.

the class UserFunctionalityPropertyDAOImpl method addProperties.

/**
 * {@inheritDoc}
 */
@Override
public void addProperties(String userId, int tenantId, String functionalityIdentifier, Map<String, String> propertiesToAdd) throws UserFunctionalityManagementServerException {
    JdbcTemplate jdbcTemplate = JdbcUtils.getNewTemplate();
    for (Map.Entry<String, String> entry : propertiesToAdd.entrySet()) {
        String propertyName = entry.getKey();
        String propertyValue = entry.getValue();
        try {
            String query;
            if (isOracleDB()) {
                if (StringUtils.isEmpty(TABLE_NAME)) {
                    TABLE_NAME = getOracleTableName();
                }
                query = String.format(UserFunctionalityMgtConstants.SqlQueries.INSERT_PROPERTY_ORACLE, TABLE_NAME);
            } else {
                query = UserFunctionalityMgtConstants.SqlQueries.INSERT_PROPERTY;
            }
            jdbcTemplate.executeUpdate(query, preparedStatement -> {
                preparedStatement.setString(1, UUID.randomUUID().toString());
                preparedStatement.setString(2, userId);
                preparedStatement.setInt(3, tenantId);
                preparedStatement.setString(4, functionalityIdentifier);
                preparedStatement.setString(5, propertyName);
                preparedStatement.setString(6, propertyValue);
            });
        } catch (DataAccessException e) {
            String message = String.format("Error occurred while adding the property: %s for functionality: %s in user: %s," + " tenant id: %d", propertyName, functionalityIdentifier, userId, tenantId);
            if (log.isDebugEnabled()) {
                log.debug(message, e);
            }
            throw new UserFunctionalityManagementServerException(message, e);
        }
    }
}
Also used : JdbcTemplate(org.wso2.carbon.database.utils.jdbc.JdbcTemplate) HashMap(java.util.HashMap) Map(java.util.Map) UserFunctionalityManagementServerException(org.wso2.carbon.identity.user.functionality.mgt.exception.UserFunctionalityManagementServerException) DataAccessException(org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException)

Aggregations

DataAccessException (org.wso2.carbon.database.utils.jdbc.exceptions.DataAccessException)79 JdbcTemplate (org.wso2.carbon.database.utils.jdbc.JdbcTemplate)58 PreparedStatement (java.sql.PreparedStatement)33 SQLException (java.sql.SQLException)33 List (java.util.List)31 Log (org.apache.commons.logging.Log)29 LogFactory (org.apache.commons.logging.LogFactory)29 TransactionException (org.wso2.carbon.database.utils.jdbc.exceptions.TransactionException)28 ArrayList (java.util.ArrayList)26 SQLIntegrityConstraintViolationException (java.sql.SQLIntegrityConstraintViolationException)25 Map (java.util.Map)25 HashMap (java.util.HashMap)24 HashSet (java.util.HashSet)22 Set (java.util.Set)22 StringUtils (org.apache.commons.lang.StringUtils)22 Timestamp (java.sql.Timestamp)21 IdentityTenantUtil (org.wso2.carbon.identity.core.util.IdentityTenantUtil)21 Date (java.util.Date)19 Calendar (java.util.Calendar)18 JdbcUtils.isH2DB (org.wso2.carbon.identity.core.util.JdbcUtils.isH2DB)18