View Javadoc

1   /*
2    *  soapUI, copyright (C) 2004-2008 eviware.com 
3    *
4    *  soapUI is free software; you can redistribute it and/or modify it under the 
5    *  terms of version 2.1 of the GNU Lesser General Public License as published by 
6    *  the Free Software Foundation.
7    *
8    *  soapUI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without 
9    *  even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
10   *  See the GNU Lesser General Public License for more details at gnu.org.
11   */
12  
13  package com.eviware.soapui.support.editor.inspectors.wsa;
14  
15  import java.awt.event.ItemEvent;
16  import java.awt.event.ItemListener;
17  import java.beans.PropertyChangeEvent;
18  import java.beans.PropertyChangeListener;
19  
20  import javax.swing.JCheckBox;
21  import javax.swing.JTextField;
22  
23  import com.eviware.soapui.config.MustUnderstandTypeConfig;
24  import com.eviware.soapui.config.WsaVersionTypeConfig;
25  import com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse;
26  import com.eviware.soapui.support.components.SimpleBindingForm;
27  import com.eviware.soapui.support.editor.xml.XmlInspector;
28  
29  public class WsdlMockresponseWsaInspector extends AbstractWsaInspector implements XmlInspector, PropertyChangeListener
30  {
31  	private final WsdlMockResponse response;
32  	private JCheckBox generateMessageIdCheckBox;
33  	private JTextField messageIdTextField;
34  	private JCheckBox addDefaultToCheckBox;
35  	private JTextField toTextField;
36  	private JCheckBox addDefaultActionCheckBox;
37  	private JTextField actionTextField;
38  
39  
40  	public WsdlMockresponseWsaInspector( WsdlMockResponse response )
41  	{
42  		super( response );
43  		this.response = response;
44  	}
45  
46  	public void propertyChange(PropertyChangeEvent arg0)
47  	{
48  		// TODO Auto-generated method stub
49  		
50  	}
51  
52  	public void buildContent(SimpleBindingForm form)
53  	{
54  		form.addSpace( 5 );
55  		form.appendCheckBox("wsaEnabled", "Enable WS-A addressing", "Enable/Disable WS-A addressing");
56  		form.addSpace( 5 );
57  		//add mustUnderstand drop down list
58  		form.appendComboBox( "mustUnderstand", "Must understand", new String[] {MustUnderstandTypeConfig.NONE.toString(), 
59  				MustUnderstandTypeConfig.TRUE.toString(), MustUnderstandTypeConfig.FALSE.toString()},
60  			"The  property for controlling use of the mustUnderstand attribute" );
61  		
62  		form.appendComboBox( "version", "WS-A Version", new String[] {WsaVersionTypeConfig.X_200508.toString(), WsaVersionTypeConfig.X_200408.toString()},
63  			"The  property for managing WS-A version" );
64  		
65  		addDefaultActionCheckBox = form.appendCheckBox("addDefaultAction", "Add default wsa:Action", "Add default wsa:Action");
66  		actionTextField = form.appendTextField(  "action", "Action", "The action related to a message, will be generated if left empty and ws-a settings 'use default action...' checked " );
67  		actionTextField.setEnabled(!addDefaultActionCheckBox.isSelected());
68  		addDefaultActionCheckBox.addItemListener(new ItemListener() {
69  
70  		public void itemStateChanged(ItemEvent arg0)
71  		{
72  			actionTextField.setEnabled(!addDefaultActionCheckBox.isSelected());
73  		}});
74  		
75  		addDefaultToCheckBox = form.appendCheckBox("addDefaultTo", "Add default wsa:To", "Add default wsa:To");
76  		toTextField = form.appendTextField( "to", "To", "The destination endpoint reference, will be generated if left empty" );
77  		toTextField.setEnabled(!addDefaultToCheckBox.isSelected());
78  		addDefaultToCheckBox.addItemListener(new ItemListener() {
79  
80  		public void itemStateChanged(ItemEvent arg0)
81  		{
82  			toTextField.setEnabled(!addDefaultToCheckBox.isSelected());
83  		}});
84  		
85  		form.appendTextField( "relatesTo", "Relates to", "The endpoint reference Mock Response relates to, will be set to 'unspecified' if left empty and ws-a settings 'use default...' checked  " );
86  		form.appendTextField( "relationshipType", "Relationship type", "Relationship type, will be set to 'reply' if left empty and ws-a settings 'use default...' checked  " );
87  		form.addSpace( 10 );
88  		form.appendTextField( "from", "From", "The source endpoint reference" );
89  		form.appendTextField( "faultTo", "Fault to", "The fault endpoint reference" );
90  		form.appendTextField( "replyTo", "Reply to", "The reply endpoint reference" );
91  		generateMessageIdCheckBox = form.appendCheckBox("generateMessageId", "Generate MessageID", "Randomly generate MessageId");
92  		messageIdTextField = form.appendTextField( "messageID", "MessageID", " The ID of a message that can be used to uniquely identify a message, will be generated if left empty and ws-a settings 'generate message id' checked " );
93  		messageIdTextField.setEnabled(!generateMessageIdCheckBox.isSelected());
94  		generateMessageIdCheckBox.addItemListener(new ItemListener() {
95  
96  			public void itemStateChanged(ItemEvent arg0)
97  			{
98  				messageIdTextField.setEnabled(!generateMessageIdCheckBox.isSelected());
99  			}});
100 		form.addSpace( 5 );
101 	}
102 }