You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by da...@apache.org on 2006/10/06 16:08:38 UTC
svn commit: r453603 - in
/webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing:
AddressingFinalInHandler.java AddressingInHandler.java
AddressingOutHandler.java
Author: davidillsley
Date: Fri Oct 6 07:08:38 2006
New Revision: 453603
URL: http://svn.apache.org/viewvc?view=rev&rev=453603
Log:
Improved trace in addressing handlers and some small simplifications
Modified:
webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java
webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingInHandler.java
webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingOutHandler.java
Modified: webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java?view=diff&rev=453603&r1=453602&r2=453603
==============================================================================
--- webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java (original)
+++ webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java Fri Oct 6 07:08:38 2006
@@ -49,8 +49,14 @@
while (headerBlocks.hasNext()) {
SOAPHeaderBlock soapHeaderBlock = (SOAPHeaderBlock) headerBlocks.next();
OMAttribute isRefParamAttr = soapHeaderBlock.getAttribute(new QName(namespace, "IsReferenceParameter"));
+ if (log.isTraceEnabled()){
+ log.trace("extractToEprReferenceParameters: Checking header: "+soapHeaderBlock.getQName());
+ }
if (isRefParamAttr != null && "true".equals(isRefParamAttr.getAttributeValue())) {
toEPR.addReferenceParameter(soapHeaderBlock.getQName(), soapHeaderBlock.getText());
+ if (log.isTraceEnabled()){
+ log.trace("extractToEprReferenceParameters: Header: "+soapHeaderBlock.getQName()+" has IsReferenceParameter attribute. Adding to toEPR.");
+ }
}
}
}
Modified: webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingInHandler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingInHandler.java?view=diff&rev=453603&r1=453602&r2=453603
==============================================================================
--- webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingInHandler.java (original)
+++ webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingInHandler.java Fri Oct 6 07:08:38 2006
@@ -191,6 +191,11 @@
}else{
checkedHeaderNames.add(addressingHeaderName);
}
+
+ if(log.isTraceEnabled()){
+ log.trace("checkDuplicateHeaders: addressingHeaderName="+addressingHeaderName+" isDuplicate="+shouldIgnore);
+ }
+
return shouldIgnore;
}
@@ -199,20 +204,32 @@
private void extractRelatesToInformation(SOAPHeaderBlock soapHeaderBlock, String addressingNamespace, Options messageContextOptions) {
String address = soapHeaderBlock.getText();
+
+ // Extract the RelationshipType attribute if it exists
OMAttribute relationshipType =
soapHeaderBlock.getAttribute(
new QName(AddressingConstants.WSA_RELATES_TO_RELATIONSHIP_TYPE));
- String relationshipTypeDefaultValue =
+
+ String relationshipTypeString = null;
+
+ // If an attribute was found, use the value from it
+ if(relationshipType!=null){
+ relationshipTypeString = relationshipType.getAttributeValue();
+ }else{ // Else use the appropriate default (depends on namespace in use)
+ relationshipTypeString =
Submission.WSA_NAMESPACE.equals(addressingNamespace)
? Submission.WSA_DEFAULT_RELATIONSHIP_TYPE
: Final.WSA_DEFAULT_RELATIONSHIP_TYPE;
- RelatesTo relatesTo =
- new RelatesTo(
- address,
- relationshipType == null
- ? relationshipTypeDefaultValue
- : relationshipType.getAttributeValue());
+ }
+
+ if(log.isTraceEnabled()){
+ log.trace("extractRelatesToInformation: Extracted Relationship. Value="+address+" RelationshipType="+relationshipTypeString);
+ }
+
+ RelatesTo relatesTo = new RelatesTo(address, relationshipTypeString);
messageContextOptions.addRelatesTo(relatesTo);
+
+ // Completed processing of this header
soapHeaderBlock.setProcessed();
}
@@ -224,6 +241,9 @@
messageContextOptions.setFaultTo(epr);
}
extractEPRInformation(soapHeaderBlock, epr, addressingNamespace, messageContext);
+ if(log.isTraceEnabled()){
+ log.trace("extractFaultToEPRInformation: Extracted FaultTo EPR: "+epr);
+ }
soapHeaderBlock.setProcessed();
}
@@ -235,6 +255,9 @@
messageContextOptions.setReplyTo(epr);
}
extractEPRInformation(soapHeaderBlock, epr, addressingNamespace, messageContext);
+ if(log.isTraceEnabled()){
+ log.trace("extractReplyToEPRInformation: Extracted ReplyTo EPR: "+epr);
+ }
soapHeaderBlock.setProcessed();
}
@@ -247,6 +270,9 @@
messageContextOptions.setFrom(epr);
}
extractEPRInformation(soapHeaderBlock, epr, addressingNamespace, messageContext);
+ if(log.isTraceEnabled()){
+ log.trace("extractFromEPRInformation: Extracted From EPR: "+epr);
+ }
soapHeaderBlock.setProcessed();
}
@@ -261,6 +287,9 @@
extractToEprReferenceParameters(epr, header, namespace);
soapHeaderBlock.setProcessed();
+ if(log.isTraceEnabled()){
+ log.trace("extractToEPRInformation: Extracted To EPR: "+epr);
+ }
}
//We assume that any action that already exists in the message context must be the
@@ -269,14 +298,19 @@
private void extractActionInformation(SOAPHeaderBlock soapHeaderBlock, String addressingNamespace, MessageContext messageContext) throws AxisFault {
Options messageContextOptions = messageContext.getOptions();
String soapAction = messageContextOptions.getAction();
+ String wsaAction = soapHeaderBlock.getText();
+
+ if(log.isTraceEnabled()){
+ log.trace("extractActionInformation: soapAction='"+soapAction+"' wsa:Action='"+wsaAction+"'");
+ }
if (soapAction != null && !"".equals(soapAction)) {
- if (!soapAction.equals(soapHeaderBlock.getText())) {
+ if (!soapAction.equals(wsaAction)) {
AddressingFaultsHelper.triggerActionMismatchFault(messageContext);
}
}
else {
- messageContextOptions.setAction(soapHeaderBlock.getText());
+ messageContextOptions.setAction(wsaAction);
}
soapHeaderBlock.setProcessed();
@@ -292,8 +326,10 @@
private void extractEPRInformation(SOAPHeaderBlock headerBlock, EndpointReference epr, String addressingNamespace, MessageContext messageContext) throws AxisFault {
try {
EndpointReferenceHelper.fromOM(epr, headerBlock, addressingNamespace);
- }
- catch (AxisFault af) {
+ }catch (AxisFault af) {
+ if(log.isTraceEnabled()){
+ log.trace("extractEPRInformation: Exception occurred deserialising an EndpointReference.",af);
+ }
AddressingFaultsHelper.triggerMissingAddressInEPRFault(messageContext, headerBlock.getLocalName());
}
}
Modified: webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingOutHandler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingOutHandler.java?view=diff&rev=453603&r1=453602&r2=453603
==============================================================================
--- webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingOutHandler.java (original)
+++ webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingOutHandler.java Fri Oct 6 07:08:38 2006
@@ -181,6 +181,9 @@
String relationshipType = relatesTo[i].getRelationshipType();
if (relatesToHeader != null) {
+
+ // I think that if it's one of these two constants we can just not add the attribute
+ // which would save some small amount of bandwidth and processing.
if (Final.WSA_DEFAULT_RELATIONSHIP_TYPE.equals(relationshipType) ||
Submission.WSA_DEFAULT_RELATIONSHIP_TYPE.equals(relationshipType)) {
relationshipType = isFinalAddressingNamespace ?
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org