Class TypeNames

java.lang.Object
org.alfresco.repo.domain.dialect.TypeNames

public class TypeNames extends 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)"
 
Class copied from patched hibernate 3.2.6
Since:
6.0
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • TypeNames

      public TypeNames()
  • Method Details

    • get

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

      public String get(int typecode, int size, int precision, int scale) throws IllegalArgumentException
      get type name for specified type and size
      Parameters:
      typecode - the type key
      size - the SQL length
      scale - the SQL scale
      precision - the SQL precision
      Returns:
      the associated name with smallest capacity >= size, if available and the default type name otherwise
      Throws:
      IllegalArgumentException
    • 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
    • put

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