1 /**
2 * Copyright 2004-2013 The Kuali Foundation
3 *
4 * Licensed under the Educational Community License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.opensource.org/licenses/ecl2.php
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16 package org.kuali.student.contract.model;
17
18 import java.util.List;
19
20 /**
21 * Abstration of the spreadsheet that holds the data so we can implement both
22 * google and excel versions as well as caching and expanding ones.
23 * @author nwright
24 */
25 public interface DictionaryModel extends SearchModel, ServiceContractModel {
26
27 /**
28 * get name of the source of this spreadsheet
29 * @return
30 */
31 public List<String> getSourceNames();
32
33 /**
34 * get dictionary entries
35 * @return
36 */
37 public List<Dictionary> getDictionary();
38
39 /**
40 * load lu States
41 * @return
42 */
43 public List<State> getStates();
44
45 /**
46 * get the kuali student types
47 * @return
48 */
49 public List<Type> getTypes();
50
51 /**
52 * get fields
53 * @return
54 */
55 public List<Field> getFields();
56
57 /**
58 * get constraints
59 * @return
60 */
61 public List<Constraint> getConstraints();
62
63 /**
64 * get cross object constraints
65 * @return
66 */
67 public List<CrossObjectConstraint> getCrossObjectConstraints();
68
69 /**
70 * get Orchestration Object Definitions
71 * @return
72 */
73 public List<OrchObj> getOrchObjs();
74
75 /**
76 * get the project definitions
77 * @return list of projects known to the metadata
78 */
79 public List<Project> getProjects();
80 }