perfsonar-dev - perfsonar: r3002 - branches/perfsonarui/src/org/perfsonar/perfsonarui
Subject: perfsonar development work
List archive
- From:
- To:
- Subject: perfsonar: r3002 - branches/perfsonarui/src/org/perfsonar/perfsonarui
- Date: Sun, 28 Oct 2007 03:45:57 -0400
Author: nina
Date: 2007-10-28 03:45:57 -0400 (Sun, 28 Oct 2007)
New Revision: 3002
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/AbstractMARequest.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/AbstractPerfsonarResponse.java
Log:
support for sending (and processing) messages with specific SOAPEnvelope
(e.g. for AA)
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/AbstractMARequest.java
===================================================================
--- branches/perfsonarui/src/org/perfsonar/perfsonarui/AbstractMARequest.java
2007-10-26 13:57:41 UTC (rev 3001)
+++ branches/perfsonarui/src/org/perfsonar/perfsonarui/AbstractMARequest.java
2007-10-28 07:45:57 UTC (rev 3002)
@@ -35,6 +35,7 @@
import javax.xml.rpc.ServiceException;
import javax.xml.soap.SOAPEnvelope;
+import org.apache.axis.Message;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.message.SOAPBodyElement;
@@ -52,7 +53,6 @@
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
-import com.sun.corba.se.spi.legacy.connection.GetEndPointInfoAgainException;
import com.sun.org.apache.xml.internal.serialize.OutputFormat;
import com.sun.org.apache.xml.internal.serialize.XMLSerializer;
@@ -317,10 +317,10 @@
SOAPEnvelope envelope = prepareEnvelope(requestMessage);
- if (envelope != null)
- //resultObject = call.invoke((SOAPEnvelope)envelope);
- throw new Exception("AA not implemented! Have to
figure out why resultObject = call.invoke((SOAPEnvelope)envelope); does not
compile");
- else
+ if (envelope != null) {
+ resultObject = call.invoke(new Message(envelope));
+ //throw new Exception("AA not implemented! Have to
figure out why resultObject = call.invoke((SOAPEnvelope)envelope); does not
compile");
+ } else
resultObject = call.invoke(new Object[]
{requestMessage});
if (!isInterrupted()) {
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/AbstractPerfsonarResponse.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/AbstractPerfsonarResponse.java
2007-10-26 13:57:41 UTC (rev 3001)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/AbstractPerfsonarResponse.java
2007-10-28 07:45:57 UTC (rev 3002)
@@ -23,7 +23,9 @@
import java.beans.PropertyChangeEvent;
import java.util.Vector;
+
import org.apache.axis.message.SOAPBodyElement;
+import org.apache.axis.message.SOAPEnvelope;
import org.perfsonar.perfsonarui.plugins.IPerfsonarRequest;
import org.perfsonar.perfsonarui.plugins.IPerfsonarResponse;
import org.perfsonar.perfsonarui.plugins.IUserData;
@@ -172,20 +174,25 @@
logger.info("Response object is null!");
} else {
if (response instanceof Vector) {
- for (int i=0; i <
((Vector<?>)response).size(); i++) {
- Object o = ((Vector<?>)
response).get(i);
- if (o instanceof SOAPBodyElement) {
- try {
- process(request,
uData, ((SOAPBodyElement)o).getAsDocument());
- } catch (Exception x) {
- logger.error(x);
- }
- } else logger.error("Result not an
instanceof SOAPBodyElement!\t"+ o );
- }
- }
+ processVector(request,uData,(Vector) response);
+ } else if (response instanceof SOAPEnvelope) {
+ processVector(request,uData,((SOAPEnvelope)
response).getBodyElements());
+ }
}
request.fireResultProcessingCompleted(uData);
}
+ protected void processVector(IPerfsonarRequest request,IUserData
uData,Vector response) {
+ for (int i=0; i < ((Vector<?>)response).size(); i++) {
+ Object o = ((Vector<?>) response).get(i);
+ if (o instanceof SOAPBodyElement) {
+ try {
+ process(request, uData,
((SOAPBodyElement)o).getAsDocument());
+ } catch (Exception x) {
+ logger.error(x);
+ }
+ } else logger.error("Result not an instanceof
SOAPBodyElement!\t"+ o );
+ }
+ }
public synchronized void callException(PerfsonarResponseEvent event) {
countErrors ++;
//logger.error(x);
- perfsonar: r3002 - branches/perfsonarui/src/org/perfsonar/perfsonarui, svnlog, 10/28/2007
Archive powered by MHonArc 2.6.16.