JavassistBuilder

public final class JavassistBuilder

Builder class for javassist related tasks. Helps with building appropriate elements of class e.g. fields, getters, field initializer

Methods

createCollectionInitializer

public static CtField.Initializer createCollectionInitializer(String genericType, Object defaultValue)

Creates a collection initializer for the given generic type and default value.

Parameters:
  • genericType – the generic type
  • defaultValue – the default value
Returns:

initializer for collections

createEnumInitializer

public static CtField.Initializer createEnumInitializer(String enumType, String defaultValue)

Makes an initializer for enums.

Parameters:
  • enumType – the enum type
  • defaultValue – the default value
Returns:

enum initializer

createField

public static CtField createField(CtClass declaring, CtClass type, String name, String genericSignature)

Creates class field with the given name for the given class declaration and type.

Parameters:
  • declaring – the class to which the field will be added
  • type – the field type
  • name – the field name
  • genericSignature – the generic signature
Throws:
  • CannotCompileException – when bytecode transformation has failed
Returns:

An instance of javassist.CtField represents a field

createGetter

public static CtMethod createGetter(String fieldName, CtClass declaring, CtField field)

Creates a public getter method with the given field name for the given class declaration and type.

Parameters:
  • fieldName – the field name
  • declaring – the class to which the getter will be added
  • field – the field declaration
Throws:
  • CannotCompileException – when bytecode transformation has failed
Returns:

An instance of javassist.CtMethod represents a getter method

createInitializer

public static CtField.Initializer createInitializer(String typeClass, String defaultValueAsString)

Creates a field initializer for the given type and default value.

Parameters:
  • typeClass – the field type
  • defaultValueAsString – the default value for field as string
Returns:

field initializer

createInitializer

public static CtField.Initializer createInitializer(String typeClass, Object defaultValue)

Creates a field initializer for the given type and default value.

Parameters:
  • typeClass – the field type
  • defaultValue – the default value for the field
Returns:

field initializer

createJavaTimeInitializer

public static CtField.Initializer createJavaTimeInitializer(String type, String defaultValue)

Makes a initializer for java.time.LocalDate or java.time.LocalDateTime class

Parameters:
  • type – the field type
  • defaultValue – the default value as string
Returns:

java.time.LocalDate or java.time.LocalDateTime initializer based on a type parameter

createListInitializer

public static CtField.Initializer createListInitializer(String genericType, Object defaultValue)

Creates a list initializer for the given generic type and default value.

Parameters:
  • genericType – the generic type
  • defaultValue – the default value
Returns:

initializer for lists

createLocaleInitializer

public static CtField.Initializer createLocaleInitializer(Object defaultValue)

Makes an initializer for java.util.Locale class.

Parameters:
  • defaultValue – the default value
Returns:

java.util.Locale initializer

createSetInitializer

public static CtField.Initializer createSetInitializer(String genericType, Object defaultValue)

Creates a set initializer for the given generic type and default value.

Parameters:
  • genericType – the generic type
  • defaultValue – the default value
Returns:

initializer for sets

createSetter

public static CtMethod createSetter(String fieldName, CtField field)

Creates a public setter method with the given field name for the given class declaration and type.

Parameters:
  • fieldName – the field name
  • field – the field declaration
Throws:
  • CannotCompileException – when bytecode transformation has failed
Returns:

An instance of javassist.CtMethod represents a setter method

createSimpleInitializer

public static CtField.Initializer createSimpleInitializer(String type, Object defaultValue)

Makes a simple initializer for the given type and default value.

Parameters:
  • type – the field type
  • defaultValue – the default value
Returns:

simple initializer

createSimpleInitializer

public static CtField.Initializer createSimpleInitializer(String type, String defaultValue)

Makes a simple initializer for the given type and default value.

Parameters:
  • type – the field type
  • defaultValue – the default value as string
Returns:

simple initializer