01: /*
02: * Copyright 2005-2007 The Kuali Foundation.
03: *
04: *
05: * Licensed under the Educational Community License, Version 1.0 (the "License");
06: * you may not use this file except in compliance with the License.
07: * You may obtain a copy of the License at
08: *
09: * http://www.opensource.org/licenses/ecl1.php
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package edu.iu.uis.eden.notes.dao;
18:
19: import java.util.List;
20:
21: import org.apache.ojb.broker.query.Criteria;
22: import org.apache.ojb.broker.query.QueryByCriteria;
23: import org.springmodules.orm.ojb.PersistenceBrokerTemplate;
24: import org.springmodules.orm.ojb.support.PersistenceBrokerDaoSupport;
25:
26: import edu.iu.uis.eden.notes.Attachment;
27: import edu.iu.uis.eden.notes.Note;
28:
29: public class NoteDAOOjbImpl extends PersistenceBrokerDaoSupport
30: implements NoteDAO {
31:
32: public Note getNoteByNoteId(Long noteId) {
33: Criteria crit = new Criteria();
34: crit.addEqualTo("noteId", noteId);
35: return (Note) this
36: .getPersistenceBrokerTemplate()
37: .getObjectByQuery(new QueryByCriteria(Note.class, crit));
38: }
39:
40: public List getNotesByRouteHeaderId(Long routeHeaderId) {
41: Criteria crit = new Criteria();
42: crit.addEqualTo("routeHeaderId", routeHeaderId);
43: QueryByCriteria query = new QueryByCriteria(Note.class, crit);
44: query.addOrderByAscending("noteId");
45: return (List) this .getPersistenceBrokerTemplate()
46: .getCollectionByQuery(query);
47: }
48:
49: public void saveNote(Note note) {
50: this .getPersistenceBrokerTemplate().store(note);
51: }
52:
53: public void deleteNote(Note note) {
54: Criteria crit = new Criteria();
55: crit.addEqualTo("noteId", note.getNoteId());
56: this .getPersistenceBrokerTemplate().deleteByQuery(
57: new QueryByCriteria(Note.class, crit));
58: }
59:
60: public void deleteAttachment(Attachment attachment) {
61: Criteria crit = new Criteria();
62: crit.addEqualTo("attachmentId", attachment.getAttachmentId());
63: this .getPersistenceBrokerTemplate().deleteByQuery(
64: new QueryByCriteria(Attachment.class, crit));
65: }
66:
67: public Attachment findAttachment(Long attachmentId) {
68: Criteria crit = new Criteria();
69: crit.addEqualTo("attachmentId", attachmentId);
70: return (Attachment) this .getPersistenceBrokerTemplate()
71: .getObjectByQuery(
72: new QueryByCriteria(Attachment.class, crit));
73: }
74:
75: }
|