KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > internetcds > jdbc > tds > UniqueId


1 //
2
// Copyright 1998 CDS Networks, Inc., Medford Oregon
3
//
4
// All rights reserved.
5
//
6
// Redistribution and use in source and binary forms, with or without
7
// modification, are permitted provided that the following conditions are met:
8
// 1. Redistributions of source code must retain the above copyright
9
// notice, this list of conditions and the following disclaimer.
10
// 2. Redistributions in binary form must reproduce the above copyright
11
// notice, this list of conditions and the following disclaimer in the
12
// documentation and/or other materials provided with the distribution.
13
// 3. All advertising materials mentioning features or use of this software
14
// must display the following acknowledgement:
15
// This product includes software developed by CDS Networks, Inc.
16
// 4. The name of CDS Networks, Inc. may not be used to endorse or promote
17
// products derived from this software without specific prior
18
// written permission.
19
//
20
// THIS SOFTWARE IS PROVIDED BY CDS NETWORKS, INC. ``AS IS'' AND
21
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23
// ARE DISCLAIMED. IN NO EVENT SHALL CDS NETWORKS, INC. BE LIABLE
24
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30
// SUCH DAMAGE.
31
//
32

33
34 package com.internetcds.jdbc.tds;
35
36
37 /**
38  * return a monotonically increasing number.
39  *
40  * This class provides a thread safe way of generating unique
41  * numbers. It is used in the TDS driver to help generate unique
42  * names for temporary stored procedures and temporary tables.
43  *
44  * @author Craig Spannring
45  * @version $Id: UniqueId.java,v 1.1 2006/06/23 10:39:30 sinisa Exp $
46  */

47 public class UniqueId {
48    public static final String JavaDoc cvsVersion = "$Id: UniqueId.java,v 1.1 2006/06/23 10:39:30 sinisa Exp $";
49
50    // next number to return from the getUniqueId() method
51
private static long id = 1;
52
53
54    /**
55     * return a unique number.
56     * <p>
57     * The number is unique for a given invocation of the JVM. Currently
58     * the number is monotonically increasing, but I make no guarantees
59     * that it will be that way in future releases.
60     *
61     * @return unique number
62     */

63    public static synchronized long getUniqueId()
64    {
65       return id++;
66    }
67 }
68
Popular Tags