1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.submit.filters;
14
15 import org.apache.log4j.Logger;
16
17 import com.eviware.soapui.impl.support.AbstractHttpRequest;
18 import com.eviware.soapui.impl.wsdl.submit.transports.http.BaseHttpRequestTransport;
19 import com.eviware.soapui.model.iface.SubmitContext;
20 import com.eviware.soapui.model.propertyexpansion.PropertyExpander;
21 import com.eviware.soapui.model.propertyexpansion.PropertyExpansionUtils;
22 import com.eviware.soapui.model.propertyexpansion.resolvers.ResolverUtils;
23 import com.eviware.soapui.settings.CommonSettings;
24
25 /***
26 * RequestFilter that expands properties in request content
27 *
28 * @author Ole.Matzura
29 */
30
31 public class PropertyExpansionRequestFilter extends AbstractRequestFilter
32 {
33 public final static Logger log = Logger.getLogger( PropertyExpansionRequestFilter.class );
34
35 public void filterAbstractHttpRequest( SubmitContext context, AbstractHttpRequest<?> httpRequest )
36 {
37 String content = ( String )context.getProperty( BaseHttpRequestTransport.REQUEST_CONTENT );
38 if( content == null )
39 {
40 log.warn( "Missing request content in context, skipping property expansion" );
41 }
42 else
43 {
44 content = PropertyExpander.expandProperties( context, content, httpRequest.getSettings().getBoolean(
45 CommonSettings.ENTITIZE_PROPERTIES ) );
46
47 if( content != null )
48 {
49 context.setProperty( BaseHttpRequestTransport.REQUEST_CONTENT, content );
50 }
51 }
52 }
53
54 /***
55 * @deprecated
56 */
57
58 public static String expandProperties( SubmitContext context, String content )
59 {
60 return PropertyExpander.expandProperties( context, content );
61 }
62
63 /***
64 * @deprecated
65 */
66
67 public static String getGlobalProperty( String propertyName )
68 {
69 return PropertyExpansionUtils.getGlobalProperty( propertyName );
70 }
71
72 /***
73 * @deprecated Use
74 * {@link ResolverUtils#extractXPathPropertyValue(Object,String)}
75 * instead
76 */
77 public static String extractXPathPropertyValue( Object property, String xpath )
78 {
79 return ResolverUtils.extractXPathPropertyValue( property, xpath );
80 }
81 }