aboutsummaryrefslogtreecommitdiffstats
path: root/PyPDPServer/src/main/java/org/openecomp/policy/pypdp/controller/PolicyEngineServices.java
diff options
context:
space:
mode:
authorITSERVICES\rb7147 <rb7147@att.com>2017-04-25 11:46:00 -0400
committerITSERVICES\rb7147 <rb7147@att.com>2017-05-03 09:58:17 -0400
commite0addf5b588a1244f9679becd90999dfcb4c3a94 (patch)
tree1212772d6366730266ff0e093c874b07aa716c29 /PyPDPServer/src/main/java/org/openecomp/policy/pypdp/controller/PolicyEngineServices.java
parent39fb0f30472777e4b60d6a7ac8aa4eb9773961ff (diff)
Policy 1707 commit to LF
Change-Id: Ibe6f01d92f9a434c040abb05d5386e89d675ae65 Signed-off-by: ITSERVICES\rb7147 <rb7147@att.com>
Diffstat (limited to 'PyPDPServer/src/main/java/org/openecomp/policy/pypdp/controller/PolicyEngineServices.java')
-rw-r--r--PyPDPServer/src/main/java/org/openecomp/policy/pypdp/controller/PolicyEngineServices.java556
1 files changed, 0 insertions, 556 deletions
diff --git a/PyPDPServer/src/main/java/org/openecomp/policy/pypdp/controller/PolicyEngineServices.java b/PyPDPServer/src/main/java/org/openecomp/policy/pypdp/controller/PolicyEngineServices.java
deleted file mode 100644
index 12a5f25f5..000000000
--- a/PyPDPServer/src/main/java/org/openecomp/policy/pypdp/controller/PolicyEngineServices.java
+++ /dev/null
@@ -1,556 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ECOMP Policy Engine
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.policy.pypdp.controller;
-
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
-
-import java.util.Base64;
-import java.util.Collection;
-import java.util.List;
-import java.util.StringTokenizer;
-import java.util.concurrent.atomic.AtomicLong;
-
-import org.openecomp.policy.api.ConfigRequestParameters;
-import org.openecomp.policy.api.DeletePolicyParameters;
-import org.openecomp.policy.api.EventRequestParameters;
-import org.openecomp.policy.api.NotificationScheme;
-import org.openecomp.policy.api.PolicyParameters;
-import org.openecomp.policy.api.PolicyResponse;
-import org.openecomp.policy.pypdp.ConfigFirewallPolicyRequest;
-import org.openecomp.policy.pypdp.ConfigRequest;
-import org.openecomp.policy.pypdp.DeletePolicyRequest;
-import org.openecomp.policy.pypdp.EventRequest;
-import org.openecomp.policy.pypdp.ListConfigRequest;
-import org.openecomp.policy.pypdp.PolicyCreateUpdateRequest;
-import org.openecomp.policy.pypdp.PushPolicyRequest;
-import org.openecomp.policy.pypdp.authorization.AuthenticationService;
-import org.openecomp.policy.pypdp.authorization.Config;
-import org.openecomp.policy.pypdp.jmx.PyPdpMonitor;
-import org.openecomp.policy.pypdp.model_pojo.PepConfigFirewallPolicyRequest;
-import org.openecomp.policy.pypdp.model_pojo.PepConfigPolicyNameRequest;
-import org.openecomp.policy.pypdp.model_pojo.PepConfigPolicyRequest;
-import org.openecomp.policy.pypdp.model_pojo.PepPushPolicyRequest;
-import org.openecomp.policy.pypdp.model_pojo.PyPolicyConfig;
-import org.openecomp.policy.pypdp.notifications.NotificationController;
-import org.openecomp.policy.std.StdPolicyEngine;
-import org.openecomp.policy.utils.PolicyUtils;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.web.bind.annotation.RestController;
-
-import springfox.documentation.annotations.ApiIgnore;
-
-import org.openecomp.policy.common.logging.eelf.PolicyLogger;
-import org.openecomp.policy.common.im.AdministrativeStateException;
-import org.openecomp.policy.common.im.StandbyStatusException;
-
-@RestController
-@Api(value="Policy Engine Services")
-public class PolicyEngineServices {
- private final NotificationScheme scheme = NotificationScheme.AUTO_ALL_NOTIFICATIONS;
- private final NotificationController handler = new NotificationController();
- private final AtomicLong configCounter = PyPdpMonitor.singleton.getAtomicConfigCounter();
- private final AtomicLong eventCounter = PyPdpMonitor.singleton.getAtomicEventCounter();
- private final AtomicLong configPolicyNameCounter = PyPdpMonitor.singleton.getAtomicConfigPolicyNameCounter();
- private final StdPolicyEngine policyEngine = new StdPolicyEngine(Config.getPDPs(), Config.getPAPs(), Config.getEncodingPAP(), Config.getEncoding(), scheme, handler, Config.getEnvironment(), Config.getClientFile(), Config.isTest());
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value= "Gets the configuration from the PolicyDecisionPoint(PDP)")
- @RequestMapping(value = "/getConfig", method = RequestMethod.POST)
- public @ResponseBody ResponseEntity<Collection<PyPolicyConfig>> createConfigRequest(@RequestBody ConfigRequestParameters pep,@RequestHeader(value="ClientAuth", required=true)String clientEncoding, @RequestHeader(value="X-ECOMP-RequestID", required=false)String requestID) {
- Collection<PyPolicyConfig> policyConfig = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CONFIG");
- } catch (Exception e1) {
- return new ResponseEntity<Collection<PyPolicyConfig>>(policyConfig, HttpStatus.UNAUTHORIZED);
- }
- ConfigRequest configRequest = new ConfigRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- policyConfig = configRequest.run(pep, requestID, userNamePass[0], userNamePass[1]);
- configCounter.incrementAndGet();
- Config.getIntegrityMonitor().endTransaction();
- for(PyPolicyConfig pythonConfig: policyConfig){
- if(pythonConfig.getPolicyConfigMessage()!=null && pythonConfig.getPolicyConfigMessage().contains("PE300")){
- return new ResponseEntity<Collection<PyPolicyConfig>>(policyConfig, HttpStatus.BAD_REQUEST);
- }
- }
- return new ResponseEntity<Collection<PyPolicyConfig>>(policyConfig, HttpStatus.OK);
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value= "Gets the configuration from the PDP")
- @RequestMapping(value = "/listConfig", method = RequestMethod.POST)
- public @ResponseBody ResponseEntity<Collection<String>> createListConfigRequest(@RequestBody ConfigRequestParameters pep,@RequestHeader(value="ClientAuth", required=true)String clientEncoding, @RequestHeader(value="X-ECOMP-RequestID", required=false)String requestID) {
- Collection<String> policyList = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CONFIG");
- } catch (Exception e1) {
- return new ResponseEntity<Collection<String>>(policyList, HttpStatus.UNAUTHORIZED);
- }
- ListConfigRequest listConfigRequest = new ListConfigRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (StandbyStatusException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- policyList = listConfigRequest.run(pep, requestID, userNamePass[0], userNamePass[1]);
-
- configCounter.incrementAndGet();
- Config.getIntegrityMonitor().endTransaction();
-
- for(String response : policyList){
- if(response!=null && response.contains("PE300")){
- return new ResponseEntity<Collection<String>>(policyList, HttpStatus.BAD_REQUEST);
- }
- }
- return new ResponseEntity<Collection<String>>(policyList, HttpStatus.OK);
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value= "Sends the Events specified to the Policy Engine")
- @RequestMapping(value = "/sendEvent", method = RequestMethod.POST)
- public @ResponseBody ResponseEntity<Collection<PolicyResponse>> createEventParameterRequest(@RequestBody EventRequestParameters pep,@RequestHeader(value="ClientAuth", required=true)String clientEncoding, @RequestHeader(value="X-ECOMP-RequestID", required=false) String requestID) {
- Collection<PolicyResponse> policyResponse = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "ACTION");
- } catch (Exception e1) {
- return new ResponseEntity<Collection<PolicyResponse>>(policyResponse, HttpStatus.UNAUTHORIZED);
- }
- EventRequest eventRequest = new EventRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- policyResponse = eventRequest.run(pep, requestID, userNamePass[0], userNamePass[1]);
- eventCounter.incrementAndGet();
- Config.getIntegrityMonitor().endTransaction();
- for(PolicyResponse response: policyResponse ){
- if(response.getPolicyResponseMessage()!=null && response.getPolicyResponseMessage().contains("PE300")){
- return new ResponseEntity<Collection<PolicyResponse>>(policyResponse,HttpStatus.BAD_REQUEST);
- }
- }
- return new ResponseEntity<Collection<PolicyResponse>>(policyResponse,HttpStatus.OK);
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value= "Gets the configuration from the PolicyDecisionPoint(PDP)")
- @RequestMapping(value = "/getConfigByPolicyName", method = RequestMethod.POST)
- @Deprecated
- public @ResponseBody ResponseEntity<Collection<PyPolicyConfig>> createConfigRequest(@RequestBody PepConfigPolicyNameRequest pep,@RequestHeader(value="ClientAuth", required=true)String clientEncoding, @RequestHeader(value="X-ECOMP-RequestID", required=false) String requestID) {
- Collection<PyPolicyConfig> policyConfig = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CONFIG");
- } catch (Exception e1) {
- return new ResponseEntity<Collection<PyPolicyConfig>>(policyConfig, HttpStatus.UNAUTHORIZED);
- }
- ConfigRequest configRequest = new ConfigRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- policyConfig = configRequest.run(pep, requestID, userNamePass[0], userNamePass[1]);
- configPolicyNameCounter.incrementAndGet();
- Config.getIntegrityMonitor().endTransaction();
- return new ResponseEntity<Collection<PyPolicyConfig>>(policyConfig, HttpStatus.OK);
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value="Pushes the specified policy to the PDP Group.")
- @RequestMapping(value = "/pushPolicy", method = RequestMethod.PUT)
- public @ResponseBody ResponseEntity<String> pushPolicyRequest(@RequestBody PepPushPolicyRequest pep,@RequestHeader(value="ClientAuth", required=true)String clientEncoding,
- @RequestHeader(value="X-ECOMP-RequestID", required=false) String requestID) {
- String response = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CREATEPOLICY");
- } catch (Exception e1) {
- return new ResponseEntity<String>(response, HttpStatus.UNAUTHORIZED);
- }
- PushPolicyRequest pushPolicy = new PushPolicyRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- response = pushPolicy.run(pep, requestID, userNamePass[0], userNamePass[1]);
-
- Config.getIntegrityMonitor().endTransaction();
- if (response.contains("BAD REQUEST")||response.contains("PE300")) {
- return new ResponseEntity<String>(response, HttpStatus.BAD_REQUEST);
- } else {
- return new ResponseEntity<String>(response, HttpStatus.OK);
- }
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value="Deletes the specified policy from the PDP Group or PAP.")
- @RequestMapping(value = "/deletePolicy", method = RequestMethod.DELETE)
- public @ResponseBody ResponseEntity<String> deletePolicyRequest(@RequestBody DeletePolicyParameters pep,@RequestHeader(value="ClientAuth", required=true)String clientEncoding,
- @RequestHeader(value="X-ECOMP-RequestID", required=false) String requestID) {
- String response = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "DELETEPOLICY");
- } catch (Exception e1) {
- return new ResponseEntity<String>(response, HttpStatus.UNAUTHORIZED);
- }
- DeletePolicyRequest deletePolicy = new DeletePolicyRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- response = deletePolicy.run(pep, requestID, userNamePass[0], userNamePass[1]);
-
- Config.getIntegrityMonitor().endTransaction();
- if (response.contains("BAD REQUEST")||response.contains("PE300")||response.contains("not exist")||response.contains("Invalid policyName")) {
- return new ResponseEntity<String>(response, HttpStatus.BAD_REQUEST);
- } else if (response.contains("locked down")){
- return new ResponseEntity<String>(response, HttpStatus.ACCEPTED);
- } else if (response.contains("not Authorized")) {
- return new ResponseEntity<String>(response, HttpStatus.FORBIDDEN);
- } else if (response.contains("groupId")) {
- return new ResponseEntity<String>(response, HttpStatus.NOT_FOUND);
- } else if (response.contains("JPAUtils")||response.contains("database")||response.contains("policy file")||
- response.contains("unknown")||response.contains("configuration")) {
- return new ResponseEntity<String>(response, HttpStatus.INTERNAL_SERVER_ERROR);
- } else {
- return new ResponseEntity<String>(response, HttpStatus.OK);
- }
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value= "Creates a Policy based on given Policy Parameters.")
- @RequestMapping(value = "/createPolicy", method = RequestMethod.PUT)
- public @ResponseBody ResponseEntity<String> createRequest(@RequestBody PolicyParameters pep,@RequestHeader(value="ClientAuth", required=true)String clientEncoding,
- @RequestHeader(value="X-ECOMP-RequestID", required=false)String requestID) {
- String response = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CREATEPOLICY");
- } catch (Exception e1) {
- return new ResponseEntity<String>(response, HttpStatus.UNAUTHORIZED);
- }
- PolicyCreateUpdateRequest policyCreateUpdateRequest = new PolicyCreateUpdateRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- response = policyCreateUpdateRequest.run(pep, requestID, "create", userNamePass[0], userNamePass[1]);
-
- Config.getIntegrityMonitor().endTransaction();
- if(response== null || response.contains("BAD REQUEST")||response.contains("PE300")){
- return new ResponseEntity<String>(response, HttpStatus.BAD_REQUEST);
- }
- else if (response.contains("Policy Exist Error")) {
- return new ResponseEntity<String>(response, HttpStatus.CONFLICT);
- } else if (response.contains("PE200")){
- return new ResponseEntity<String>(response, HttpStatus.INTERNAL_SERVER_ERROR);
- } else {
- return new ResponseEntity<String>(response, HttpStatus.OK);
- }
-
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value= "Updates a Policy based on given Policy Parameters.")
- @RequestMapping(value = "/updatePolicy", method = RequestMethod.PUT)
- public @ResponseBody ResponseEntity<String> updateRequest(@RequestBody PolicyParameters pep,@RequestHeader(value="ClientAuth", required=true)String clientEncoding,
- @RequestHeader(value="X-ECOMP-RequestID", required=false) String requestID) {
- String response = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CREATEPOLICY");
- } catch (Exception e1) {
- return new ResponseEntity<String>(response, HttpStatus.UNAUTHORIZED);
- }
- PolicyCreateUpdateRequest policyCreateUpdateRequest = new PolicyCreateUpdateRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- response = policyCreateUpdateRequest.run(pep, requestID, "update", userNamePass[0], userNamePass[1]);
-
- Config.getIntegrityMonitor().endTransaction();
- if (response==null|| response.contains("BAD REQUEST")||response.contains("PE300")){
- return new ResponseEntity<String>(response, HttpStatus.BAD_REQUEST);
- } else if (response.contains("PE200")){
- return new ResponseEntity<String>(response, HttpStatus.INTERNAL_SERVER_ERROR);
- } else {
- return new ResponseEntity<String>(response, HttpStatus.OK);
- }
-
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value= "Creates a Config Policy based on given Policy Parameters.")
- @RequestMapping(value = "/createConfig", method = RequestMethod.PUT)
- @Deprecated
- public @ResponseBody ResponseEntity<String> createConfigRequest(@RequestBody PepConfigPolicyRequest pep, @RequestHeader(value="ClientAuth", required=true)String clientEncoding,
- @RequestHeader(value="X-ECOMP-RequestID", required=false) String requestID) {
- String response = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CREATEPOLICY");
- } catch (Exception e1) {
- return new ResponseEntity<String>(response, HttpStatus.UNAUTHORIZED);
- }
- PolicyCreateUpdateRequest policyCreateUpdateRequest = new PolicyCreateUpdateRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- response = policyCreateUpdateRequest.run(pep, requestID, "create", userNamePass[0], userNamePass[1]);
-
- Config.getIntegrityMonitor().endTransaction();
- if (response!=null && !response.contains("BAD REQUEST")) {
- return new ResponseEntity<String>(response, HttpStatus.OK);
- } else {
- return new ResponseEntity<String>(response, HttpStatus.BAD_REQUEST);
- }
-
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value= "Updates a Config Policy based on given Policy Parameters.")
- @RequestMapping(value = "/updateConfig", method = RequestMethod.PUT)
- @Deprecated
- public @ResponseBody ResponseEntity<String> updateConfigRequest(@RequestBody PepConfigPolicyRequest pep, @RequestHeader(value="ClientAuth", required=true)String clientEncoding,
- @RequestHeader(value="X-ECOMP-RequestID", required=false) String requestID) {
- String response = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CREATEPOLICY");
- } catch (Exception e1) {
- return new ResponseEntity<String>(response, HttpStatus.UNAUTHORIZED);
- }
- PolicyCreateUpdateRequest policyCreateUpdateRequest = new PolicyCreateUpdateRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- response = policyCreateUpdateRequest.run(pep, requestID, "update", userNamePass[0], userNamePass[1]);
-
- Config.getIntegrityMonitor().endTransaction();
- if (response!=null && !response.contains("BAD REQUEST")) {
- return new ResponseEntity<String>(response, HttpStatus.OK);
- } else {
- return new ResponseEntity<String>(response, HttpStatus.BAD_REQUEST);
- }
-
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value = "Creates a Config Firewall Policy")
- @RequestMapping(value = "/createFirewallConfig", method = RequestMethod.PUT)
- @Deprecated
- public @ResponseBody ResponseEntity<String> createFirewallConfigRequest(@RequestBody PepConfigFirewallPolicyRequest pep, @RequestHeader(value="ClientAuth", required=true)String clientEncoding,
- @RequestHeader(value="X-ECOMP-RequestID", required=false) String requestID) {
- String response = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CREATEPOLICY");
- } catch (Exception e1) {
- return new ResponseEntity<String>(response, HttpStatus.UNAUTHORIZED);
- }
- ConfigFirewallPolicyRequest firewallPolicyRequest = new ConfigFirewallPolicyRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- response = firewallPolicyRequest.run(pep, requestID, "create", userNamePass[0], userNamePass[1]);
-
- Config.getIntegrityMonitor().endTransaction();
- if (response!=null && !response.contains("BAD REQUEST")) {
- return new ResponseEntity<String>(response, HttpStatus.OK);
- } else {
- return new ResponseEntity<String>(response, HttpStatus.BAD_REQUEST);
- }
-
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header"),
- @ApiImplicitParam(name ="Environment", required = true, paramType = "Header")
- })
- @ApiOperation(value = "Updates a Config Firewall Policy")
- @RequestMapping(value = "/updateFirewallConfig", method = RequestMethod.PUT)
- @Deprecated
- public @ResponseBody ResponseEntity<String> updateFirewallConfigRequest(@RequestBody PepConfigFirewallPolicyRequest pep, @RequestHeader(value="ClientAuth", required=true)String clientEncoding,
- @RequestHeader(value="X-ECOMP-RequestID", required=false) String requestID) {
- String response = null;
- String[] userNamePass = null;
- try {
- userNamePass = decodeEncoding(clientEncoding, "CREATEPOLICY");
- } catch (Exception e1) {
- return new ResponseEntity<String>(response, HttpStatus.UNAUTHORIZED);
- }
- ConfigFirewallPolicyRequest firewallPolicyRequest = new ConfigFirewallPolicyRequest(policyEngine);
- try{
- Config.getIntegrityMonitor().startTransaction();
- } catch (AdministrativeStateException e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- } catch (Exception e) {
- PolicyLogger.error("Error while starting Transaction " + e);
- }
- response = firewallPolicyRequest.run(pep, requestID, "update", userNamePass[0], userNamePass[1]);
-
- Config.getIntegrityMonitor().endTransaction();
- if (response!=null && !response.contains("BAD REQUEST")) {
- return new ResponseEntity<String>(response, HttpStatus.OK);
- } else {
- return new ResponseEntity<String>(response, HttpStatus.BAD_REQUEST);
- }
-
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header")
- })
- @ApiOperation(value= "Gets the API Services usage Information")
- @ApiIgnore
- @RequestMapping(value = "/count", method = RequestMethod.GET)
- public String getCount() {
- return "Total Config Calls : " + configCounter + "\n"
- +"Total Config calls made using Policy File Name: " + configPolicyNameCounter + "\n"
- + "Total Event Calls : " + eventCounter;
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header")
- })
- @ApiOperation(value = "Gets the PDPs that are listed to provide service.")
- @RequestMapping(value = "/pdps", method = RequestMethod.GET)
- public List<String> listPDPs() {
- return Config.getPDPs();
- }
-
- @ApiImplicitParams({
- @ApiImplicitParam(name ="Authorization", required = true, paramType = "Header")
- })
- @ApiOperation(value = "Gets the PAPs that are listed to provide service.")
- @RequestMapping(value = "/paps", method = RequestMethod.GET)
- public List<String> listPAPs() {
- return Config.getPAPs();
- }
-
- /*
- * Internal Decoding System. to support old and new Calls.
- */
- private String[] decodeEncoding(String clientEncoding, String scope) throws Exception{
- String[] userNamePass = PolicyUtils.decodeBasicEncoding(clientEncoding);
- if(userNamePass==null){
- if(AuthenticationService.clientAuth(clientEncoding)){
- if(AuthenticationService.checkClientScope(clientEncoding, scope)){
- String usernameAndPassword = null;
- byte[] decodedBytes = Base64.getDecoder().decode(clientEncoding);
- usernameAndPassword = new String(decodedBytes, "UTF-8");
- StringTokenizer tokenizer = new StringTokenizer(usernameAndPassword, ":");
- String username = tokenizer.nextToken();
- String password = tokenizer.nextToken();
- userNamePass= new String[]{username, password};
- }
- }
- }
- if(userNamePass==null){
- throw new Exception("Client is Not authrorized to make this call. Please contact PyPDP Admin.");
- }
- return userNamePass;
- }
-} \ No newline at end of file