001: package org.apache.ojb.tools.mapping.reversedb;
002:
003: /* Copyright 2002-2005 The Apache Software Foundation
004: *
005: * Licensed under the Apache License, Version 2.0 (the "License");
006: * you may not use this file except in compliance with the License.
007: * You may obtain a copy of the License at
008: *
009: * http://www.apache.org/licenses/LICENSE-2.0
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: */
017:
018: import java.util.HashMap;
019:
020: /**
021: *
022: * @author <a href="mailto:bfl@florianbruckner.com">Florian Bruckner</a>
023: * @version $Id: IdGeneratorSingleton.java,v 1.1.2.1 2005/12/21 22:32:04 tomdz Exp $
024: * @deprecated since 2003-06-21
025: */
026: public class IdGeneratorSingleton {
027: private static IdGeneratorSingleton singleton = new IdGeneratorSingleton();
028:
029: /** Creates a new instance of IdGeneratorSingleton */
030:
031: private HashMap hmIds = new HashMap();
032:
033: private IdGeneratorSingleton() {
034: }
035:
036: private int _getId(String type, String instance) {
037: HashMap hmTypeId = (HashMap) hmIds.get(type);
038: if (hmTypeId == null) {
039: hmTypeId = new HashMap();
040: hmIds.put(type, hmTypeId);
041: }
042: Integer storedId = (Integer) hmTypeId.get(instance);
043: int id;
044: if (storedId == null) {
045: id = 0;
046: } else
047: id = storedId.intValue() + 1;
048: hmTypeId.put(instance, new Integer(id));
049: return id;
050: }
051:
052: public static int getId(String type, String instance) {
053: return singleton._getId(type, instance);
054: }
055: }
056:
057: /***************************** Changelog *****************************
058: // $Log: IdGeneratorSingleton.java,v $
059: // Revision 1.1.2.1 2005/12/21 22:32:04 tomdz
060: // Updated license
061: //
062: // Revision 1.1 2004/05/05 16:39:05 arminw
063: // fix fault
064: // wrong package structure used:
065: // org.apache.ojb.tools.reversdb
066: // org.apache.ojb.tools.reversdb2
067: //
068: // instead of
069: // org.apache.ojb.tools.mapping.reversdb
070: // org.apache.ojb.tools.mapping.reversdb2
071: //
072: // Revision 1.1 2004/05/04 13:45:01 arminw
073: // move reverseDB stuff
074: //
075: // Revision 1.5 2004/04/04 23:53:42 brianm
076: // Fixed initial copyright dates to match cvs repository
077: //
078: // Revision 1.4 2004/03/11 18:16:22 brianm
079: // ASL 2.0
080: //
081: // Revision 1.3 2003/06/21 10:36:40 florianbruckner
082: // remove double license header, deprecate class
083: //
084: // Revision 1.2 2002/06/17 19:34:33 jvanzyl
085: // Correcting all the package references.
086: // PR:
087: // Obtained from:
088: // Submitted by:
089: // Reviewed by:
090: //
091: // Revision 1.1.1.1 2002/06/17 18:16:52 jvanzyl
092: // Initial OJB import
093: //
094: // Revision 1.2 2002/05/16 11:47:09 florianbruckner
095: // fix CR/LF issue, change license to ASL
096: //
097: // Revision 1.1 2002/04/18 11:44:16 mpoeschl
098: //
099: // move files to new location
100: //
101: // Revision 1.3 2002/04/07 09:05:16 thma
102: // *** empty log message ***
103: //
104: // Revision 1.2 2002/03/11 17:36:05 florianbruckner
105: // fix line break issue for these files that were previously checked in with -kb
106: //
107: // Revision 1.1 2002/03/04 17:19:32 thma
108: // initial checking for Florians Reverse engineering tool
109: //
110: // Revision 1.1.1.1 2002/02/20 13:35:25 Administrator
111: // initial import
112: //
113: /***************************** Changelog *****************************/
|