01: /*
02: * Bossa Workflow System
03: *
04: * $Id: WFNetTransaction.java,v 1.3 2003/12/01 20:10:08 gdvieira Exp $
05: *
06: * Copyright (C) 2003 OpenBR Sistemas S/C Ltda.
07: *
08: * This file is part of Bossa.
09: *
10: * Bossa is free software; you can redistribute it and/or modify it
11: * under the terms of version 2 of the GNU General Public License as
12: * published by the Free Software Foundation.
13: *
14: * This program is distributed in the hope that it will be useful,
15: * but WITHOUT ANY WARRANTY; without even the implied warranty of
16: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17: * General Public License for more details.
18: *
19: * You should have received a copy of the GNU General Public
20: * License along with this program; if not, write to the
21: * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
22: * Boston, MA 02111-1307, USA.
23: */
24:
25: package com.bigbross.bossa.wfnet;
26:
27: import com.bigbross.bossa.Bossa;
28: import com.bigbross.bossa.BossaException;
29: import com.bigbross.bossa.BossaTransaction;
30:
31: /**
32: * This class represents all transactions applied to the WFNet persistent
33: * objects. <p>
34: *
35: * @author <a href="http://www.bigbross.com">BigBross Team</a>
36: */
37: abstract class WFNetTransaction extends BossaTransaction {
38:
39: /**
40: * @see BossaTransaction#execute(Bossa)
41: */
42: public Object execute(Bossa bossa) throws BossaException {
43: return execute(bossa.getCaseTypeManager());
44: }
45:
46: /**
47: * Executes a transaction in a case type manager. <p>
48: *
49: * @param caseTypeManager the case type manager.
50: * @return the value returned by the transaction.
51: * @exception BossaException if the transaction throws an exception.
52: */
53: protected abstract Object execute(CaseTypeManager caseTypeManager)
54: throws BossaException;
55: }
|