Enum Action

  • All Implemented Interfaces:
    Serializable, Comparable<Action>

    public enum Action
    extends Enum<Action>
    The allowable actions in terms of schema tooling. Covers the unified JPA and HBM2DDL cases.
    • Enum Constant Detail

      • NONE

        public static final Action NONE
        No action will be performed. Valid in JPA; compatible with Hibernate's hbm2ddl action of the same name.

        public static final Action CREATE_ONLY
        Database creation will be generated. This is an action introduced by JPA. Hibernate's legacy hbm2ddl had no such action - its "create" action is actually equivalent to CREATE

        Corresponds to a call to SchemaCreator

      • DROP

        public static final Action DROP
        Database dropping will be generated.

        Corresponds to a call to SchemaDropper

      • CREATE

        public static final Action CREATE
        Database dropping will be generated followed by database creation.

        Corresponds to a call to SchemaDropper followed immediately by a call to SchemaCreator


        public static final Action CREATE_DROP
        Drop the schema and recreate it on SessionFactory startup. Additionally, drop the schema on SessionFactory shutdown.

        Has no corresponding call to a SchemaManagementTool delegate. It is equivalent to a

        While this is a valid option for auto schema tooling, it is not a valid action to pass to SchemaManagementTool; instead it would be expected that the caller to SchemaManagementTool would split this into 2 separate requests for:

        1. CREATE
        2. DROP
      • VALIDATE

        public static final Action VALIDATE
        "validate" (Hibernate only) - validate the database schema
      • UPDATE

        public static final Action UPDATE
        "update" (Hibernate only) - update (alter) the database schema
    • Method Detail

      • values

        public static Action[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (Action c : Action.values())
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static Action 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.)
        name - the name of the enum constant to be returned.
        the enum constant with the specified name
        IllegalArgumentException - if this enum type has no constant with the specified name
        NullPointerException - if the argument is null
      • getExternalJpaName

        public String getExternalJpaName()
      • getExternalHbm2ddlName

        public String getExternalHbm2ddlName()
      • interpretHbm2ddlSetting

        public static Action interpretHbm2ddlSetting​(Object value)
        Used to interpret the value of "hibernate.hbm2ddl.auto"
        value - The encountered config value
        The matching enum value. An empty value will return NONE.
        IllegalArgumentException - If the incoming value is unrecognized