Class UUIDKeyGeneratorFactory
java.lang.Object
org.castor.cpa.persistence.sql.keygen.UUIDKeyGeneratorFactory
- All Implemented Interfaces:
KeyGeneratorFactory
UUID key generator factory. The short name of this key generator is "UUID".
It uses the following alrorithm: The uuid is a combination of the IP address, the current time in milliseconds since 1970 and a static counter. The complete key consists of a 30 character fixed length string.
Brief statement: The IP only exists once during runtime of castor, the current time in milliseconds (updated every 55 mills) is in combination to the IP pretty unique. Considering a static counter will be used a database-wide unique key will be created.
It uses the following alrorithm: The uuid is a combination of the IP address, the current time in milliseconds since 1970 and a static counter. The complete key consists of a 30 character fixed length string.
Brief statement: The IP only exists once during runtime of castor, the current time in milliseconds (updated every 55 mills) is in combination to the IP pretty unique. Considering a static counter will be used a database-wide unique key will be created.
- Version:
- $Revision: 8334 $ $Date: 2006-04-25 15:08:23 -0600 (Tue, 25 Apr 2006) $
- Author:
- Thomas Fach, Ralf Joachim
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetKeyGenerator
(PersistenceFactory factory, Properties params, int sqlType) Produce the key generator.Get the short name of the key generator.
-
Constructor Details
-
UUIDKeyGeneratorFactory
public UUIDKeyGeneratorFactory()
-
-
Method Details
-
getKeyGeneratorName
Get the short name of the key generator. It is used to reference key generators in a mapping configuration file. If several key generators of the same type are used for the same database, then they are referenced by aliases.- Specified by:
getKeyGeneratorName
in interfaceKeyGeneratorFactory
- Returns:
- Name of the
KeyGenerator
used to identify key generator (types).
-
getKeyGenerator
public KeyGenerator getKeyGenerator(PersistenceFactory factory, Properties params, int sqlType) throws MappingException Produce the key generator.- Specified by:
getKeyGenerator
in interfaceKeyGeneratorFactory
- Parameters:
factory
- Helper object for obtaining database-specific QuerySyntax.params
- Parameters for key generator.sqlType
- The SQL type of the primary key, the generated identities must have the corresponding Java type, e.g. java.sql.Types.INTEGER corresponds to java.lang.Integer, java.sql.Types.NUMERIC corresponds to java.lang.BigDecimal.- Returns:
- A
KeyGenerator
instance. - Throws:
MappingException
- If there's a problem resolving the mapping information.
-