org.hibernate.dialect

Class TypeNames


public class TypeNames
extends java.lang.Object

This class maps a type to names. Associations may be marked with a capacity. Calling the get() method with a type and actual size n will return the associated name with smallest capacity >= n, if available and an unmarked default type otherwise. Eg, setting
	names.put(type,        "TEXT" );
	names.put(type,   255, "VARCHAR($l)" );
	names.put(type, 65534, "LONGVARCHAR($l)" );
 
will give you back the following:
  names.get(type)         // --> "TEXT" (default)
  names.get(type,    100) // --> "VARCHAR(100)" (100 is in [0:255])
  names.get(type,   1000) // --> "LONGVARCHAR(1000)" (1000 is in [256:65534])
  names.get(type, 100000) // --> "TEXT" (default)
 
On the other hand, simply putting
	names.put(type, "VARCHAR($l)" );
 
would result in
  names.get(type)        // --> "VARCHAR($l)" (will cause trouble)
  names.get(type, 100)   // --> "VARCHAR(100)"
  names.get(type, 10000) // --> "VARCHAR(10000)"
 
Author:
Christoph Beck

Method Summary

String
get(int typecode)
get default type name for specified type
String
get(int typecode, int size, int precision, int scale)
get type name for specified type and size
void
put(int typecode, String value)
set a default type name for specified type key
void
put(int typecode, int capacity, String value)
set a type name for specified type key and capacity

Method Details

get

public String get(int typecode)
            throws MappingException
get default type name for specified type
Parameters:
typecode - the type key
Returns:
the default type name associated with specified key

get

public String get(int typecode,
                  int size,
                  int precision,
                  int scale)
            throws MappingException
get type name for specified type and size
Parameters:
typecode - the type key
size - the SQL length
precision - the SQL precision
scale - the SQL scale
Returns:
the associated name with smallest capacity >= size, if available and the default type name otherwise

put

public void put(int typecode,
                String value)
set a default type name for specified type key
Parameters:
typecode - the type key

put

public void put(int typecode,
                int capacity,
                String value)
set a type name for specified type key and capacity
Parameters:
typecode - the type key