View Javadoc

1   /*
2    *  soapUI, copyright (C) 2004-2010 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  package com.eviware.soapui.impl.wsdl.support.jms.header;
13  
14  import java.beans.PropertyChangeListener;
15  import java.beans.PropertyChangeSupport;
16  
17  import com.eviware.soapui.config.JMSDeliveryModeTypeConfig;
18  import com.eviware.soapui.config.JMSHeaderConfConfig;
19  import com.eviware.soapui.impl.wsdl.submit.transports.jms.JMSHeader;
20  import com.eviware.soapui.support.PropertyChangeNotifier;
21  
22  public class JMSHeaderConfig implements PropertyChangeNotifier
23  {
24  
25  	private JMSHeaderConfConfig jmsHeaderConfConfig;
26  
27  	private PropertyChangeSupport propertyChangeSupport;
28  
29  	private final JMSHeaderContainer container;
30  
31  	public JMSHeaderConfig(JMSHeaderConfConfig jmsHeaderConfConfig, JMSHeaderContainer container)
32  	{
33  		this.jmsHeaderConfConfig = jmsHeaderConfConfig;
34  		this.container = container;
35  		propertyChangeSupport = new PropertyChangeSupport(this);
36  		if (!jmsHeaderConfConfig.isSetJMSDeliveryMode())
37  		{
38  			jmsHeaderConfConfig.setJMSDeliveryMode(JMSDeliveryModeTypeConfig.PERSISTENT);
39  		}
40  	}
41  
42  	public JMSHeaderContainer getContainer()
43  	{
44  		return container;
45  	}
46  
47  	public void setJMSHeaderConfConfig(JMSHeaderConfConfig jmsHeaderConfConfig)
48  	{
49  		this.jmsHeaderConfConfig = jmsHeaderConfConfig;
50  	}
51  
52  	public String getJMSCorrelationID()
53  	{
54  		return jmsHeaderConfConfig.getJMSCorrelationID();
55  	}
56  
57  	public String getJMSReplyTo()
58  	{
59  		return jmsHeaderConfConfig.getJMSReplyTo();
60  	}
61  
62  	public String getJMSDeliveryMode()
63  	{
64  		return jmsHeaderConfConfig.getJMSDeliveryMode().toString();
65  	}
66  
67  	public String getJMSPriority()
68  	{
69  		return jmsHeaderConfConfig.getJMSPriority();
70  	}
71  
72  	public String getJMSType()
73  	{
74  		return jmsHeaderConfConfig.getJMSType();
75  	}
76  
77  	public String getTimeToLive()
78  	{
79  		return jmsHeaderConfConfig.getTimeToLive();
80  	}
81  	
82  	public String getDurableSubscriptionName()
83  	{
84  		return jmsHeaderConfConfig.getDurableSubscriptionName();
85  	}
86  	
87  	public String getClientID()
88  	{
89  		return jmsHeaderConfConfig.getClientID();
90  	}
91  	
92  	public String getMessageSelector()
93  	{
94  		return jmsHeaderConfConfig.getMessageSelector();
95  	}
96  
97  	public void setJMSCorrelationID(String newValue)
98  	{
99  		String oldValue = getJMSCorrelationID();
100 		jmsHeaderConfConfig.setJMSCorrelationID(newValue);
101 		propertyChangeSupport.firePropertyChange(JMSHeader.JMSCORRELATIONID, oldValue, newValue);
102 	}
103 
104 	public void setJMSDeliveryMode(String newValue)
105 	{
106 		String oldValue = getJMSDeliveryMode();
107 		jmsHeaderConfConfig.setJMSDeliveryMode(JMSDeliveryModeTypeConfig.Enum.forString(newValue));
108 		propertyChangeSupport.firePropertyChange(JMSHeader.JMSDELIVERYMODE, oldValue, newValue);
109 	}
110 
111 	public void setJMSPriority(String newValue)
112 	{
113 		String oldValue = getJMSPriority();
114 		jmsHeaderConfConfig.setJMSPriority(newValue);
115 		propertyChangeSupport.firePropertyChange(JMSHeader.JMSPRIORITY, oldValue, newValue);
116 	}
117 
118 	public void setJMSReplyTo(String newValue)
119 	{
120 		String oldValue = getJMSReplyTo();
121 		jmsHeaderConfConfig.setJMSReplyTo(newValue);
122 		propertyChangeSupport.firePropertyChange(JMSHeader.JMSREPLYTO, oldValue, newValue);
123 	}
124 
125 	public void setJMSType(String newValue)
126 	{
127 		String oldValue = getJMSType();
128 		jmsHeaderConfConfig.setJMSType(newValue);
129 		propertyChangeSupport.firePropertyChange(JMSHeader.JMSTYPE, oldValue, newValue);
130 	}
131 
132 	public void setTimeToLive(String newValue)
133 	{
134 		String oldValue = getTimeToLive();
135 		jmsHeaderConfConfig.setTimeToLive(newValue);
136 		propertyChangeSupport.firePropertyChange(JMSHeader.TIMETOLIVE, oldValue, newValue);
137 	}
138 	
139 	public void setDurableSubscriptionName(String newValue)
140 	{
141 		String oldValue = getTimeToLive();
142 		jmsHeaderConfConfig.setDurableSubscriptionName(newValue);
143 		propertyChangeSupport.firePropertyChange(JMSHeader.DURABLE_SUBSCRIPTION_NAME, oldValue, newValue);
144 	}
145 	
146 	public void setClientID(String newValue)
147 	{
148 		String oldValue = getTimeToLive();
149 		jmsHeaderConfConfig.setClientID(newValue);
150 		propertyChangeSupport.firePropertyChange(JMSHeader.CLIENT_ID, oldValue, newValue);
151 	}
152 	
153 	public void setMessageSelector(String newValue)
154 	{
155 		String oldValue = getMessageSelector();
156 		jmsHeaderConfConfig.setMessageSelector(newValue);
157 		propertyChangeSupport.firePropertyChange(JMSHeader.MESSAGE_SELECTOR, oldValue, newValue);
158 	}
159 
160 	public void addPropertyChangeListener(PropertyChangeListener listener)
161 	{
162 		propertyChangeSupport.addPropertyChangeListener(listener);
163 	}
164 
165 	public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
166 	{
167 		propertyChangeSupport.addPropertyChangeListener(propertyName, listener);
168 	}
169 
170 	public void removePropertyChangeListener(PropertyChangeListener listener)
171 	{
172 		propertyChangeSupport.removePropertyChangeListener(listener);
173 	}
174 
175 	public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
176 	{
177 		propertyChangeSupport.removePropertyChangeListener(propertyName, listener);
178 	}
179 
180 }