01: /**
02: * LibreSource
03: * Copyright (C) 2004-2008 Artenum SARL / INRIA
04: * http://www.libresource.org - contact@artenum.com
05: *
06: * This file is part of the LibreSource software,
07: * which can be used and distributed under license conditions.
08: * The license conditions are provided in the LICENSE.TXT file
09: * at the root path of the packaging that enclose this file.
10: * More information can be found at
11: * - http://dev.libresource.org/home/license
12: *
13: * Initial authors :
14: *
15: * Guillaume Bort / INRIA
16: * Francois Charoy / Universite Nancy 2
17: * Julien Forest / Artenum
18: * Claude Godart / Universite Henry Poincare
19: * Florent Jouille / INRIA
20: * Sebastien Jourdain / INRIA / Artenum
21: * Yves Lerumeur / Artenum
22: * Pascal Molli / Universite Henry Poincare
23: * Gerald Oster / INRIA
24: * Mariarosa Penzi / Artenum
25: * Gerard Sookahet / Artenum
26: * Raphael Tani / INRIA
27: *
28: * Contributors :
29: *
30: * Stephane Bagnier / Artenum
31: * Amadou Dia / Artenum-IUP Blois
32: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33: */package org.libresource.forum.ejb;
34:
35: import org.libresource.LibresourceResourceBase;
36:
37: import org.libresource.forum.util.ThreadResourceUtil;
38:
39: import javax.ejb.CreateException;
40:
41: /**
42: * A libresource Messages Thread
43: *
44: * @libresource.resource name="Thread" service="LibresourceForum"
45: */
46: public abstract class ThreadResourceBean extends
47: LibresourceResourceBase {
48: /**
49: * @ejb.create-method
50: */
51: public String ejbCreate(String name) throws CreateException {
52: setId(ThreadResourceUtil.generateGUID(this ));
53: setName(name);
54:
55: return null;
56: }
57:
58: // persistents fields
59:
60: /**
61: * @ejb.persistent-field
62: * @ejb.interface-method
63: * @ejb.value-object match="libresource"
64: * @ejb.transaction type="Supports"
65: */
66: public abstract String getId();
67:
68: /**
69: * @ejb.persistent-field
70: * @ejb.interface-method
71: * @ejb.transaction type="Mandatory"
72: */
73: public abstract void setId(String id);
74:
75: /**
76: * @ejb.interface-method
77: * @ejb.value-object match="libresource"
78: * @ejb.transaction type="Supports"
79: */
80: public String getShortResourceName() {
81: return getName();
82: }
83:
84: /**
85: * @ejb.persistent-field
86: * @ejb.interface-method
87: * @ejb.value-object match="libresource"
88: * @ejb.transaction type="Supports"
89: */
90: public abstract String getName();
91:
92: /**
93: * @ejb.persistent-field
94: * @ejb.interface-method
95: * @ejb.transaction type="Mandatory"
96: */
97: public abstract void setName(String name);
98: }
|