use of org.wso2.carbon.humantask.client.api.types in project carbon-apimgt by wso2.
the class PoliciesApiServiceImpl method deletePolicy.
private Response deletePolicy(String policyId, APIMgtAdminService.PolicyLevel tierLevel) {
try {
APIMgtAdminService apiMgtAdminService = RestApiUtil.getAPIMgtAdminService();
apiMgtAdminService.deletePolicyByUuid(policyId, tierLevel);
return Response.ok().build();
} catch (APIManagementException e) {
String errorMessage = "Error occurred while deleting a Policy uuid : " + policyId;
Map<String, String> paramList = new HashMap<>();
paramList.put(APIMgtConstants.ExceptionsConstants.TIER, policyId);
org.wso2.carbon.apimgt.rest.api.common.dto.ErrorDTO errorDTO = RestApiUtil.getErrorDTO(e.getErrorHandler(), paramList);
log.error(errorMessage, e);
return Response.status(e.getErrorHandler().getHttpStatusCode()).entity(errorDTO).build();
}
}
use of org.wso2.carbon.humantask.client.api.types in project carbon-apimgt by wso2.
the class PoliciesApiServiceImpl method policiesThrottlingApplicationGet.
/**
* Returns all Application Policies deployed in the system
*
* @param ifNoneMatch If-None-Match header value
* @param ifModifiedSince If-Modified-Since header value
* @param request msf4j request object
* @return Response object Response containing the Application Policy list {@link ApplicationThrottlePolicyListDTO}
* @throws NotFoundException if an error occurred when particular resource does not exits in the system.
*/
@Override
public Response policiesThrottlingApplicationGet(String ifNoneMatch, String ifModifiedSince, Request request) throws NotFoundException {
if (log.isDebugEnabled()) {
log.debug("Received Application Throttle Policy GET request");
}
try {
APIMgtAdminService apiMgtAdminService = RestApiUtil.getAPIMgtAdminService();
List<ApplicationPolicy> policies = apiMgtAdminService.getApplicationPolicies();
ApplicationThrottlePolicyListDTO applicationThrottlePolicyListDTO = ApplicationThrottlePolicyMappingUtil.fromApplicationPolicyArrayToListDTO(policies);
return Response.ok().entity(applicationThrottlePolicyListDTO).build();
} catch (APIManagementException e) {
String errorMessage = "Error occurred while retrieving Application Policies";
org.wso2.carbon.apimgt.rest.api.common.dto.ErrorDTO errorDTO = RestApiUtil.getErrorDTO(e.getErrorHandler());
log.error(errorMessage, e);
return Response.status(e.getErrorHandler().getHttpStatusCode()).entity(errorDTO).build();
}
}
use of org.wso2.carbon.humantask.client.api.types in project carbon-apimgt by wso2.
the class ApiDAOImpl method addAPIRelatedInformation.
/**
* Method for adding API related information
*
* @param connection DB Connection
* @param statement PreparedStatement
* @param api API object
* @throws SQLException if error occurs while accessing data layer
*/
private void addAPIRelatedInformation(Connection connection, PreparedStatement statement, final API api) throws SQLException, org.wso2.carbon.apimgt.core.exception.APIMgtDAOException {
String apiPrimaryKey = api.getId();
statement.setString(1, api.getProvider());
statement.setString(2, api.getName());
statement.setString(3, api.getContext());
statement.setString(4, api.getVersion());
statement.setBoolean(5, api.isDefaultVersion());
statement.setString(6, api.getDescription());
statement.setString(7, api.getVisibility().toString());
statement.setBoolean(8, api.isResponseCachingEnabled());
statement.setBoolean(9, api.hasOwnGateway());
statement.setInt(10, api.getCacheTimeout());
statement.setString(11, apiPrimaryKey);
BusinessInformation businessInformation = api.getBusinessInformation();
statement.setString(12, businessInformation.getTechnicalOwner());
statement.setString(13, businessInformation.getTechnicalOwnerEmail());
statement.setString(14, businessInformation.getBusinessOwner());
statement.setString(15, businessInformation.getBusinessOwnerEmail());
statement.setString(16, api.getLifecycleInstanceId());
statement.setString(17, api.getLifeCycleStatus());
CorsConfiguration corsConfiguration = api.getCorsConfiguration();
statement.setBoolean(18, corsConfiguration.isEnabled());
statement.setString(19, String.join(",", corsConfiguration.getAllowOrigins()));
statement.setBoolean(20, corsConfiguration.isAllowCredentials());
statement.setString(21, String.join(",", corsConfiguration.getAllowHeaders()));
statement.setString(22, String.join(",", corsConfiguration.getAllowMethods()));
statement.setInt(23, getApiTypeId(connection, ApiType.STANDARD));
statement.setString(24, api.getCreatedBy());
statement.setTimestamp(25, Timestamp.valueOf(LocalDateTime.now()));
statement.setTimestamp(26, Timestamp.valueOf(LocalDateTime.now()));
statement.setString(27, api.getCopiedFromApiId());
statement.setString(28, api.getUpdatedBy());
statement.setString(29, APILCWorkflowStatus.APPROVED.toString());
statement.setInt(30, api.getSecurityScheme());
statement.execute();
if (API.Visibility.RESTRICTED == api.getVisibility()) {
addVisibleRole(connection, apiPrimaryKey, api.getVisibleRoles());
}
addTagsMapping(connection, apiPrimaryKey, api.getTags());
addLabelMapping(connection, apiPrimaryKey, api.getLabels());
addGatewayConfig(connection, apiPrimaryKey, api.getGatewayConfig(), api.getCreatedBy());
addTransports(connection, apiPrimaryKey, api.getTransport());
addUrlMappings(connection, api.getUriTemplates().values(), apiPrimaryKey);
addSubscriptionPolicies(connection, api.getPolicies(), apiPrimaryKey);
addEndPointsForApi(connection, apiPrimaryKey, api.getEndpoint());
addAPIDefinition(connection, apiPrimaryKey, api.getApiDefinition(), api.getCreatedBy());
addAPIPermission(connection, api.getPermissionMap(), apiPrimaryKey);
if (api.getThreatProtectionPolicies() != null) {
addThreatProtectionPolicies(connection, apiPrimaryKey, api.getThreatProtectionPolicies());
}
if (api.getApiPolicy() != null) {
addApiPolicy(connection, api.getApiPolicy().getUuid(), apiPrimaryKey);
}
}
use of org.wso2.carbon.humantask.client.api.types in project carbon-apimgt by wso2.
the class APISubscriptionDAOImpl method addAPISubscription.
/**
* Create a new Subscription
*
* @param uuid UUID of new subscription
* @param apiId API ID
* @param appId Application ID
* @param policyId Subscription tier's policy id
* @param status {@link org.wso2.carbon.apimgt.core.util.APIMgtConstants.SubscriptionStatus} Subscription state
* @throws APIMgtDAOException If failed to add subscription.
*/
@Override
public void addAPISubscription(String uuid, String apiId, String appId, String policyId, APIMgtConstants.SubscriptionStatus status) throws APIMgtDAOException {
try (Connection conn = DAOUtil.getConnection()) {
conn.setAutoCommit(false);
try {
createSubscription(apiId, appId, uuid, policyId, status, conn);
conn.commit();
} catch (SQLException ex) {
conn.rollback();
throw new APIMgtDAOException(DAOUtil.DAO_ERROR_PREFIX + "adding api subscription(subscriptionId: " + uuid + ", apiId: " + apiId + ", appId: " + appId + ", policyId: " + policyId + ", status: " + status + ")", ex);
} finally {
conn.setAutoCommit(DAOUtil.isAutoCommit());
}
} catch (SQLException e) {
throw new APIMgtDAOException(DAOUtil.DAO_ERROR_PREFIX + "adding api subscription(subscriptionId: " + uuid + ", apiId: " + apiId + ", appId: " + appId + ", policyId: " + policyId + ", status: " + status + ")", e);
}
}
use of org.wso2.carbon.humantask.client.api.types in project carbon-apimgt by wso2.
the class DAOIntegrationTestBase method setUp.
@BeforeMethod
public void setUp() throws Exception {
String sqlFilePath = null;
if (H2.equals(database)) {
((H2DataSource) dataSource).resetDB();
sqlFilePath = ".." + File.separator + ".." + File.separator + ".." + File.separator + "features" + File.separator + "apimgt" + File.separator + "org.wso2.carbon.apimgt.core.feature" + File.separator + "resources" + File.separator + "dbscripts" + File.separator + "h2.sql";
} else if (MYSQL.contains(database)) {
((MySQLDataSource) dataSource).resetDB();
sqlFilePath = ".." + File.separator + ".." + File.separator + ".." + File.separator + "features" + File.separator + "apimgt" + File.separator + "org.wso2.carbon.apimgt.core.feature" + File.separator + "resources" + File.separator + "dbscripts" + File.separator + "mysql.sql";
} else if (POSTGRES.contains(database)) {
((PostgreDataSource) dataSource).resetDB();
sqlFilePath = ".." + File.separator + ".." + File.separator + ".." + File.separator + "features" + File.separator + "apimgt" + File.separator + "org.wso2.carbon.apimgt.core.feature" + File.separator + "resources" + File.separator + "dbscripts" + File.separator + "postgres.sql";
} else if (MSSQL.contains(database)) {
((MSSQLDataSource) dataSource).resetDB();
sqlFilePath = ".." + File.separator + ".." + File.separator + ".." + File.separator + "features" + File.separator + "apimgt" + File.separator + "org.wso2.carbon.apimgt.core.feature" + File.separator + "resources" + File.separator + "dbscripts" + File.separator + "mssql.sql";
} else if (ORACLE.contains(database)) {
((OracleDataSource) dataSource).resetDB();
sqlFilePath = ".." + File.separator + ".." + File.separator + ".." + File.separator + "features" + File.separator + "apimgt" + File.separator + "org.wso2.carbon.apimgt.core.feature" + File.separator + "resources" + File.separator + "dbscripts" + File.separator + "oracle.sql";
}
DAOUtil.clearDataSource();
DAOUtil.initialize(dataSource);
try (Connection connection = DAOUtil.getConnection()) {
DBScriptRunnerUtil.executeSQLScript(sqlFilePath, connection);
}
PolicyDAO policyDAO = DAOFactory.getPolicyDAO();
SampleTestObjectCreator.createDefaultPolicy(policyDAO);
}
Aggregations