1 /**
2 * Copyright 2010 The Kuali Foundation Licensed under the
3 * Educational Community License, Version 2.0 (the "License"); you may
4 * not use this file except in compliance with the License. You may
5 * obtain a copy of the License at
6 *
7 * http://www.osedu.org/licenses/ECL-2.0
8 *
9 * Unless required by applicable law or agreed to in writing,
10 * software distributed under the License is distributed on an "AS IS"
11 * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12 * or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15
16 package org.kuali.student.common.dao;
17
18 import java.util.List;
19
20 import org.kuali.student.common.exceptions.DoesNotExistException;
21
22 public interface CrudDao {
23 public <T> T fetch(Class<T> clazz, String key) throws DoesNotExistException;
24
25 public <T> T create(T entity);
26
27 public <T> void delete(Class<T> clazz, String key) throws DoesNotExistException;
28
29 public void delete(Object entity);
30
31 public <T> List<T> find(Class<T> clazz);
32
33 public <T> T update(T entity);
34 }