Salome HOME
More business logic has been moved from BO to services. ServiceLocator is created...
[tools/siman.git] / Workspace / Siman-Common / src / org / splat / service / KnowledgeElementTypeService.java
1 /*****************************************************************************
2  * Company         OPEN CASCADE
3  * Application     SIMAN
4  * File            $Id$ 
5  * Creation date   19.10.2012
6  * @author         $Author$
7  * @version        $Revision$
8  * @copyright      OPEN CASCADE 2012
9  *****************************************************************************/
10
11 package org.splat.service;
12
13 import java.util.List;
14
15 import org.splat.dal.bo.som.KnowledgeElementType;
16 import org.splat.dal.bo.som.ProgressState;
17
18 /**
19  * The service interface for working with knowledge element types.
20  * 
21  * @author <a href="mailto:roman.kozlov@opencascade.com">Roman Kozlov (RKV)</a>
22  */
23 public interface KnowledgeElementTypeService {
24
25         /**
26          * Find a knowledge type by its name.
27          * 
28          * @param name
29          *            the knowledge type name
30          * @return the found knowledge type
31          */
32         public KnowledgeElementType selectType(String name);
33
34         /**
35          * Create a knowledge element type with the given name.
36          * 
37          * @param name
38          *            the new type name
39          * @return the created knowledge type
40          */
41         public KnowledgeElementType createType(String name);
42
43         /**
44          * Get all knowledge types from the database.
45          * 
46          * @return the list of all knowledge types
47          */
48         public List<KnowledgeElementType> selectAllTypes();
49
50         /**
51          * Get knowledge types which have the given progress state.
52          * 
53          * @param state
54          *            the progress state
55          * @return the list of found knowledge types
56          */
57         public List<KnowledgeElementType> selectTypesWhere(ProgressState state);
58
59         /**
60          * Get a knowledge type by its id.
61          * 
62          * @param index
63          *            the id of a knowledge type
64          * @return the found knowledge type
65          */
66         public KnowledgeElementType selectType(long index);
67 }