diff --git a/modules/integration/tests-common/integration-test-utils/src/main/java/org/wso2/am/integration/test/impl/RestAPIAdminImpl.java b/modules/integration/tests-common/integration-test-utils/src/main/java/org/wso2/am/integration/test/impl/RestAPIAdminImpl.java index 7329ed75df..d3690ef4df 100644 --- a/modules/integration/tests-common/integration-test-utils/src/main/java/org/wso2/am/integration/test/impl/RestAPIAdminImpl.java +++ b/modules/integration/tests-common/integration-test-utils/src/main/java/org/wso2/am/integration/test/impl/RestAPIAdminImpl.java @@ -31,6 +31,8 @@ import org.wso2.am.integration.clients.admin.api.ApplicationPolicyIndividualApi; import org.wso2.am.integration.clients.admin.api.CustomRulesCollectionApi; import org.wso2.am.integration.clients.admin.api.CustomRulesIndividualApi; +import org.wso2.am.integration.clients.admin.api.DenyPoliciesCollectionApi; +import org.wso2.am.integration.clients.admin.api.DenyPolicyIndividualApi; import org.wso2.am.integration.clients.admin.api.EnvironmentApi; import org.wso2.am.integration.clients.admin.api.EnvironmentCollectionApi; import org.wso2.am.integration.clients.admin.api.KeyManagerCollectionApi; @@ -48,6 +50,7 @@ import org.wso2.am.integration.clients.admin.api.dto.APICategoryListDTO; import org.wso2.am.integration.clients.admin.api.dto.ApplicationListDTO; import org.wso2.am.integration.clients.admin.api.dto.ApplicationThrottlePolicyDTO; +import org.wso2.am.integration.clients.admin.api.dto.BlockingConditionDTO; import org.wso2.am.integration.clients.admin.api.dto.CustomRuleDTO; import org.wso2.am.integration.clients.admin.api.dto.EnvironmentDTO; import org.wso2.am.integration.clients.admin.api.dto.EnvironmentListDTO; @@ -83,6 +86,8 @@ public class RestAPIAdminImpl { private SubscriptionPolicyCollectionApi subscriptionPolicyCollectionApi = new SubscriptionPolicyCollectionApi(); private CustomRulesIndividualApi customRulesIndividualApi = new CustomRulesIndividualApi(); private CustomRulesCollectionApi customRulesCollectionApi = new CustomRulesCollectionApi(); + private DenyPolicyIndividualApi denyPolicyIndividualApi = new DenyPolicyIndividualApi(); + private DenyPoliciesCollectionApi denyPolicyCollectionApi = new DenyPoliciesCollectionApi(); private AdvancedPolicyIndividualApi advancedPolicyIndividualApi = new AdvancedPolicyIndividualApi(); private AdvancedPolicyCollectionApi advancedPolicyCollectionApi = new AdvancedPolicyCollectionApi(); private ApplicationCollectionApi applicationCollectionApi = new ApplicationCollectionApi(); @@ -154,6 +159,8 @@ public RestAPIAdminImpl(String username, String password, String tenantDomain, S subscriptionPolicyCollectionApi.setApiClient(apiAdminClient); customRulesIndividualApi.setApiClient(apiAdminClient); customRulesCollectionApi.setApiClient(apiAdminClient); + denyPolicyCollectionApi.setApiClient(apiAdminClient); + denyPolicyIndividualApi.setApiClient(apiAdminClient); advancedPolicyIndividualApi.setApiClient(apiAdminClient); advancedPolicyCollectionApi.setApiClient(apiAdminClient); applicationCollectionApi.setApiClient(apiAdminClient); @@ -415,6 +422,43 @@ public ApiResponse deleteCustomThrottlingPolicy(String policyId) throws Ap return customRulesIndividualApi.throttlingPoliciesCustomRuleIdDeleteWithHttpInfo(policyId, null, null); } + /** + * Creates an deny throttling policy. + * + * @param denyPolicyDTO deny throttling policy DTO to be added. + * @return API response returned by API call. + * @throws ApiException if an error occurs while creating the deny throttling policy. + */ + public ApiResponse addDenyThrottlingPolicy(BlockingConditionDTO denyPolicyDTO) throws ApiException { + + return denyPolicyCollectionApi + .throttlingDenyPoliciesPostWithHttpInfo(Constants.APPLICATION_JSON, denyPolicyDTO); + } + + /** + * Retrieves a deny throttling policy. + * + * @return API response returned by API call. + * @throws ApiException if an error occurs while retrieving the deny throttling policy. + */ + public ApiResponse getDenyThrottlingPolicy(String policyId) throws ApiException { + + return denyPolicyIndividualApi + .throttlingDenyPolicyConditionIdGetWithHttpInfo(policyId, null, null); + } + + /** + * Deletes a deny throttling policy. + * + * @param policyId policy id of the deny throttling policy to be deleted. + * @return API response returned by API call. + * @throws ApiException if an error occurs while deleting the deny throttling policy. + */ + public ApiResponse deleteDenyThrottlingPolicy(String policyId) throws ApiException { + + return denyPolicyIndividualApi.throttlingDenyPolicyConditionIdDeleteWithHttpInfo(policyId, null, null); + } + /** * This method is used to create an advanced throttling policy. *