KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > je > SequenceExample


1 /*-
2  * See the file LICENSE for redistribution information.
3  *
4  * Copyright (c) 1997,2006 Oracle. All rights reserved.
5  *
6  * $Id: SequenceExample.java,v 1.7 2006/10/30 21:14:03 bostic Exp $
7  */

8
9 package je;
10
11 import java.io.File JavaDoc;
12 import java.io.IOException JavaDoc;
13
14 import com.sleepycat.je.Database;
15 import com.sleepycat.je.DatabaseConfig;
16 import com.sleepycat.je.DatabaseEntry;
17 import com.sleepycat.je.DatabaseException;
18 import com.sleepycat.je.Environment;
19 import com.sleepycat.je.EnvironmentConfig;
20 import com.sleepycat.je.Sequence;
21 import com.sleepycat.je.SequenceConfig;
22
23 public class SequenceExample {
24     private static final int EXIT_SUCCESS = 0;
25     private static final int EXIT_FAILURE = 1;
26     private static final String JavaDoc DB_NAME = "sequence.db";
27     private static final String JavaDoc KEY_NAME = "my_sequence";
28
29     public SequenceExample() {
30     }
31
32     public static void usage() {
33         System.out.println("usage: java " +
34                            "je.SequenceExample " +
35                            "<dbEnvHomeDirectory>");
36         System.exit(EXIT_FAILURE);
37     }
38
39     public static void main(String JavaDoc[] argv) {
40
41         if (argv.length != 1) {
42             usage();
43             return;
44         }
45         File JavaDoc envHomeDirectory = new File JavaDoc(argv[0]);
46
47         try {
48             SequenceExample app = new SequenceExample();
49             app.run(envHomeDirectory);
50         } catch (Exception JavaDoc e) {
51             e.printStackTrace();
52             System.exit(EXIT_FAILURE);
53         }
54         System.exit(EXIT_SUCCESS);
55     }
56
57     public void run(File JavaDoc envHomeDirectory)
58         throws DatabaseException, IOException JavaDoc {
59
60         /* Create the environment object. */
61         EnvironmentConfig envConfig = new EnvironmentConfig();
62         envConfig.setAllowCreate(true);
63         Environment env = new Environment(envHomeDirectory, envConfig);
64
65         /* Create the database object. */
66         DatabaseConfig dbConfig = new DatabaseConfig();
67         dbConfig.setAllowCreate(true);
68         Database db = env.openDatabase(null, DB_NAME, dbConfig);
69
70         /* Create the sequence oject. */
71         SequenceConfig config = new SequenceConfig();
72         config.setAllowCreate(true);
73         DatabaseEntry key =
74             new DatabaseEntry(KEY_NAME.getBytes("UTF-8"));
75         Sequence seq = db.openSequence(null, key, config);
76
77         /* Allocate a few sequence numbers. */
78         for (int i = 0; i < 10; i++) {
79             long seqnum = seq.get(null, 1);
80             System.out.println("Got sequence number: " + seqnum);
81         }
82
83         /* Close all. */
84         seq.close();
85         db.close();
86         env.close();
87     }
88 }
89
Popular Tags