Stackdb
Stackdb is a stackable, multi-target and -level source debugger and memory forensics library.
|
Public Member Functions | |
Map< String, MessageReceiver > | getMessageReceiverClassMap () |
String | getTargetNamespace () |
String | getSchemaNamespace () |
String | getSchemaNamespacePrefix () |
String | getSchemaResourcePath () |
Map< String, QName > | getStaticTypeMapping () |
Map< String, String > | getMethodClassNameMapping () |
Map< String, QName > | getDynamicTypeMapping () |
boolean | isRootService () |
String | getServiceName () |
String | getServicePath () |
vmi1.AnalysisResultNotificationResponse | analysisResultNotification (vmi1.AnalysisResultNotification analysisResultNotification) |
vmi1.AnalysisEventNotificationResponse | analysisEventNotification (vmi1.AnalysisEventNotification analysisEventNotification) |
Static Protected Attributes | |
static final String | tns |
static final String | sns |
static final String | snsPrefix = "vmi1" |
static Map< String, MessageReceiver > | messageReceiverClassMap = null |
static final String | schemaResourcePath |
static Map< String, QName > | typeMapping = null |
static Map< String, String > | methodClassNameMapping = null |
static Map< String, QName > | dynamicTypeMapping = null |
Definition at line 28 of file SimpleAnalysisListener.java.
|
inline |
Definition at line 188 of file SimpleAnalysisListener.java.
|
inline |
Definition at line 141 of file SimpleAnalysisListener.java.
|
inline |
Basically, if your web service RPCs start with an uppercase letter, and you use Axis to generate your service skeleton, it will lowercase the letter – BUT it will generate a class representing that RPC SOAP message with the letter still uppercased! So, we have to map between these things.
We also have to map them to XML schema elements. This function does this!
So, return a HashMap of lowercase service method name to fully-qualified class name for the message that calls it. i.e.,
probeEventNotification -> new QName(getTargetNamespace(), "ProbeEventNotification")
etc.
(The dynamic type map is only consulted for methods right now; but we could extend it!)
Implements vmi1.SimpleService.
Definition at line 110 of file SimpleAnalysisListener.java.
|
inline |
This tells the SimpleServiceServer which MessageReceiver this service requires. Then it can tell Axis.
Note, you must use special strings as the keys in the map. They come from org.apache.axis2.description.WSDL2Constants, and which one you use depends on whether your service operations do in/out messages, in-only, out-only, etc.
Probably just use WSDL2Constants.MEP_URI_IN_OUT because you'll probably have service operations that do both input/output.
Unfortunately, there doesn't seem to be any of this information inside the MessageReceiver object itself, or I would have just used that!
Implements vmi1.SimpleService.
Definition at line 44 of file SimpleAnalysisListener.java.
|
inline |
Basically, if your web service RPCs start with an uppercase letter, and you use Axis to generate your service skeleton, it will lowercase the letter – BUT it will generate a class representing that RPC SOAP message with the letter still uppercased! So, we have to map between these things.
So, return a HashMap of lowercase service method name to fully-qualified class name for the message that calls it. i.e.,
probeEventNotification -> vmi1.ProbeEventNotification
etc.
Implements vmi1.SimpleService.
Definition at line 96 of file SimpleAnalysisListener.java.
|
inline |
Return the schema namespace in your WSDL file. If you use JSR-181 web service annotations, make sure this is the same thing as in your annotation!
If this is not the same as getTargetNamespace(), everything will probably break. So don't do it!
Implements vmi1.SimpleService.
Definition at line 62 of file SimpleAnalysisListener.java.
|
inline |
Return the schema namespace prefix.
Implements vmi1.SimpleService.
Definition at line 67 of file SimpleAnalysisListener.java.
|
inline |
Right now, this must be a relative JAR path to a WSDL file.
Implements vmi1.SimpleService.
Definition at line 72 of file SimpleAnalysisListener.java.
|
inline |
Return the service name. If you return null, we will just use the name of the class that implements this interface; this will probably fail. You must use a real service name that corresponds to a WSDL service location. This should be the last thing in the WSDL location path, too; i.e., the part after the final '/'.
Also, if you use JSR-181 web service annotations, make sure this is the same thing as in your annotation!
Implements vmi1.SimpleService.
Definition at line 131 of file SimpleAnalysisListener.java.
|
inline |
Definition at line 136 of file SimpleAnalysisListener.java.
|
inline |
Don't use this right now; just provide an empty HashMap.
Implements vmi1.SimpleService.
Definition at line 77 of file SimpleAnalysisListener.java.
|
inline |
Return the target namespace. If you use JSR-181 web service annotations, make sure this is the same thing as in your annotation!
Implements vmi1.SimpleService.
Definition at line 57 of file SimpleAnalysisListener.java.
|
inline |
Definition at line 126 of file SimpleAnalysisListener.java.
|
staticprotected |
Definition at line 41 of file SimpleAnalysisListener.java.
|
staticprotected |
Definition at line 36 of file SimpleAnalysisListener.java.
|
staticprotected |
Definition at line 40 of file SimpleAnalysisListener.java.
|
staticprotected |
Definition at line 37 of file SimpleAnalysisListener.java.
|
staticprotected |
Definition at line 33 of file SimpleAnalysisListener.java.
|
staticprotected |
Definition at line 35 of file SimpleAnalysisListener.java.
|
staticprotected |
Definition at line 31 of file SimpleAnalysisListener.java.
|
staticprotected |
Definition at line 39 of file SimpleAnalysisListener.java.