org.joda.beans
Annotation Type BeanDefinition


@Retention(value=RUNTIME)
@Target(value=TYPE)
public @interface BeanDefinition

Annotation defining a bean for code generation.

This annotation must be used on classes that should be treated as beans.


Optional Element Summary
 String builderScope
          The scope of the builder class, currently just for immutable beans.
 boolean cacheHashCode
          Whether to generate code to cache the hash code.
 String hierarchy
          Information about the bean hierarchy.
 String style
          The style of bean generation.
 

style

public abstract String style
The style of bean generation.

By default, this follows 'smart' rules. Set to 'minimal' to generate a minimal amount of code. Set to 'full' to generate the full code.

Default:
"smart"

builderScope

public abstract String builderScope
The scope of the builder class, currently just for immutable beans.

By default, this follows 'smart' rules. Set to 'private' to generate a private builder. Set to 'public' to generate a public builder.

Default:
"smart"

hierarchy

public abstract String hierarchy
Information about the bean hierarchy.

This is needed to add information that cannot be derived. Set to 'immutable' for a subclass of an immutable bean.

Default:
""

cacheHashCode

public abstract boolean cacheHashCode
Whether to generate code to cache the hash code.

Setting this to true will cause the hash code to be cached using the racy single check idiom. The setting only applies to immutable beans.

Default:
false


Copyright © 2007–2014 Joda.org. All rights reserved.