View Javadoc

1   package com.eviware.soapui.impl.wsdl.teststeps;
2   
3   import com.eviware.soapui.impl.wsdl.WsdlOperation;
4   import com.eviware.soapui.impl.wsdl.WsdlRequest;
5   import com.eviware.soapui.impl.wsdl.submit.WsdlMessageExchange;
6   import com.eviware.soapui.impl.wsdl.submit.transports.http.WsdlResponse;
7   import com.eviware.soapui.model.iface.Attachment;
8   import com.eviware.soapui.support.types.StringToStringMap;
9   
10  public class WsdlResponseMessageExchange extends WsdlMessageExchange
11  {
12  	private final WsdlRequest request;
13  	private WsdlResponse response;
14  	private String requestContent;
15  
16  	public WsdlResponseMessageExchange( WsdlRequest request )
17  	{
18  		this.request = request;
19  		response = request.getResponse();
20  	}
21  	
22  	public void setResponse( WsdlResponse response )
23  	{
24  		this.response = response;
25  	}
26  
27  	public String getRequestContent()
28  	{
29  		if( requestContent != null )
30  			return requestContent;
31  		
32  		if( response == null )
33  			response = request.getResponse();
34  		
35  		return response == null ? request.getRequestContent() : response.getRequestContent(); 
36  	}
37  
38  	public StringToStringMap getRequestHeaders()
39  	{
40  		if( response == null )
41  			response = request.getResponse();
42  		
43  		return response == null ? request.getRequestHeaders() : response.getRequestHeaders(); 
44  	}
45  	
46  	public Attachment[] getRequestAttachments()
47  	{
48  		return request.getAttachments();
49  	}
50  
51  	public Attachment[] getResponseAttachments()
52  	{
53  		if( response == null )
54  			response = request.getResponse();
55  		
56  		return response == null ? null : response.getAttachments();
57  	}
58  
59  	public String getResponseContent()
60  	{
61  		if( response == null )
62  			response = request.getResponse();
63  		
64  		return response == null ? null : response.getContentAsString();
65  	}
66  
67  	public StringToStringMap getResponseHeaders()
68  	{
69  		if( response == null )
70  			response = request.getResponse();
71  		
72  		return response == null ? null : response.getResponseHeaders();
73  	}
74  
75  	public WsdlOperation getOperation()
76  	{
77  		return request.getOperation();
78  	}
79  
80  	public long getTimeTaken()
81  	{
82  		if( response == null )
83  			response = request.getResponse();
84  		
85  		return response == null ? 0 : response.getTimeTaken();
86  	}
87  
88  	public long getTimestamp()
89  	{
90  		if( response == null )
91  			response = request.getResponse();
92  		
93  		return response == null ? 0 : response.getTimestamp();
94  	}
95  
96  	public void setRequestContent( String requestContent )
97  	{
98  		this.requestContent = requestContent;
99  	}
100 }