package org.onap.policy.components;
-import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
-import java.io.IOException;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.nio.file.Path;
import org.onap.policy.common.logging.flexlogger.Logger;
import org.onap.policy.controller.PolicyController;
import org.onap.policy.rest.jpa.FunctionDefinition;
-import org.onap.policy.utils.XACMLPolicyWriterWithPapNotify;
import org.onap.policy.xacml.api.XACMLErrorConstants;
import org.onap.policy.xacml.util.XACMLPolicyScanner;
}
private static String processPolicy() {
- if (LOGGER.isTraceEnabled())
+ if (LOGGER.isTraceEnabled()) {
LOGGER.trace("ENTER");
-
- FileInputStream pIS = null;
- try {
- pIS = new FileInputStream(policyFile);
+ }
+ try (FileInputStream pIS = new FileInputStream(policyFile)){
Object policy = XACMLPolicyScanner.readPolicy(pIS);
if (policy == null)
throw new IllegalArgumentException("Policy File " + policyFile.getName() +
": " + e.getMessage();
LOGGER.error(XACMLErrorConstants.ERROR_DATA_ISSUE + msg, e);
throw new IllegalArgumentException(msg);
- } finally {
- if (pIS != null) {
- try {
- pIS.close();
- } catch (IOException e) {
- LOGGER.warn(e.getMessage(), e);
- }
- }
}
}
super.onFinishScan(root);
}
- @SuppressWarnings("unused")
- private void writeRawXACML() {
- if (LOGGER.isTraceEnabled())
- LOGGER.trace("ENTER");
-
- htmlOut.println("<hr>");
- htmlOut.println("<h3>Raw XACML:</h3>");
-
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- if (rootPolicyObject instanceof PolicySetType) {
- XACMLPolicyWriterWithPapNotify.writePolicyFile(bos, (PolicySetType) rootPolicyObject);
- } else if (rootPolicyObject instanceof PolicyType) {
- XACMLPolicyWriterWithPapNotify.writePolicyFile(bos, (PolicyType) rootPolicyObject);
- }
-
- String xacml = bos.toString();
- xacml = xacml.replaceAll("<", "<");
- xacml = xacml.replaceAll(">", ">");
- htmlOut.println("<pre>");
- htmlOut.println(xacml);
- htmlOut.println("</pre>");
- }
-
@Override
public CallbackResult onPreVisitPolicySet(PolicySetType parent, PolicySetType policySet) {
if (LOGGER.isTraceEnabled())