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.bahrain;
21:
22: import java.io.*;
23: import java.util.*;
24:
25: import org.polepos.data.*;
26: import org.polepos.teams.prevayler.*;
27:
28: public class BahrainSystem implements Serializable {
29:
30: private final HashMap<String, Pilot> _pilotsByName = new HashMap<String, Pilot>();
31: private final transient Checksum _checksum;
32: private final HashMap<Integer, Pilot> _pilotsByLicenseID = new HashMap<Integer, Pilot>();
33:
34: BahrainSystem(Checksum checksum) {
35: _checksum = checksum;
36: }
37:
38: public void write(int objectsToCreate) {
39: int i = _pilotsByName.size() + 1;
40: while (objectsToCreate != 0) {
41: String name = "Pilot_" + i;
42: Pilot pilot = new Pilot(name, "Jonny_" + i, i, i);
43: _pilotsByName.put(name, pilot);
44: _pilotsByLicenseID.put(i, pilot);
45: _checksum.add(i);
46: i++;
47: objectsToCreate--;
48: }
49: }
50:
51: public Pilot pilotByName(String name) {
52: return _pilotsByName.get(name);
53: }
54:
55: public Pilot pilotByFirstName(String firstName) {
56: for (Pilot candidate : _pilotsByName.values()) {
57: if (candidate.getFirstName().equals(firstName))
58: return candidate;
59: }
60: return null;
61: }
62:
63: public Pilot pilotByLicenseID(int i) {
64: return _pilotsByLicenseID.get(i);
65: }
66:
67: private static final long serialVersionUID = 1L;
68:
69: }
|