View Javadoc

1   /*
2    *  soapUI, copyright (C) 2004-2007 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.model.iface;
14  
15  import java.util.List;
16  
17  import javax.xml.namespace.QName;
18  
19  import com.eviware.soapui.impl.wsdl.support.soap.SoapVersion;
20  import com.eviware.soapui.impl.wsdl.support.wsdl.WsdlContext;
21  import com.eviware.soapui.impl.wsdl.support.wsdl.WsdlLoader;
22  import com.eviware.soapui.model.ModelItem;
23  import com.eviware.soapui.model.project.Project;
24  
25  /***
26   * An Interface exposing operations
27   * 
28   * @author Ole.Matzura
29   */
30  
31  public interface Interface extends ModelItem
32  {
33  	/***
34  	 * property for endpoint changes, propertychange messages will contain oldValue = null if an
35  	 * endpoint is added, newValue = null if an endpoint is removed and both values if an endpoint is
36  	 * modified.
37  	 */
38  	
39     public final static String ENDPOINT_PROPERTY = Interface.class.getName() + "@endpoint";
40     
41     /***
42      * property for definition changes
43      */
44     
45     public final static String DEFINITION_PROPERTY = Interface.class.getName() + "@definition";  
46  
47     /***
48      * property for isUpdating() changes
49      */
50     public final static String UPDATING_PROPERTY = Interface.class.getName() + "@updating";  
51     
52     public String [] getEndpoints();
53     
54     public void addEndpoint( String endpoint );
55     
56     public void removeEndpoint( String endpoint );
57     
58     public void changeEndpoint( String oldEndpoint, String newEndpoint );
59  
60     public Operation getOperationAt(int index);
61  
62     public int getOperationCount();
63  
64     public Operation getOperationByName(String name);
65     
66     public Project getProject();
67     
68     public String getDefinition();
69     
70     public SoapVersion getSoapVersion();
71     
72     public void addInterfaceListener( InterfaceListener listener );
73     
74     public void removeInterfaceListener( InterfaceListener listener );
75     
76     public MessageBuilder getMessageBuilder();
77     
78     /***
79      * This shouldn't be here or refactored to an InterfaceContext interface.. 
80      */
81     
82     public WsdlContext getWsdlContext();
83  
84     public QName getBindingName();
85  
86     public boolean isCached();
87  
88     public WsdlLoader createWsdlLoader();
89  
90  	public List<Operation> getOperationList();
91  	
92  	public boolean isUpdating();
93  }