View Javadoc
1   /*
2    WSMO Studio - a Semantic Web Service Editor
3    Copyright (c) 2004-2006, OntoText Lab. / SIRMA Group
4    
5    This library is free software; you can redistribute it and/or modify it under
6    the terms of the GNU Lesser General Public License as published by the Free
7    Software Foundation; either version 2.1 of the License, or (at your option)
8    any later version.
9    This library is distributed in the hope that it will be useful, but WITHOUT
10   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11   FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12   details.
13   You should have received a copy of the GNU Lesser General Public License along
14   with this library; if not, write to the Free Software Foundation, Inc.,
15   59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16   */
17  
18  /***
19   * <p>Title: WSMO Studio</p>
20   * <p>Description: Semantic Web Service Editor</p>
21   * <p>Copyright:  Copyright (c) 2004-2006</p>
22   * <p>Company: OntoText Lab. / SIRMA </p>
23   */
24  
25  package org.wsmostudio.ui.views.navigator;
26  
27  /***
28   * An essential part of the WSMO Navigator's extension point <code>org.wsmostudio.ui.navigator_content</code>.
29   * It determines the required behaviour for the extensions which introduce new entities to
30   * the hierarchical tree structure.
31   *
32   * @author not attributable
33   * @version $Revision: 1.3 $ $Date: 2006/01/09 12:51:14 $
34   */
35  
36  public interface TreeProvider {
37  
38      /***
39       * 
40       * @param parent
41       * @return the visual (ordered) content of the input object.
42       */
43      Object[] getChildren(Object parent);
44      
45      /***
46       * 
47       * @param parent
48       * @return <code>true</code> if the input object can have visual content.
49       */
50      boolean hasChildren(Object parent);
51      
52      /***
53       * 
54       * @param entity
55       * @return the label which presents the input object in the Navigator view.
56       */
57      String labelFor(Object entity);
58  }
59  
60  /*
61   * $Log: TreeProvider.java,v $
62   * Revision 1.3  2006/01/09 12:51:14  alex_simov
63   * Copyright message in header updated
64   *
65   * Revision 1.2  2005/11/16 16:29:41  alex_simov
66   * TreeProviders work with Object instead of Entity
67   *
68   * Revision 1.1  2005/10/14 13:25:18  alex_simov
69   * WSMO Navigator's extension point creation
70   *
71   */