1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.panels.mockoperation;
14
15 import java.beans.PropertyChangeEvent;
16 import java.beans.PropertyChangeListener;
17
18 import org.apache.xmlbeans.SchemaTypeSystem;
19 import org.apache.xmlbeans.XmlBeans;
20
21 import com.eviware.soapui.impl.wsdl.WsdlInterface;
22 import com.eviware.soapui.impl.wsdl.WsdlOperation;
23 import com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse;
24 import com.eviware.soapui.impl.wsdl.panels.request.components.editor.support.AbstractXmlDocument;
25 import com.eviware.soapui.impl.wsdl.support.wsdl.WsdlContext;
26
27 public class MockResponseXmlDocument extends AbstractXmlDocument implements PropertyChangeListener
28 {
29 private final WsdlMockResponse mockResponse;
30
31 public MockResponseXmlDocument( WsdlMockResponse response )
32 {
33 this.mockResponse = response;
34
35 mockResponse.addPropertyChangeListener( WsdlMockResponse.RESPONSECONTENT_PROPERTY, this );
36 }
37
38 public SchemaTypeSystem getTypeSystem()
39 {
40 try
41 {
42 WsdlOperation operation = mockResponse.getMockOperation().getOperation();
43 if( operation != null )
44 {
45 WsdlInterface iface = operation.getInterface();
46 WsdlContext wsdlContext = iface.getWsdlContext();
47 return wsdlContext.getSchemaTypeSystem();
48 }
49 }
50 catch (Exception e1)
51 {
52 e1.printStackTrace();
53 }
54
55 return XmlBeans.getBuiltinTypeSystem();
56 }
57
58 public String getXml()
59 {
60 return mockResponse.getResponseContent();
61 }
62
63 public void setXml( String xml )
64 {
65 mockResponse.setResponseContent( xml );
66 }
67
68 public void propertyChange( PropertyChangeEvent arg0 )
69 {
70 fireXmlChanged( (String)arg0.getOldValue(), (String)arg0.getNewValue() );
71 }
72 }