View Javadoc

1   /*
2    *  soapui, copyright (C) 2005 Ole Matzura / eviware.com 
3    *
4    *  SoapUI is free software; you can redistribute it and/or modify it under the 
5    *  terms of the GNU Lesser General Public License as published by the Free Software Foundation; 
6    *  either version 2.1 of the License, or (at your option) any later version.
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;
14  
15  import java.beans.PropertyChangeListener;
16  
17  import javax.swing.Action;
18  import javax.swing.ImageIcon;
19  
20  import com.eviware.soapui.model.tree.SoapUITreeNode;
21  
22  /***
23   * General behaviour for all soapui model items
24   * 
25   * @author Ole.Matzura
26   */
27  
28  public interface ModelItem
29  {
30     public final static String NAME_PROPERTY = ModelItem.class.getName() + "@name";
31     public final static String ICON_PROPERTY = ModelItem.class.getName() + "@icon";
32     public final static String ACTIONS_PROPERTY = ModelItem.class.getName() + "@actions";
33     public final static String DESCRIPTION_PROPERTY = ModelItem.class.getName()  + "@description";
34     
35     public String getName();
36     
37     public ImageIcon getIcon();
38     
39     public Action[] getActions();
40     
41     public PanelBuilder getPanelBuilder();
42  
43     public String getDescription();
44     
45     public void addPropertyChangeListener( String propertyName, PropertyChangeListener listener );
46     
47     public void addPropertyChangeListener( PropertyChangeListener listener );
48     
49     public void removePropertyChangeListener(PropertyChangeListener listener);
50     
51     public SoapUITreeNode getTreeNode();
52  }