Annotation Type SQLAction


@Documented
@Target({PACKAGE,TYPE})
@Repeatable(SQLActions.class)
@Retention(CLASS)
public @interface SQLAction
Annotation that supplies verbatim commands to be copied into the deployment descriptor. Strings supplied within a single SQLAction annotation will be copied in the order supplied. Strings from different SQLAction annotations, and generated code for functions, will be assembled in an order that can be influenced by 'provides' and 'requires' labels. No snippet X will be emitted ahead of any snippets that provide what X requires. The "remove" actions will be assembled in the reverse of that order.
Author:
Thomas Hallgren - pre-Java6 version, Chapman Flack (Purdue Mathematics) - updated to Java6, added SQLAction
  • Optional Element Summary

    Optional Elements
    Modifier and Type Optional Element Description
    String implementor
    The <implementor name> to be used around SQL code generated here.
    String[] install
    SQL commands to be included in a BEGIN INSTALL group (each string considered a separate command to which a semicolon will be added).
    String[] provides
    One or more arbitrary labels that will be considered 'provided' by the object carrying this annotation.
    String[] remove
    SQL commands to be included in a BEGIN REMOVE group (each string considered a separate command to which a semicolon will be added).
    String[] requires
    One or more arbitrary labels that will be considered 'required' by the object carrying this annotation.
  • Element Details

    • install

      String[] install
      SQL commands to be included in a BEGIN INSTALL group (each string considered a separate command to which a semicolon will be added).
      Default:
      {}
    • remove

      String[] remove
      SQL commands to be included in a BEGIN REMOVE group (each string considered a separate command to which a semicolon will be added).
      Default:
      {}
    • provides

      String[] provides
      One or more arbitrary labels that will be considered 'provided' by the object carrying this annotation. The deployment descriptor will be generated in such an order that other objects that 'require' labels 'provided' by this come later in the output for install actions, and earlier for remove actions.
      Default:
      {}
    • requires

      String[] requires
      One or more arbitrary labels that will be considered 'required' by the object carrying this annotation. The deployment descriptor will be generated in such an order that other objects that 'provide' labels 'required' by this come earlier in the output for install actions, and later for remove actions.
      Default:
      {}
    • implementor

      String implementor
      The <implementor name> to be used around SQL code generated here. Defaults to PostgreSQL. Set explicitly to "" to emit code not wrapped in an <implementor block>.
      Default:
      ""