001 //$HeadURL: svn+ssh://rbezema@svn.wald.intevation.org/deegree/base/tags/2.1/src/org/deegree/framework/util/UUID.java $ 002 /* 003 004 This class orginaly has been part of the apache derby project. It has 005 slightly been changed to match the requirements of deegree. 006 007 Derby - Class org.apache.derby.catalog.UUID 008 009 Copyright 1997, 2004 The Apache Software Foundation or its licensors, as applicable. 010 011 Licensed under the Apache License, Version 2.0 (the "License"); 012 you may not use this file except in compliance with the License. 013 You may obtain a copy of the License at 014 015 http://www.apache.org/licenses/LICENSE-2.0 016 017 Unless required by applicable law or agreed to in writing, software 018 distributed under the License is distributed on an "AS IS" BASIS, 019 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 020 See the License for the specific language governing permissions and 021 limitations under the License. 022 023 */ 024 025 package org.deegree.framework.util; 026 027 /** 028 029 An interface for accessing Cloudscape UUIDs, unique identifiers. 030 031 <p>The values in the 032 system catalog held in ID columns with a type of CHAR(36) are the 033 string representations of these UUIDs. 034 035 <p>A UUID implements equals() and hashCode based on value equality. 036 037 */ 038 039 public interface UUID extends java.io.Externalizable 040 { 041 /** 042 UUID_BYTE_LENGTH 043 044 The number of bytes in the array toByteArray returns. 045 */ 046 static int UUID_BYTE_LENGTH = 16; 047 048 /** 049 Produce a string representation of this UUID which 050 is suitable for use as a unique ANSI identifier. 051 */ 052 String toANSIidentifier(); 053 054 /** 055 Produce a byte array representation of this UUID 056 which can be passed to UUIDFactory.recreateUUID later 057 on to reconstruct it. 058 */ 059 byte[] toByteArray(); 060 061 /** 062 Clone this UUID. 063 064 @return a copy of this UUID 065 */ 066 UUID cloneMe(); 067 068 /** 069 Create a hex string representation of this UUID. 070 */ 071 String toHexString(); 072 } 073 074 /* ******************************************************************** 075 Changes to this class. What the people have been up to: 076 $Log$ 077 Revision 1.2 2006/07/12 14:46:17 poth 078 comment footer added 079 080 ********************************************************************** */