You are viewing a plain text version of this content. The canonical link for it is here.
Posted to torque-dev@db.apache.org by "Thomas Fox (JIRA)" <ji...@apache.org> on 2014/10/10 00:28:34 UTC

[jira] [Commented] (TORQUE-331) Make enum generation possible

    [ https://issues.apache.org/jira/browse/TORQUE-331?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14165881#comment-14165881 ] 

Thomas Fox commented on TORQUE-331:
-----------------------------------

If possible, a constraint should be generated on the database to disallow values other than defined in the enum for the colum.
For example (Oracle):
ALTER TABLE ROLE ADD CONSTRAINT check_role CHECK (role IN ('ADMIN', 'User'));

> Make enum generation possible
> -----------------------------
>
>                 Key: TORQUE-331
>                 URL: https://issues.apache.org/jira/browse/TORQUE-331
>             Project: Torque
>          Issue Type: New Feature
>          Components: Templates
>    Affects Versions: 4.0
>            Reporter: Thomas Fox
>            Assignee: Thomas Fox
>             Fix For: 4.1
>
>
> It should be possible to generate an enum for a value.
> In the schema, this would look like
> <column name="role" type="VARCHAR>
>   <enumValue value="Admin" />
>   <enumValue value="User" />
> </column>
> There should be an optional javaName Attribute for the enumValue element determining the java name for the enum value.
> There should be an optional description Attribute for the enumValue element determining the javadoc for the enum value.
> There should be an optional enumName Attribute for the column element determining the type name for the enum. Its value can be either fully qualified or unqualified to create a new enum.
> If there are enumValue elements present, the enum type should be generated, otherwise, it is assumed to exist already and is not generated.
> The data object getters and setters signatures would then be
> public RoleEnum getRole();
> private void setRole(RoleEnum role);
> The generated enum like would look like
> public enum RoleEnum
> {
>   ADMIN("Admin"),
>   USER("User");
>   private String value;
>   private RoleEnum(String value) {...}
>   private Sting getValue() {...};
> }



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: torque-dev-unsubscribe@db.apache.org
For additional commands, e-mail: torque-dev-help@db.apache.org