01: /*
02: * soapUI, copyright (C) 2004-2007 eviware.com
03: *
04: * soapUI is free software; you can redistribute it and/or modify it under the
05: * terms of version 2.1 of the GNU Lesser General Public License as published by
06: * the Free Software Foundation.
07: *
08: * soapUI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
09: * 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.impl.wsdl.teststeps.actions;
14:
15: import com.eviware.soapui.impl.wsdl.teststeps.WsdlMessageAssertion;
16: import com.eviware.soapui.support.UISupport;
17: import com.eviware.soapui.support.action.support.AbstractSoapUIAction;
18:
19: /**
20: * Clones the specified WsdlMessageAssertion
21: *
22: * @author ole.matzura
23: */
24:
25: public class CloneAssertionAction extends
26: AbstractSoapUIAction<WsdlMessageAssertion> {
27: public static final String SOAPUI_ACTION_ID = "CloneAssertionAction";
28:
29: public CloneAssertionAction() {
30: super ("Clone", "Clones this assertion");
31: }
32:
33: public void perform(WsdlMessageAssertion target, Object param) {
34: String name = target.getName();
35:
36: while (target.getName().equals(name)) {
37: name = UISupport.prompt(
38: "Specify unique name for cloned assertion",
39: "Clone Assertion", target.getName());
40: if (name == null)
41: return;
42: }
43:
44: WsdlMessageAssertion assertion = target.getAssertable()
45: .cloneAssertion(target, name);
46:
47: if (assertion.isConfigurable())
48: assertion.configure();
49: }
50: }
|