1
2
3
4
5
6
7
8
9
10
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.WsdlRequest;
26 import com.eviware.soapui.support.components.SimpleBindingForm;
27 import com.eviware.soapui.support.editor.xml.XmlInspector;
28
29 public class WsdlRequestWsaInspector extends AbstractWsaInspector implements XmlInspector, PropertyChangeListener
30 {
31 private final WsdlRequest request;
32 private JCheckBox generateMessageIdCheckBox;
33 private JCheckBox addDefaultToCheckBox;
34 private JCheckBox addDefaultActionCheckBox;
35 private JTextField messageIdTextField;
36 private JTextField toTextField;
37 private JTextField actionTextField;
38
39 public WsdlRequestWsaInspector( WsdlRequest request )
40 {
41 super( request );
42 this.request = request;
43 }
44
45 public void propertyChange( PropertyChangeEvent arg0 )
46 {
47 }
48
49 public void buildContent( SimpleBindingForm form )
50 {
51 form.addSpace( 5 );
52 form.appendCheckBox( "wsaEnabled", "Enable WS-A addressing", "Enable/Disable WS-A addressing" );
53 form.addSpace( 5 );
54
55 form.appendComboBox( "mustUnderstand", "Must understand", new String[] {
56 MustUnderstandTypeConfig.NONE.toString(), MustUnderstandTypeConfig.TRUE.toString(),
57 MustUnderstandTypeConfig.FALSE.toString() },
58 "The property for controlling use of the mustUnderstand attribute" );
59
60 form.appendComboBox( "version", "WS-A Version", new String[] { WsaVersionTypeConfig.X_200508.toString(),
61 WsaVersionTypeConfig.X_200408.toString() }, "The property for managing WS-A version" );
62
63 addDefaultActionCheckBox = form.appendCheckBox( "addDefaultAction", "Add default wsa:Action",
64 "Add default wsa:Action" );
65 actionTextField = form
66 .appendTextField( "action", "Action",
67 "The action related to a message, will be generated if left empty and ws-a settings 'use default action...' checked " );
68 actionTextField.setEnabled( !addDefaultActionCheckBox.isSelected() );
69 addDefaultActionCheckBox.addItemListener( new ItemListener()
70 {
71
72 public void itemStateChanged( ItemEvent arg0 )
73 {
74 actionTextField.setEnabled( !addDefaultActionCheckBox.isSelected() );
75 }
76 } );
77
78 addDefaultToCheckBox = form.appendCheckBox( "addDefaultTo", "Add default wsa:To", "Add default wsa:To" );
79 toTextField = form.appendTextField( "to", "To",
80 "The destination endpoint reference, will be generated if left empty" );
81 toTextField.setEnabled( !addDefaultToCheckBox.isSelected() );
82 addDefaultToCheckBox.addItemListener( new ItemListener()
83 {
84
85 public void itemStateChanged( ItemEvent arg0 )
86 {
87 toTextField.setEnabled( !addDefaultToCheckBox.isSelected() );
88 }
89 } );
90
91 form.appendTextField( "replyTo", "Reply to", "The reply endpoint reference, will be generated if left empty" );
92 form.appendTextArea( "replyToRefParams", "ReplyTo Reference Parameters",
93 "ReplyTo Reference Parameters, content will be inserted as an xml (not text)" );
94 generateMessageIdCheckBox = form.appendCheckBox( "generateMessageId", "Generate MessageID",
95 "Randomly generate MessageId" );
96 messageIdTextField = form
97 .appendTextField(
98 "messageID",
99 "MessageID",
100 " 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 " );
101 messageIdTextField.setEnabled( !generateMessageIdCheckBox.isSelected() );
102 generateMessageIdCheckBox.addItemListener( new ItemListener()
103 {
104
105 public void itemStateChanged( ItemEvent arg0 )
106 {
107 messageIdTextField.setEnabled( !generateMessageIdCheckBox.isSelected() );
108 }
109 } );
110 form.addSpace( 10 );
111 form.appendTextField( "from", "From", "The source endpoint reference" );
112 form.appendTextField( "faultTo", "Fault to", "The fault endpoint reference" );
113 form.appendTextArea( "faultToRefParams", "FaultTo Reference Parameters",
114 "FaultTo Reference Parameters, content will be inserted as an xml (not text)" );
115 form.appendTextField( "relatesTo", "Relates to", "The endpoint reference request relates to" );
116 form.appendTextField( "relationshipType", "Relationship type", "Relationship type" );
117 form.addSpace( 5 );
118 }
119 }