You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openaz.apache.org by pd...@apache.org on 2015/04/13 17:38:29 UTC
[29/51] [partial] incubator-openaz git commit: Initial seed of merged
of AT&T and JP Morgan code
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-pdp/target/maven-archiver/pom.properties
----------------------------------------------------------------------
diff --git a/openaz-xacml-pdp/target/maven-archiver/pom.properties b/openaz-xacml-pdp/target/maven-archiver/pom.properties
new file mode 100644
index 0000000..7e994fb
--- /dev/null
+++ b/openaz-xacml-pdp/target/maven-archiver/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Tue Apr 07 07:42:36 EDT 2015
+version=0.0.1-SNAPSHOT
+groupId=org.openliberty.openaz
+artifactId=openaz-xacml-pdp
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
----------------------------------------------------------------------
diff --git a/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
new file mode 100644
index 0000000..d6cacb9
--- /dev/null
+++ b/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -0,0 +1,176 @@
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionX500NameMatch.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringNormalize$OPERATION.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMRule.class
+com/att/research/xacmlatt/pdp/policy/FunctionDefinition.class
+com/att/research/xacmlatt/pdp/std/combiners/LegacyPermitOverridesRule.class
+com/att/research/xacmlatt/pdp/std/combiners/PermitUnlessDeny$1.class
+com/att/research/xacmlatt/pdp/policy/AdviceExpression.class
+com/att/research/xacmlatt/pdp/std/StdPolicyFinderResult.class
+com/att/research/xacmlatt/pdp/std/combiners/DenyUnlessPermit.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMMatch.class
+com/att/research/xacmlatt/pdp/policy/CombiningAlgorithmFactory.class
+com/att/research/xacmlatt/pdp/policy/CombiningElement.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBase.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionDateTimeArithmetic$1.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringFunctions$1.class
+com/att/research/xacmlatt/pdp/policy/PolicyFinderResult.class
+com/att/research/xacmlatt/pdp/std/StdPolicyFinderFactory.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMDocumentRepair.class
+com/att/research/xacmlatt/pdp/policy/Match.class
+com/att/research/xacmlatt/pdp/policy/RuleEffect.class
+com/att/research/xacmlatt/pdp/std/combiners/CombiningAlgorithmBase.class
+com/att/research/xacmlatt/pdp/policy/CombiningAlgorithm.class
+com/att/research/xacmlatt/pdp/std/combiners/LegacyDenyOverridesRule$1.class
+com/att/research/xacmlatt/pdp/policy/AttributeAssignmentExpression.class
+com/att/research/xacmlatt/pdp/std/StdEvaluationContextFactory.class
+com/att/research/xacmlatt/pdp/policy/expressions/Apply.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionXPath$OPERATION.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyRepair.class
+com/att/research/xacmlatt/pdp/ATTPDPEngine.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringNormalize$1.class
+com/att/research/xacmlatt/pdp/std/combiners/DenyOverrides$1.class
+com/att/research/xacmlatt/pdp/std/combiners/LegacyPermitOverridesRule$1.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionComparison$1.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionXPath$1.class
+com/att/research/xacmlatt/pdp/policy/AllOf.class
+com/att/research/xacmlatt/pdp/std/functions/ConvertedArgument.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionSet$OPERATION.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMAttributeSelector.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMAttributeAssignmentExpression.class
+com/att/research/xacmlatt/pdp/std/combiners/OnlyOneApplicable.class
+com/att/research/xacmlatt/pdp/std/combiners/LegacyDenyOverridesPolicy.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionHomogeneousSimple.class
+com/att/research/xacmlatt/pdp/policy/FunctionDefinitionFactory.class
+com/att/research/xacmlatt/pdp/policy/FunctionArgument.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionAccessPermitted.class
+com/att/research/xacmlatt/pdp/eval/EvaluationResult.class
+com/att/research/xacmlatt/pdp/std/StdProperties.class
+com/att/research/xacmlatt/pdp/policy/Target.class
+com/att/research/xacmlatt/pdp/policy/Bag.class
+com/att/research/xacmlatt/pdp/policy/AnyOf.class
+com/att/research/xacmlatt/pdp/policy/PolicyIdReference.class
+com/att/research/xacmlatt/pdp/policy/ExpressionResult$ExpressionResultBag.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicy.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMCombinerParameter.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionComparison.class
+com/att/research/xacmlatt/pdp/eval/Evaluatable.class
+com/att/research/xacmlatt/pdp/policy/FunctionArgumentExpression.class
+com/att/research/xacmlatt/pdp/policy/Expression.class
+com/att/research/xacmlatt/pdp/policy/ExpressionResult.class
+com/att/research/xacmlatt/pdp/eval/EvaluationException.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicySetIdReference.class
+com/att/research/xacmlatt/pdp/policy/expressions/AttributeSelector.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionRFC822NameMatch.class
+com/att/research/xacmlatt/pdp/policy/ExpressionResultBoolean.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyDefaults.class
+com/att/research/xacmlatt/pdp/std/combiners/LegacyPermitOverridesPolicy$1.class
+com/att/research/xacmlatt/pdp/policy/TargetedCombinerParameter.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyDef.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBagOneAndOnly.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionXPath.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionHigherOrderBag.class
+com/att/research/xacmlatt/pdp/std/combiners/PermitUnlessDeny.class
+com/att/research/xacmlatt/pdp/ATTPDPEngineFactory.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicySetCombinerParameter.class
+com/att/research/xacmlatt/pdp/policy/PolicySetChild.class
+com/att/research/xacmlatt/pdp/std/StdPolicyFinder.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMExpression.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyIdReference.class
+com/att/research/xacmlatt/pdp/eval/MatchResult.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionHigherOrderBag$1.class
+com/att/research/xacmlatt/pdp/policy/Match$1.class
+com/att/research/xacmlatt/pdp/policy/ExpressionResult$ExpressionResultError.class
+com/att/research/xacmlatt/pdp/std/combiners/PermitOverrides.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionNumberTypeConversion.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionDateTimeArithmetic.class
+com/att/research/xacmlatt/pdp/policy/PolicySet$1.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyIssuer.class
+com/att/research/xacmlatt/pdp/std/combiners/LegacyDenyOverridesPolicy$1.class
+com/att/research/xacmlatt/pdp/eval/MatchResult$MatchCode.class
+com/att/research/xacmlatt/pdp/policy/PolicySet.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionURIStringConcatenate.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionLogical$1.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBag.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionComparison$OPERATION.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionEquality.class
+com/att/research/xacmlatt/pdp/std/combiners/FirstApplicable.class
+com/att/research/xacmlatt/pdp/policy/ExpressionResult$ExpressionResultSingle.class
+com/att/research/xacmlatt/pdp/std/StdFunctionDefinitionFactory.class
+com/att/research/xacmlatt/pdp/std/StdCombiningAlgorithms.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyCombinerParameter.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMVariableDefinition.class
+com/att/research/xacmlatt/pdp/eval/EvaluationContextFactory.class
+com/att/research/xacmlatt/pdp/policy/PolicyDef.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMRuleCombinerParameters.class
+com/att/research/xacmlatt/pdp/policy/VariableDefinition.class
+com/att/research/xacmlatt/pdp/policy/PolicyFinderFactory.class
+com/att/research/xacmlatt/pdp/policy/Policy$1.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMAnyOf.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionSet$1.class
+com/att/research/xacmlatt/pdp/std/StdPolicyFinder$1.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMAttributeDesignator.class
+com/att/research/xacmlatt/pdp/policy/expressions/AttributeRetrievalBase.class
+com/att/research/xacmlatt/pdp/std/StdPolicyFinder$StdPolicyFinderException.class
+com/att/research/xacmlatt/pdp/eval/Matchable.class
+com/att/research/xacmlatt/pdp/policy/expressions/AttributeDesignator.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMApply.class
+com/att/research/xacmlatt/pdp/eval/EvaluationContext.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBagIsIn.class
+com/att/research/xacmlatt/pdp/std/combiners/CombinedPermitOverrides$1.class
+com/att/research/xacmlatt/pdp/policy/PolicyFinder.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMTarget.class
+com/att/research/xacmlatt/pdp/std/StdCombiningAlgorithmFactory.class
+com/att/research/xacmlatt/pdp/std/StdFunctions.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMObligationExpression.class
+com/att/research/xacmlatt/pdp/policy/PolicyComponent.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionRegexpMatch.class
+com/att/research/xacmlatt/pdp/policy/Condition.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionArithmetic.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionDateTimeArithmetic$OPERATION.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionTimeInRange.class
+com/att/research/xacmlatt/pdp/std/combiners/DenyOverrides.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionSet.class
+com/att/research/xacmlatt/pdp/policy/PolicyIssuer.class
+com/att/research/xacmlatt/pdp/std/combiners/CombinedPermitOverrides.class
+com/att/research/xacmlatt/pdp/std/combiners/DenyUnlessPermit$1.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionLogical.class
+com/att/research/xacmlatt/pdp/std/combiners/OnlyOneApplicable$1.class
+com/att/research/xacmlatt/pdp/policy/AnyOf$1.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringNormalize.class
+com/att/research/xacmlatt/pdp/policy/PolicySetIdReference.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionArithmetic$1.class
+com/att/research/xacmlatt/pdp/policy/FunctionArgumentBag.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringConversion.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBagSize.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionArithmetic$OPERATION.class
+com/att/research/xacmlatt/pdp/policy/expressions/Function.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMAllOf.class
+com/att/research/xacmlatt/pdp/policy/CombinerParameter.class
+com/att/research/xacmlatt/pdp/policy/VariableMap.class
+com/att/research/xacmlatt/pdp/policy/Rule$1.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMAdviceExpression.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionHigherOrderBag$OPERATION.class
+com/att/research/xacmlatt/pdp/policy/Rule.class
+com/att/research/xacmlatt/pdp/policy/Policy.class
+com/att/research/xacmlatt/pdp/std/combiners/PermitOverrides$1.class
+com/att/research/xacmlatt/pdp/policy/expressions/VariableReference.class
+com/att/research/xacmlatt/pdp/std/combiners/LegacyDenyOverridesRule.class
+com/att/research/xacmlatt/pdp/policy/TargetedCombinerParameterMap.class
+com/att/research/xacmlatt/pdp/policy/PolicyDefaults.class
+com/att/research/xacmlatt/pdp/policy/FunctionArgumentAttributeValue.class
+com/att/research/xacmlatt/pdp/policy/ExpressionResult$ExpressionResultEmptyBag.class
+com/att/research/xacmlatt/pdp/policy/dom/DOMPolicySet.class
+com/att/research/xacmlatt/pdp/std/combiners/LegacyPermitOverridesPolicy.class
+com/att/research/xacmlatt/pdp/std/StdEvaluationContext.class
+com/att/research/xacmlatt/pdp/ATTPDPEngine$1.class
+com/att/research/xacmlatt/pdp/policy/PolicyIdReferenceBase.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringEqualIgnoreCase.class
+com/att/research/xacmlatt/pdp/policy/ObligationExpression.class
+com/att/research/xacmlatt/pdp/policy/AllOf$1.class
+com/att/research/xacmlatt/pdp/util/ATTPDPProperties.class
+com/att/research/xacmlatt/pdp/policy/AttributeAssignmentResult.class
+com/att/research/xacmlatt/pdp/eval/EvaluationContextException.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringFunctions.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringFunctions$OPERATION.class
+com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionLogical$OPERATION.class
+com/att/research/xacmlatt/pdp/policy/expressions/AttributeValueExpression.class
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
----------------------------------------------------------------------
diff --git a/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
new file mode 100644
index 0000000..b9e94a4
--- /dev/null
+++ b/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -0,0 +1,142 @@
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicySet.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionXPath.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMAllOf.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBagOneAndOnly.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionAccessPermitted.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMExpression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/LegacyDenyOverridesRule.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/eval/package-info.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionEquality.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicy.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicyIssuer.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBag.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdEvaluationContextFactory.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/expressions/Function.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/RuleEffect.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/LegacyPermitOverridesPolicy.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/Match.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMVariableDefinition.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicyIdReferenceBase.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/CombiningAlgorithmBase.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/Bag.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/FunctionArgumentBag.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/TargetedCombinerParameterMap.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/eval/Matchable.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/CombinerParameter.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/FunctionDefinition.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionComparison.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/expressions/AttributeDesignator.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicySetIdReference.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionSet.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/ObligationExpression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/eval/EvaluationContext.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMRuleCombinerParameters.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMAnyOf.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/ExpressionResultBoolean.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdCombiningAlgorithms.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/expressions/AttributeSelector.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringNormalize.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/Expression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/TargetedCombinerParameter.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/util/ATTPDPProperties.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/package-info.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdProperties.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicyDef.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/ATTPDPEngineFactory.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/PermitOverrides.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/package-info.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMMatch.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMTarget.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionHigherOrderBag.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBagIsIn.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMRule.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/CombiningAlgorithmFactory.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdCombiningAlgorithmFactory.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/expressions/Apply.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/CombinedPermitOverrides.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/Policy.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/FunctionArgumentAttributeValue.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMAttributeDesignator.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringFunctions.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicySet.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicyFinderFactory.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/FunctionArgument.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMApply.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdPolicyFinderFactory.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdFunctions.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyCombinerParameter.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMAttributeSelector.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/AttributeAssignmentExpression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/ExpressionResult.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/eval/MatchResult.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/CombiningAlgorithm.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionNumberTypeConversion.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/eval/EvaluationContextFactory.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicyFinder.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/DenyUnlessPermit.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMAdviceExpression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMAttributeAssignmentExpression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicySetCombinerParameter.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/eval/EvaluationContextException.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/package-info.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyRepair.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicyFinderResult.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/package-info.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/expressions/package-info.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionTimeInRange.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBase.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/expressions/AttributeRetrievalBase.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMCombinerParameter.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyDef.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMDocumentRepair.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdPolicyFinder.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/eval/EvaluationException.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/FirstApplicable.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/AnyOf.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionHomogeneousSimple.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/AllOf.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/VariableMap.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/LegacyDenyOverridesPolicy.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringEqualIgnoreCase.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicySetIdReference.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMObligationExpression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdEvaluationContext.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/Condition.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/AttributeAssignmentResult.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/PermitUnlessDeny.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/package-info.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/VariableDefinition.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdFunctionDefinitionFactory.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/OnlyOneApplicable.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/LegacyPermitOverridesRule.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/expressions/VariableReference.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicyIdReference.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicyDefaults.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicySetChild.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/expressions/AttributeValueExpression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyIssuer.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/ATTPDPEngine.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionX500NameMatch.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionStringConversion.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/Target.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionDateTimeArithmetic.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/PolicyComponent.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/eval/Evaluatable.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionRFC822NameMatch.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/ConvertedArgument.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/CombiningElement.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyIdReference.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/FunctionArgumentExpression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/combiners/DenyOverrides.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionBagSize.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionURIStringConcatenate.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/eval/EvaluationResult.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionLogical.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/StdPolicyFinderResult.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/AdviceExpression.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionRegexpMatch.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/package-info.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/dom/DOMPolicyDefaults.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/Rule.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/std/functions/FunctionDefinitionArithmetic.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-pdp/src/main/java/com/att/research/xacmlatt/pdp/policy/FunctionDefinitionFactory.java
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
----------------------------------------------------------------------
diff --git a/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/openaz-xacml-pdp/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
new file mode 100644
index 0000000..e69de29
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-pdp/target/openaz-xacml-pdp-0.0.1-SNAPSHOT.jar
----------------------------------------------------------------------
diff --git a/openaz-xacml-pdp/target/openaz-xacml-pdp-0.0.1-SNAPSHOT.jar b/openaz-xacml-pdp/target/openaz-xacml-pdp-0.0.1-SNAPSHOT.jar
new file mode 100644
index 0000000..ff65667
Binary files /dev/null and b/openaz-xacml-pdp/target/openaz-xacml-pdp-0.0.1-SNAPSHOT.jar differ
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-pdp/xacml.properties
----------------------------------------------------------------------
diff --git a/openaz-xacml-pdp/xacml.properties b/openaz-xacml-pdp/xacml.properties
new file mode 100755
index 0000000..8394be9
--- /dev/null
+++ b/openaz-xacml-pdp/xacml.properties
@@ -0,0 +1,26 @@
+# Default XACML Properties File
+# Standard API Factories
+#
+xacml.dataTypeFactory=com.att.research.xacml.std.StdDataTypeFactory
+xacml.pdpEngineFactory=com.att.research.xacmlatt.pdp.ATTPDPEngineFactory
+xacml.pepEngineFactory=com.att.research.xacml.std.pep.StdEngineFactory
+xacml.pipFinderFactory=com.att.research.xacml.std.pip.StdPIPFinderFactory
+
+# If there is a standard set of PIPEngines:
+# xacml.pip.engines=engine1,engine2,...,engineN
+# engine1.classname=com.att.research.xacmlpip.OraclePIP
+# engine1.prop1=foo
+# engine1.prop2=bar
+# ...
+# engine2.classname=com.att.research.xacmlpip.ActiveDirectoryPIP
+# ...
+
+# AT&T PDP Implementation Factories
+#
+xacml.att.evaluationContextFactory=com.att.research.xacmlatt.pdp.std.StdEvaluationContextFactory
+xacml.att.combiningAlgorithmFactory=com.att.research.xacmlatt.pdp.std.StdCombiningAlgorithmFactory
+xacml.att.functionDefinitionFactory=com.att.research.xacmlatt.pdp.std.StdFunctionDefinitionFactory
+xacml.att.policyFinderFactory=com.att.research.xacmlatt.pdp.std.StdPolicyFinderFactory
+
+# If there is a standard policy for the engine:
+# xacml.att.stdPolicyFinderFactory.rootPolicyFile=/etc/stdpolicyset.xml
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/pom.xml
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/pom.xml b/openaz-xacml-rest/pom.xml
new file mode 100755
index 0000000..cf8b334
--- /dev/null
+++ b/openaz-xacml-rest/pom.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <artifactId>openaz</artifactId>
+ <groupId>org.openliberty.openaz</groupId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>openaz-xacml-rest</artifactId>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openliberty.openaz</groupId>
+ <artifactId>openaz-xacml</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>javax.servlet-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </dependency>
+ </dependencies>
+
+</project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRest.java
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRest.java b/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRest.java
new file mode 100755
index 0000000..83a8c7b
--- /dev/null
+++ b/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRest.java
@@ -0,0 +1,201 @@
+/*
+ * AT&T - PROPRIETARY
+ * THIS FILE CONTAINS PROPRIETARY INFORMATION OF
+ * AT&T AND IS NOT TO BE DISCLOSED OR USED EXCEPT IN
+ * ACCORDANCE WITH APPLICABLE AGREEMENTS.
+ *
+ * Copyright (c) 2013 AT&T Knowledge Ventures
+ * Unpublished and Not for Publication
+ * All Rights Reserved
+ */
+package com.att.research.xacml.rest;
+
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+
+import javax.servlet.ServletConfig;
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import com.att.research.xacml.util.XACMLProperties;
+
+/**
+ * This static class is used by both the PDP and PAP servlet's. It contains some common
+ * static functions and objects used by both the servlet's.
+ *
+ * @author pameladragosh
+ *
+ */
+public class XACMLRest {
+ private static final Log logger = LogFactory.getLog(XACMLRest.class);
+ private static Properties restProperties = new Properties();
+
+ /**
+ * This must be called during servlet initialization. It sets up the xacml.?.properties
+ * file as a system property. If the System property is already set, then it does not
+ * do anything. This allows the developer to specify their own xacml.properties file to be
+ * used. They can 1) modify the default properties that comes with the project, or 2) change
+ * the WebInitParam annotation, or 3) specify an alternative path in the web.xml, or 4) set
+ * the Java System property to point to their xacml.properties file.
+ *
+ * The recommended way of overriding the default xacml.properties file is using a Java System
+ * property:
+ *
+ * -Dxacml.properties=/opt/app/xacml/etc/xacml.admin.properties
+ *
+ * This way one does not change any actual code or files in the project and can leave the
+ * defaults alone.
+ *
+ * @param config - The servlet config file passed from the javax servlet init() function
+ */
+ public static void xacmlInit(ServletConfig config) {
+ //
+ // Get the XACML Properties File parameter first
+ //
+ String propFile = config.getInitParameter("XACML_PROPERTIES_NAME");
+ if (propFile != null) {
+ //
+ // Look for system override
+ //
+ String xacmlPropertiesName = System.getProperty(XACMLProperties.XACML_PROPERTIES_NAME);
+ if (xacmlPropertiesName == null) {
+ //
+ // Set it to our servlet default
+ //
+ if (logger.isDebugEnabled()) {
+ logger.debug("Using Servlet Config Property for XACML_PROPERTIES_NAME:" + propFile);
+ }
+ System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, propFile);
+ } else {
+ if (logger.isDebugEnabled()) {
+ logger.debug("Using System Property for XACML_PROPERTIES_NAME:" + xacmlPropertiesName);
+ }
+ }
+ }
+ //
+ // Setup the remaining properties
+ //
+ Enumeration<String> params = config.getInitParameterNames();
+ while (params.hasMoreElements()) {
+ String param = params.nextElement();
+ if (! param.equals("XACML_PROPERTIES_NAME")) {
+ String value = config.getInitParameter(param);
+ logger.info(param + "=" + config.getInitParameter(param));
+ restProperties.setProperty(param, value);
+ }
+ }
+ }
+
+ /**
+ * Reset's the XACMLProperties internal properties object so we start
+ * in a fresh environment. Then adds back in our Servlet init properties that were
+ * passed in the javax Servlet init() call.
+ *
+ * This function is primarily used when a new configuration is passed in and the
+ * PDP servlet needs to load a new PDP engine instance.
+ *
+ * @param pipProperties - PIP configuration properties
+ * @param policyProperties - Policy configuration properties
+ */
+ public static void loadXacmlProperties(Properties policyProperties, Properties pipProperties) {
+ try {
+ //
+ // Start fresh
+ //
+ XACMLProperties.reloadProperties();
+ //
+ // Now load our init properties
+ //
+ XACMLProperties.getProperties().putAll(XACMLRest.restProperties);
+ //
+ // Load our policy properties
+ //
+ if (policyProperties != null) {
+ XACMLProperties.getProperties().putAll(policyProperties);
+ }
+ //
+ // Load our pip config properties
+ //
+ if (pipProperties != null) {
+ XACMLProperties.getProperties().putAll(pipProperties);
+ }
+ } catch (IOException e) {
+ logger.error("Failed to put init properties into Xacml properties", e);
+ }
+ //
+ // Dump them
+ //
+ if (logger.isDebugEnabled()) {
+ try {
+ logger.debug(XACMLProperties.getProperties().toString());
+ } catch (IOException e) {
+ logger.error("Cannot dump properties", e);
+ }
+ }
+ }
+
+ /**
+ * Helper routine to dump the HTTP servlet request being serviced. Primarily for debugging.
+ *
+ * @param request - Servlet request (from a POST/GET/PUT/etc.)
+ */
+ public static void dumpRequest(HttpServletRequest request) {
+ if (logger.isDebugEnabled()) {
+ // special-case for receiving heartbeat - don't need to repeatedly output all of the information in multiple lines
+ if (request.getMethod().equals("GET") && "hb".equals(request.getParameter("type")) ) {
+ logger.debug("GET type=hb : heartbeat received");
+ return;
+ }
+ logger.debug(request.getMethod() + ":" + request.getRemoteAddr() + " " + request.getRemoteHost() + " " + request.getRemotePort());
+ logger.debug(request.getLocalAddr() + " " + request.getLocalName() + " " + request.getLocalPort());
+ Enumeration<String> en = request.getHeaderNames();
+ logger.debug("Headers:");
+ while (en.hasMoreElements()) {
+ String element = en.nextElement();
+ Enumeration<String> values = request.getHeaders(element);
+ while (values.hasMoreElements()) {
+ String value = values.nextElement();
+ logger.debug(element + ":" + value);
+ }
+ }
+ logger.debug("Attributes:");
+ en = request.getAttributeNames();
+ while (en.hasMoreElements()) {
+ String element = en.nextElement();
+ logger.debug(element + ":" + request.getAttribute(element));
+ }
+ logger.debug("ContextPath: " + request.getContextPath());
+ if (request.getMethod().equals("PUT") || request.getMethod().equals("POST")) {
+ // POST and PUT are allowed to have parameters in the content, but in our usage the parameters are always in the Query string.
+ // More importantly, there are cases where the POST and PUT content is NOT parameters (e.g. it might contain a Policy file).
+ // Unfortunately the request.getParameterMap method reads the content to see if there are any parameters,
+ // and once the content is read it cannot be read again.
+ // Thus for PUT and POST we must avoid reading the content here so that the main code can read it.
+ logger.debug("Query String:" + request.getQueryString());
+ try {
+ if (request.getInputStream() == null) {
+ logger.debug("Content: No content inputStream");
+ } else {
+ logger.debug("Content available: " + request.getInputStream().available());
+ }
+ } catch (Exception e) {
+ logger.debug("Content: inputStream exception: " + e.getMessage() + "; (May not be relevant)");
+ }
+ } else {
+ logger.debug("Parameters:");
+ Map<String, String[]> params = request.getParameterMap();
+ Set<String> keys = params.keySet();
+ for (String key : keys) {
+ String[] values = params.get(key);
+ logger.debug(key + "(" + values.length + "): " + (values.length > 0 ? values[0] : ""));
+ }
+ }
+ logger.debug("Request URL:" + request.getRequestURL());
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRestProperties.java
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRestProperties.java b/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRestProperties.java
new file mode 100755
index 0000000..d70f33e
--- /dev/null
+++ b/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRestProperties.java
@@ -0,0 +1,137 @@
+/*
+ * AT&T - PROPRIETARY
+ * THIS FILE CONTAINS PROPRIETARY INFORMATION OF
+ * AT&T AND IS NOT TO BE DISCLOSED OR USED EXCEPT IN
+ * ACCORDANCE WITH APPLICABLE AGREEMENTS.
+ *
+ * Copyright (c) 2013 AT&T Knowledge Ventures
+ * Unpublished and Not for Publication
+ * All Rights Reserved
+ */
+package com.att.research.xacml.rest;
+
+import com.att.research.xacml.util.XACMLProperties;
+
+/**
+ * These are XACML Properties that are relevant to the RESTful API interface for
+ * the PDP, PAP and AC interfaces.
+ *
+ *
+ * @author pameladragosh
+ *
+ */
+public class XACMLRestProperties extends XACMLProperties {
+ /**
+ * A unique identifier for the PDP servlet instance. Usually set to the URL
+ * it is running as in the J2EE container.
+ *
+ * Eg. http://localhost:8080/pdp/
+ */
+ public static final String PROP_PDP_ID = "xacml.rest.pdp.id";
+ /**
+ * A PDP servlet's configuration directory. Holds the pip and policy configuration
+ * data as well as the local policy cache.
+ *
+ * Eg: /opt/app/xacml/config
+ */
+ public static final String PROP_PDP_CONFIG = "xacml.rest.pdp.config";
+ /**
+ * Set this property to true or false if the PDP servlet should register itself upon
+ * startup with the PAP servlet.
+ */
+ public static final String PROP_PDP_REGISTER = "xacml.rest.pdp.register";
+ /**
+ * Number of seconds the PDP will sleep while retrying registration with the PAP.
+ * This value must be greater or equal to 5.
+ */
+ public static final String PROP_PDP_REGISTER_SLEEP = "xacml.rest.pdp.register.sleep";
+ /**
+ * Number of retry attempts at registration with the PAP. A value of -1 indicates infinite retries.
+ */
+ public static final String PROP_PDP_REGISTER_RETRIES = "xacml.rest.pdp.register.retries";
+ /**
+ * Max content length accepted for an incoming POST XML/JSON request. Default is 32767 bytes.
+ */
+ public static final String PROP_PDP_MAX_CONTENT = "xacml.rest.pdp.maxcontent";
+ /**
+ * Custom HTTP header used by PDP to send the value of the PROP_PDP_ID
+ */
+ public static final String PROP_PDP_HTTP_HEADER_ID = "X-XACML-PDP-ID";
+ /**
+ * Custom HHTP header used by PDP to send its heartbeat value.
+ */
+ public static final String PROP_PDP_HTTP_HEADER_HB = "X-XACML-PDP-HB";
+ /**
+ * The URL of the PAP servlet. Used by PDP servlet's to communicate. Because administrators
+ * can set whatever context they want to run the PAP servlet, it isn't easy to determine a return
+ * URL for the PAP servlet. This is especially true upon initialization.
+ */
+ public static final String PROP_PAP_URL = "xacml.rest.pap.url";
+ /**
+ * Upon startup, have the PAP servlet send latest configuration information to all
+ * the PDP nodes it knows about.
+ */
+ public static final String PROP_PAP_INITIATE_PDP_CONFIG = "xacml.rest.pap.initiate.pdp";
+ /**
+ * The interval the PAP servlet uses to send heartbeat requests to the PDP nodes.
+ */
+ public static final String PROP_PAP_HEARTBEAT_INTERVAL = "xacml.rest.pap.heartbeat.interval";
+ /**
+ * Timeout value used by the PAP servlet when trying to check the heartbeat of a PDP node.
+ */
+ public static final String PROP_PAP_HEARTBEAT_TIMEOUT = "xacml.rest.pap.heartbeat.timeout";
+ /*
+ * Local path to where the GIT repository exists.
+ *
+ * Eg. /opt/app/xacml/repository
+ */
+ public static final String PROP_ADMIN_REPOSITORY = "xacml.rest.admin.repository";
+ /*
+ * Local path to where user workspaces exist. The user workspace contains temporary files, the
+ * user's clone of the GIT repository, anything specific to the user, etc.
+ */
+ public static final String PROP_ADMIN_WORKSPACE = "xacml.rest.admin.workspace";
+ /*
+ * This is the domain you can setup for your organization, it should be a URI.
+ *
+ * Eg. com:sample:foo
+ */
+ public static final String PROP_ADMIN_DOMAIN = "xacml.rest.admin.domain";
+ /**
+ * PROP_ADMIN_USER_NAME is simply a name for the logged in user.
+ *
+ * AC authentication is out the scope of the web application itself. It is up to the
+ * developer to setup authentication as they please in the J2EE container used to run
+ * the web application. Whatever authentication mechanism they use, they should then set
+ * the attribute into the HttpSession object. The Admin Console will be able to read that
+ * value (default to "guest") in.
+ *
+ * ((HttpServletRequest) request).getSession().setAttribute("xacml.rest.admin.user.name", "Homer");
+ *
+ */
+ public static final String PROP_ADMIN_USER_NAME = "xacml.rest.admin.user.name";
+ /**
+ *
+ * PROP_ADMIN_USER_ID is an id for the logged in user.
+ *
+ * Eg. hs1234
+ *
+ * @see #PROP_ADMIN_USER_NAME for more information.
+ */
+ public static final String PROP_ADMIN_USER_ID = "xacml.rest.admin.user.id";
+ /**
+ *
+ * PROP_ADMIN_USER_EMAIL is a user's email address.
+ *
+ * @see #PROP_ADMIN_USER_NAME for more information.
+ */
+ public static final String PROP_ADMIN_USER_EMAIL = "xacml.rest.admin.user.email";
+ /**
+ * Directory path containing sub-directories where the Subscriber servlet puts files sent through data feeds.
+ */
+ public static final String PROP_SUBSCRIBER_INCOMING = "xacml.subscriber.incoming";
+ /**
+ * The specific data feed name for the Subscriber servlet to register for.
+ */
+ public static final String PROP_SUBSCRIBER_FEED = "xacml.subscriber.feed";
+}
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/target/classes/com/att/research/xacml/rest/XACMLRest.class
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/target/classes/com/att/research/xacml/rest/XACMLRest.class b/openaz-xacml-rest/target/classes/com/att/research/xacml/rest/XACMLRest.class
new file mode 100644
index 0000000..ef86656
Binary files /dev/null and b/openaz-xacml-rest/target/classes/com/att/research/xacml/rest/XACMLRest.class differ
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/target/classes/com/att/research/xacml/rest/XACMLRestProperties.class
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/target/classes/com/att/research/xacml/rest/XACMLRestProperties.class b/openaz-xacml-rest/target/classes/com/att/research/xacml/rest/XACMLRestProperties.class
new file mode 100644
index 0000000..b6570eb
Binary files /dev/null and b/openaz-xacml-rest/target/classes/com/att/research/xacml/rest/XACMLRestProperties.class differ
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/target/maven-archiver/pom.properties
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/target/maven-archiver/pom.properties b/openaz-xacml-rest/target/maven-archiver/pom.properties
new file mode 100644
index 0000000..75af03d
--- /dev/null
+++ b/openaz-xacml-rest/target/maven-archiver/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Tue Apr 07 07:42:35 EDT 2015
+version=0.0.1-SNAPSHOT
+groupId=org.openliberty.openaz
+artifactId=openaz-xacml-rest
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
new file mode 100644
index 0000000..d842d7d
--- /dev/null
+++ b/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -0,0 +1,2 @@
+com/att/research/xacml/rest/XACMLRestProperties.class
+com/att/research/xacml/rest/XACMLRest.class
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
new file mode 100644
index 0000000..f772e13
--- /dev/null
+++ b/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -0,0 +1,2 @@
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRest.java
+/Users/ajith/IdeaProjects/openaz/openaz-xacml-rest/src/main/java/com/att/research/xacml/rest/XACMLRestProperties.java
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/openaz-xacml-rest/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
new file mode 100644
index 0000000..e69de29
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-rest/target/openaz-xacml-rest-0.0.1-SNAPSHOT.jar
----------------------------------------------------------------------
diff --git a/openaz-xacml-rest/target/openaz-xacml-rest-0.0.1-SNAPSHOT.jar b/openaz-xacml-rest/target/openaz-xacml-rest-0.0.1-SNAPSHOT.jar
new file mode 100644
index 0000000..49eba1f
Binary files /dev/null and b/openaz-xacml-rest/target/openaz-xacml-rest-0.0.1-SNAPSHOT.jar differ
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-test/pom.xml
----------------------------------------------------------------------
diff --git a/openaz-xacml-test/pom.xml b/openaz-xacml-test/pom.xml
new file mode 100755
index 0000000..c88e4c0
--- /dev/null
+++ b/openaz-xacml-test/pom.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <artifactId>openaz</artifactId>
+ <groupId>org.openliberty.openaz</groupId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>openaz-xacml-test</artifactId>
+
+ <dependencies>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>openaz-xacml</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>openaz-xacml-rest</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>openaz-xacml-pdp</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.httpcomponents</groupId>
+ <artifactId>httpclient</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-cli</groupId>
+ <artifactId>commons-cli</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>postgresql</groupId>
+ <artifactId>postgresql</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ </dependency>
+ </dependencies>
+
+</project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-openaz/blob/94fcdd90/openaz-xacml-test/src/test/java/com/att/research/xacmlatt/pdp/std/dom/DOMResponseConformanceTest.java
----------------------------------------------------------------------
diff --git a/openaz-xacml-test/src/test/java/com/att/research/xacmlatt/pdp/std/dom/DOMResponseConformanceTest.java b/openaz-xacml-test/src/test/java/com/att/research/xacmlatt/pdp/std/dom/DOMResponseConformanceTest.java
new file mode 100755
index 0000000..de3851b
--- /dev/null
+++ b/openaz-xacml-test/src/test/java/com/att/research/xacmlatt/pdp/std/dom/DOMResponseConformanceTest.java
@@ -0,0 +1,187 @@
+/*
+ * AT&T - PROPRIETARY
+ * THIS FILE CONTAINS PROPRIETARY INFORMATION OF
+ * AT&T AND IS NOT TO BE DISCLOSED OR USED EXCEPT IN
+ * ACCORDANCE WITH APPLICABLE AGREEMENTS.
+ *
+ * Copyright (c) 2013 AT&T Knowledge Ventures
+ * Unpublished and Not for Publication
+ * All Rights Reserved
+ */
+package com.att.research.xacmlatt.pdp.std.dom;
+
+import static org.junit.Assert.fail;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileReader;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.junit.Test;
+
+import com.att.research.xacml.api.Response;
+import com.att.research.xacml.std.dom.DOMResponse;
+
+/**
+ * Tests for handling the XML version of the XACML Response object.
+ *
+ * TO RUN - use jUnit
+ * In Eclipse select this file or the enclosing directory, right-click and select Run As/JUnit Test
+ *
+ * Normally the Response is generated by the PDP and returned through the RESTful interface as JSON.
+ * Testing of the XML interface is minimal and not complete.
+ *
+ *
+ *
+ * @author glenngriffin
+ *
+ */
+public class DOMResponseConformanceTest {
+
+ // where to find the conformance test XML files
+ private final String CONFORMANCE_DIRECTORY_PATH = "testsets/conformance/xacml3.0-ct-v.0.4";
+
+ // The request object output from each test conversion from JSON string
+ Response response;
+
+
+
+ // Load the Conformance test responses into Response objects, generate the output XML for that Response and compare with the original files.
+ @Test
+ public void testDOMResponse() {
+ List<File> filesInDirectory = null;
+
+ File conformanceDirectory = null;
+
+ File currentFile = null;
+
+ try {
+ conformanceDirectory = new File(CONFORMANCE_DIRECTORY_PATH);
+ filesInDirectory = getRequestsInDirectory(conformanceDirectory);
+ } catch (Exception e) {
+ fail("Unable to set up Conformance tests for dir '" + conformanceDirectory.getAbsolutePath()+"' e="+ e);
+ }
+
+ // run through each XML file
+ // - load the file from XML into an internal Response object
+ // - generate the XML representation from that Response object
+ // - reload the file into a String
+ // - compare the 2 XML strings
+ Response xmlResponse = null;
+ try {
+ for (File f : filesInDirectory) {
+ currentFile = f;
+
+//// This is a simple way to select just one file for debugging - comment out when not being used
+//if ( ! f.getName().equals("IID302Response.xml")) { continue; }
+
+// during debugging it is helpful to know what file it is starting to work on
+// System.out.println("starting file="+currentFile.getName());
+
+
+ BufferedReader br = new BufferedReader(new FileReader(f));
+ StringBuffer sb = new StringBuffer();
+ String line;
+ while ((line = br.readLine()) != null) {
+ sb.append(line + "\n");
+ }
+ br.close();
+
+ String xmlFromFile = sb.toString();
+
+ try {
+ // load XML into a Response object
+ xmlResponse = DOMResponse.load(xmlFromFile);
+ } catch (Exception e) {
+ // if XML does not load, just note it and continue with next file
+ System.out.println("XML file did not load: '" + f.getName() + " e=" + e);
+ continue;
+ }
+//System.out.println(xmlFromFile);
+
+ // create String version from the Response object
+ String xmlResponseString = DOMResponse.toString(xmlResponse, false);
+
+ // Comparing the string directly to the String from the file is difficult.
+ // We can minimize the problems with newlines and whitespace, but we have other issues with how various object values are represented.
+ // For instance, and input double of "23.50" is output as "23.5" which is the same value but not identical strings.
+ // Therefore we take the XML output and use it to create a new Response object, then compare the two objects.
+
+//System.out.println(xmlResponseString);
+ Response reGeneratedResponse = DOMResponse.load(xmlResponseString);
+
+ if ( ! xmlResponse.equals(reGeneratedResponse)) {
+ String normalizedFromFile = xmlFromFile.replaceAll("\\r|\\n", "");
+ normalizedFromFile = normalizedFromFile.replaceAll("\\s+", " ");
+ normalizedFromFile = normalizedFromFile.replaceAll(">\\s*<", "><");
+ System.out.println("File="+normalizedFromFile);
+ System.out.println("Gend="+ xmlResponseString);
+
+ System.out.println(DOMResponse.toString(xmlResponse, true));
+
+ fail("Output string did not re-generate eqivilent object.");
+ }
+
+// // Normally whitespace is significant in XML.
+// // However in this case we are generating an XML string for output and comparing it to a hand-made file.
+// // The file may contain extra newlines or fewer spaces then our prettyPrinted output version.
+// // Therefore we do the comparison on the un-prettyPrinted generated string.
+// // To do this we have to remove the extra whitespace from the version read from the file.
+// String normalizedFromFile = xmlFromFile.replaceAll("\\r|\\n", "");
+// normalizedFromFile = normalizedFromFile.replaceAll("\\s+", " ");
+// normalizedFromFile = normalizedFromFile.replaceAll(">\\s*<", "><");
+//
+// if ( ! xmlResponseString.equals(normalizedFromFile)) {
+// System.out.println("file="+normalizedFromFile+"\ngend="+xmlResponseString);
+// fail("file not same as generated string: " + f.getName()+ "\nFile="+xmlFromFile + "\nString="+xmlResponseString);
+// }
+
+
+ }
+
+ } catch (Exception e) {
+ fail ("Failed test with '" + currentFile.getName() + "', e=" + e);
+ }
+
+
+ }
+
+
+
+ //
+ // HELPER to get list of all Request files in the given directory
+ //
+
+ private List<File> getRequestsInDirectory(File directory) {
+ List<File> fileList = new ArrayList<File>();
+
+ File[] fileArray = directory.listFiles();
+ for (File f : fileArray) {
+ if (f.isDirectory()) {
+ List<File> subDirList = getRequestsInDirectory(f);
+ fileList.addAll(subDirList);
+ }
+ if (f.getName().endsWith("Response.xml")) {
+ fileList.add(f);
+ }
+ }
+ return fileList;
+
+ }
+
+
+}
+
+
+/*
+Place to edit long strings output during tests
+
+
+
+
+
+
+
+
+*/