Apache CXF API

org.apache.cxf.service
Class ServiceModelVisitor

java.lang.Object
  extended by org.apache.cxf.service.ServiceModelVisitor
Direct Known Subclasses:
JibxSchemaInitializer, ServiceJavascriptBuilder, ServiceModelSchemaValidator, TypeClassInitializer

public class ServiceModelVisitor
extends Object

Implements the Visitor pattern for the Service model. The visit order is as follows:

 1) Begin the overall service info.
 2) Begin the service's interface.
 3) For each operation, begin the operation.
 3.1) begin the input message.
 3.1.1) begin and end each part of the input message.
 3.2) end the input message.
 3.3) begin the output message.
 3.3.1) begin and end each part of the output message.
 3.4) end the output message
 3.5) begin each fault. (3.5-3.6 repeated for each fault)
 3.5.1) begin and end each part of each fault
 3.6) end each fault.
 3.7) if a wrapped operation, begin the corresponding unwrapped operation.
 3.8) process the entire unwrapped operation starting at (3).
 3.9) end the unwrapped operation.
 4) end the operation.
 5) end the interface.
 6) For each endpoint (= port) begin and end the EndpointInfo
 7) For each binding (= BindingInfo) begin and end the BindingInfo.
 8) end the service info.
 
Unwrapped operations share messages with their corresponding wrapped messages, so beware of processing the same messages twice as if unique.


Field Summary
protected  ServiceInfo serviceInfo
           
 
Constructor Summary
ServiceModelVisitor(ServiceInfo serviceInfo)
           
 
Method Summary
 void begin(EndpointInfo endpointInfo)
           
 void begin(FaultInfo fault)
           
 void begin(InterfaceInfo intf)
           
 void begin(MessageInfo msg)
           
 void begin(MessagePartInfo part)
           
 void begin(OperationInfo op)
           
 void begin(ServiceInfo service)
           
 void begin(UnwrappedOperationInfo op)
           
 void end(EndpointInfo endpointInfo)
           
 void end(FaultInfo fault)
           
 void end(InterfaceInfo intf)
           
 void end(MessageInfo msg)
           
 void end(MessagePartInfo part)
           
 void end(OperationInfo op)
           
 void end(ServiceInfo service)
           
 void end(UnwrappedOperationInfo op)
           
 void walk()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

serviceInfo

protected ServiceInfo serviceInfo
Constructor Detail

ServiceModelVisitor

public ServiceModelVisitor(ServiceInfo serviceInfo)
Method Detail

walk

public void walk()

begin

public void begin(ServiceInfo service)

begin

public void begin(InterfaceInfo intf)

begin

public void begin(OperationInfo op)

begin

public void begin(UnwrappedOperationInfo op)

begin

public void begin(MessageInfo msg)

begin

public void begin(MessagePartInfo part)

begin

public void begin(FaultInfo fault)

end

public void end(ServiceInfo service)

end

public void end(InterfaceInfo intf)

end

public void end(OperationInfo op)

end

public void end(UnwrappedOperationInfo op)

end

public void end(MessageInfo msg)

end

public void end(MessagePartInfo part)

end

public void end(FaultInfo fault)

begin

public void begin(EndpointInfo endpointInfo)

end

public void end(EndpointInfo endpointInfo)

Apache CXF API

Apache CXF