1 /* 2 * Enhydra Java Application Server Project 3 * 4 * The contents of this file are subject to the Enhydra Public License 5 * Version 1.1 (the "License"); you may not use this file except in 6 * compliance with the License. You may obtain a copy of the License on 7 * the Enhydra web site ( http://www.enhydra.org/ ). 8 * 9 * Software distributed under the License is distributed on an "AS IS" 10 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See 11 * the License for the specific terms governing rights and limitations 12 * under the License. 13 * 14 * The Initial Developer of the Enhydra Application Server is Lutris 15 * Technologies, Inc. The Enhydra Application Server and portions created 16 * by Lutris Technologies, Inc. are Copyright Lutris Technologies, Inc. 17 * All Rights Reserved. 18 * 19 * Contributor(s): 20 * 21 * $Id: ObjectIdAllocator.java,v 1.1 2004/09/03 13:42:38 sinisa Exp $ 22 */ 23 package com.lutris.appserver.server.sql; 24 25 /** 26 * Defines the object id allocator. An object id allocator is an integral 27 * part of a logical database implementation. It manages the allocation 28 * of unique object ids. 29 * 30 * @author Paul Morgan 31 * @since LBS1.8 32 * @version $Revision: 1.1 $ 33 */ 34 public interface ObjectIdAllocator { 35 36 /** 37 * Allocate a new and unique object id. 38 */ 39 ObjectId allocate(); 40 41 /** 42 * Check does oid belong to Object id's range [minOId, currentOId] 43 * 44 * @param oid 45 * oid which will be checked. 46 * @exception ObjectIdException 47 * If a oid does't belong to range. 48 */ 49 void checkOId(ObjectId oid) throws ObjectIdException; 50 } 51