1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.teststeps;
14
15 import java.util.Vector;
16
17 import com.eviware.soapui.impl.wsdl.WsdlOperation;
18 import com.eviware.soapui.impl.wsdl.WsdlRequest;
19 import com.eviware.soapui.impl.wsdl.submit.AbstractWsdlMessageExchange;
20 import com.eviware.soapui.impl.wsdl.submit.transports.http.WsdlResponse;
21 import com.eviware.soapui.model.iface.Attachment;
22 import com.eviware.soapui.support.types.StringToStringMap;
23
24 /***
25 * WsdlMessageExchange for a WsdlRequest and its response
26 *
27 * @author ole.matzura
28 */
29
30 public class WsdlResponseMessageExchange extends AbstractWsdlMessageExchange<WsdlRequest>
31 {
32 private WsdlResponse response;
33 private String requestContent;
34
35 public WsdlResponseMessageExchange( WsdlRequest request )
36 {
37 super( request );
38 response = request.getResponse();
39
40 if( response != null )
41 {
42 for( String key : response.getPropertyNames() )
43 {
44 addProperty( key, response.getProperty( key ) );
45 }
46 }
47 }
48
49 public WsdlRequest getRequest()
50 {
51 return getModelItem();
52 }
53
54 public WsdlResponse getResponse()
55 {
56 return response;
57 }
58
59 public void setResponse( WsdlResponse response )
60 {
61 this.response = response;
62 }
63
64 public String getRequestContent()
65 {
66 if( requestContent != null )
67 return requestContent;
68
69 if( response == null )
70 response = getModelItem().getResponse();
71
72 return response == null ? getModelItem().getRequestContent() : response.getRequestContent();
73 }
74
75 public StringToStringMap getRequestHeaders()
76 {
77 return response == null ? getModelItem().getRequestHeaders() : response.getRequestHeaders();
78 }
79
80 public Attachment[] getRequestAttachments()
81 {
82 return getModelItem().getAttachments();
83 }
84
85 public Attachment[] getResponseAttachments()
86 {
87 if( response == null )
88 response = getModelItem().getResponse();
89
90 return response == null ? null : response.getAttachments();
91 }
92
93 public String getResponseContent()
94 {
95 if( response == null )
96 response = getModelItem().getResponse();
97
98 return response == null ? null : response.getContentAsString();
99 }
100
101 public StringToStringMap getResponseHeaders()
102 {
103 if( response == null )
104 response = getModelItem().getResponse();
105
106 return response == null ? null : response.getResponseHeaders();
107 }
108
109 public WsdlOperation getOperation()
110 {
111 return getModelItem().getOperation();
112 }
113
114 public long getTimeTaken()
115 {
116 if( response == null )
117 response = getModelItem().getResponse();
118
119 return response == null ? 0 : response.getTimeTaken();
120 }
121
122 public long getTimestamp()
123 {
124 if( response == null )
125 response = getModelItem().getResponse();
126
127 return response == null ? 0 : response.getTimestamp();
128 }
129
130 public void setRequestContent( String requestContent )
131 {
132 this.requestContent = requestContent;
133 }
134
135 public boolean isDiscarded()
136 {
137 return false;
138 }
139
140 public Vector<?> getRequestWssResult()
141 {
142 return null;
143 }
144
145 public Vector<?> getResponseWssResult()
146 {
147 return response.getWssResult();
148 }
149
150 public String getResponseContentType()
151 {
152 return response.getContentType();
153 }
154
155 public int getResponseStatusCode()
156 {
157 return response.getStatusCode();
158 }
159 }