Enum ImplStructureStrategy

java.lang.Object
java.lang.Enum<ImplStructureStrategy>
com.sun.tools.xjc.generator.bean.ImplStructureStrategy
All Implemented Interfaces:
Serializable, Comparable<ImplStructureStrategy>

public enum ImplStructureStrategy extends Enum<ImplStructureStrategy>
Decides how a bean token is mapped to the generated classes.

The actual implementations of this interface is tightly coupled with the backend, but the front-end gets to choose which strategy to be used.

Author:
Kohsuke Kawaguchi ([email protected])
  • Enum Constant Details

    • BEAN_ONLY

      public static final ImplStructureStrategy BEAN_ONLY
      Generates beans only. The simplest code generation.
    • INTF_AND_IMPL

      public static final ImplStructureStrategy INTF_AND_IMPL
      Generates the interfaces to describe beans (content interfaces) and then the beans themselves in a hidden impl package. Similar to JAXB 1.0.
  • Method Details

    • values

      public static ImplStructureStrategy[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static ImplStructureStrategy valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null
    • createClasses

      protected abstract ImplStructureStrategy.Result createClasses(Outline outline, CClassInfo bean)
      Creates class(es) for the given bean.
    • getPackage

      protected abstract JPackage getPackage(JPackage pkg, Aspect a)
      Gets the specified aspect of the given package.
    • createMethodWriter

      protected abstract MethodWriter createMethodWriter(ClassOutlineImpl target)
    • _extends

      protected abstract void _extends(ClassOutlineImpl derived, ClassOutlineImpl base)
      Sets up an inheritance relationship.