You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by ve...@apache.org on 2018/01/08 02:04:33 UTC
svn commit: r1820516 -
/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/AxisBindingMessage.java
Author: veithen
Date: Mon Jan 8 02:04:33 2018
New Revision: 1820516
URL: http://svn.apache.org/viewvc?rev=1820516&view=rev
Log:
AXIS2-5904: Revert r1820513.
Modified:
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/AxisBindingMessage.java
Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/AxisBindingMessage.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/AxisBindingMessage.java?rev=1820516&r1=1820515&r2=1820516&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/AxisBindingMessage.java (original)
+++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/AxisBindingMessage.java Mon Jan 8 02:04:33 2018
@@ -24,6 +24,7 @@ import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
import org.apache.axis2.AxisFault;
+import org.apache.axis2.engine.AxisConfiguration;
import org.apache.axis2.util.PolicyUtil;
import org.apache.axis2.util.WSDL20Util;
import org.apache.axis2.util.WSDLSerializationUtil;
@@ -232,29 +233,127 @@ public class AxisBindingMessage extends
}
public Policy calculateEffectivePolicy() {
+ PolicySubject policySubject = null;
Collection<PolicyComponent> policyList = new ArrayList<PolicyComponent>();
- AxisDescription description = this;
- AxisService axisService = null;
- do {
- policyList.addAll(description.getPolicySubject().getAttachedPolicyComponents());
- if (description instanceof AxisService) {
- axisService = (AxisService)description;
- }
- } while ((description = description.getParent()) != null);
-
+ // AxisBindingMessage
+ policySubject = getPolicySubject();
+ policyList.addAll(policySubject.getAttachedPolicyComponents());
+
+ // AxisBindingOperation policies
+ AxisBindingOperation axisBindingOperation = getAxisBindingOperation();
+ if (axisBindingOperation != null) {
+ policyList.addAll(axisBindingOperation.getPolicySubject()
+ .getAttachedPolicyComponents());
+ }
+
+ // AxisBinding
+ AxisBinding axisBinding = (axisBindingOperation == null) ? null
+ : axisBindingOperation.getAxisBinding();
+ if (axisBinding != null) {
+ policyList.addAll(axisBinding.getPolicySubject()
+ .getAttachedPolicyComponents());
+ }
+
+ // AxisEndpoint
+ AxisEndpoint axisEndpoint = (axisBinding == null) ? null : axisBinding
+ .getAxisEndpoint();
+ if (axisEndpoint != null) {
+ policyList.addAll(axisEndpoint.getPolicySubject()
+ .getAttachedPolicyComponents());
+ }
+
+ // AxisMessage
+ if (axisMessage != null) {
+ policyList.addAll(axisMessage.getPolicySubject()
+ .getAttachedPolicyComponents());
+ }
+
+ // AxisOperation
+ AxisOperation axisOperation = (axisMessage == null) ? null
+ : axisMessage.getAxisOperation();
+ if (axisOperation != null) {
+ policyList.addAll(axisOperation.getPolicySubject()
+ .getAttachedPolicyComponents());
+ }
+
+ // AxisService
+ AxisService axisService = (axisOperation == null) ? null
+ : axisOperation.getAxisService();
+ if (axisService != null) {
+ policyList.addAll(axisService.getPolicySubject()
+ .getAttachedPolicyComponents());
+ }
+
+ // AxisConfiguration
+ AxisConfiguration axisConfiguration = (axisService == null) ? null
+ : axisService.getAxisConfiguration();
+ if (axisConfiguration != null) {
+ policyList.addAll(axisConfiguration.getPolicySubject()
+ .getAttachedPolicyComponents());
+ }
return PolicyUtil.getMergedPolicy(policyList, axisService);
}
private boolean isPolicyUpdated() {
- AxisDescription description = this;
- do {
- if (description.getPolicySubject().getLastUpdatedTime().after(
- lastPolicyCalculatedTime)) {
- return true;
- }
- } while ((description = description.getParent()) != null);
+ if (getPolicySubject().getLastUpdatedTime().after(
+ lastPolicyCalculatedTime)) {
+ return true;
+ }
+ // AxisBindingOperation
+ AxisBindingOperation axisBindingOperation = getAxisBindingOperation();
+ if (axisBindingOperation != null
+ && axisBindingOperation.getPolicySubject().getLastUpdatedTime()
+ .after(lastPolicyCalculatedTime)) {
+ return true;
+ }
+ // AxisBinding
+ AxisBinding axisBinding = (axisBindingOperation == null) ? null
+ : axisBindingOperation.getAxisBinding();
+ if (axisBinding != null
+ && axisBinding.getPolicySubject().getLastUpdatedTime().after(
+ lastPolicyCalculatedTime)) {
+ return true;
+ }
+ // AxisEndpoint
+ AxisEndpoint axisEndpoint = (axisBinding == null) ? null : axisBinding
+ .getAxisEndpoint();
+ if (axisEndpoint != null
+ && axisEndpoint.getPolicySubject().getLastUpdatedTime().after(
+ lastPolicyCalculatedTime)) {
+ return true;
+ }
+ // AxisMessage
+ if (axisMessage != null
+ && axisMessage.getPolicySubject().getLastUpdatedTime().after(
+ lastPolicyCalculatedTime)) {
+ return true;
+ }
+ // AxisOperation
+ AxisOperation axisOperation = (axisMessage == null) ? null
+ : axisMessage.getAxisOperation();
+ if (axisOperation != null
+ && axisOperation.getPolicySubject().getLastUpdatedTime().after(
+ lastPolicyCalculatedTime)) {
+ return true;
+ }
+ // AxisService
+ AxisService axisService = (axisOperation == null) ? null
+ : axisOperation.getAxisService();
+ if (axisService != null
+ && axisService.getPolicySubject().getLastUpdatedTime().after(
+ lastPolicyCalculatedTime)) {
+ return true;
+ }
+ // AxisConfiguration
+ AxisConfiguration axisConfiguration = (axisService == null) ? null
+ : axisService.getAxisConfiguration();
+ if (axisConfiguration != null
+ && axisConfiguration.getPolicySubject().getLastUpdatedTime()
+ .after(lastPolicyCalculatedTime)) {
+ return true;
+ }
return false;
}