01: /*
02: This file is part of the PolePosition database benchmark
03: http://www.polepos.org
04:
05: This program is free software; you can redistribute it and/or
06: modify it under the terms of the GNU General Public License
07: as published by the Free Software Foundation; either version 2
08: of the License, or (at your option) any later version.
09:
10: This program is distributed in the hope that it will be useful,
11: but WITHOUT ANY WARRANTY; without even the implied warranty of
12: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13: GNU General Public License for more details.
14:
15: You should have received a copy of the GNU General Public
16: License along with this program; if not, write to the Free
17: Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
18: MA 02111-1307, USA. */
19:
20: package org.polepos.teams.prevayler;
21:
22: import org.polepos.framework.*;
23: import org.prevayler.*;
24:
25: public abstract class PrevaylerDriver extends Driver {
26:
27: protected final Prevayler _prevayler = createPrevayler();
28:
29: public void prepare() {
30: }
31:
32: public void backToPit() {
33: }
34:
35: private Prevayler createPrevayler() {
36: try {
37: PrevaylerFactory factory = new PrevaylerFactory();
38: factory.configurePrevalentSystem(prevalentSystem());
39: factory.configurePrevalenceBase("prevayler"
40: + System.nanoTime());
41: factory.configureTransactionFiltering(false);
42: return factory.create();
43: } catch (Exception e) {
44: e.printStackTrace();
45: return null;
46: }
47: }
48:
49: protected abstract Object prevalentSystem();
50:
51: }
|