KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > polepos > teams > jdo > SepangJdo


1 /*
2 This file is part of the PolePosition database benchmark
3 http://www.polepos.org
4
5 This program is free software; you can redistribute it and/or
6 modify it under the terms of the GNU General Public License
7 as published by the Free Software Foundation; either version 2
8 of the License, or (at your option) any later version.
9
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.jdo;
21 import org.polepos.circuits.sepang.*;
22 import org.polepos.teams.jdo.data.*;
23
24
25 /**
26  * @author Herkules
27  */

28 public class SepangJdo extends JdoDriver implements SepangDriver {
29     
30     private Object JavaDoc oid;
31     
32     public void write(){
33         begin();
34         JdoTree tree = JdoTree.createTree(setup().getTreeDepth());
35         db().makePersistent(tree);
36         oid = db().getObjectId(tree);
37         commit();
38     }
39
40     public void read(){
41         JdoTree tree = (JdoTree)db().getObjectById(oid, false);
42         JdoTree.traverse(tree, new JdoTreeVisitor() {
43             public void visit(JdoTree tree) {
44                 addToCheckSum(tree.getDepth());
45             }
46         });
47     }
48     
49     public void read_hot() {
50         read();
51     }
52
53     public void delete(){
54         begin();
55         JdoTree tree = (JdoTree)db().getObjectById(oid, false);
56         JdoTree.traverse(tree, new JdoTreeVisitor() {
57             public void visit(JdoTree tree) {
58                 db().deletePersistent(tree);
59             }
60         });
61         commit();
62     }
63     
64
65 }
66
Popular Tags