[forge-issues] [JBoss JIRA] (FORGE-398) PersistencePlugin does not generate Cascade

Lincoln Baxter III (Commented) (JIRA) jira-events at lists.jboss.org
Fri Dec 16 13:19:09 EST 2011


    [ https://issues.jboss.org/browse/FORGE-398?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12651711#comment-12651711 ] 

Lincoln Baxter III commented on FORGE-398:
------------------------------------------

We can address this in the Scaffold itself, which I think is more appropriate:

{code}

   private void createInitializers(final JavaClass entity)
   {
      for (Field<JavaClass> field : entity.getFields()) {
         if (field.hasAnnotation(OneToOne.class))
         {
            Annotation<JavaClass> oneToOne = field.getAnnotation(OneToOne.class);
            if (oneToOne.getStringValue("mappedBy") == null)
            {
               oneToOne.setEnumValue("cascade", CascadeType.ALL);
            }
            String methodName = "new" + field.getTypeInspector().getName();
            if (!entity.hasMethodSignature(methodName))
            {
               entity.addMethod().setName(methodName).setReturnTypeVoid().setPublic()
                        .setBody("this." + field.getName() + " = new " + field.getType() + "();");
            }
         }
      }{code}

Working on this now.
                
> PersistencePlugin does not generate Cascade
> -------------------------------------------
>
>                 Key: FORGE-398
>                 URL: https://issues.jboss.org/browse/FORGE-398
>             Project: Forge
>          Issue Type: Feature Request
>            Reporter: Richard Kennard
>
> This is one of those 'we could do it a different way, but it would make the generated code cleaner if...' requests :)
> At present the PersistencePlugin generates:
> 	@OneToOne
> 	private Profile profile;
> 	public Profile getProfile() {
> 		return this.profile;
> 	}
> 	public void setProfile(final Profile profile) {
> 		this.profile = profile;
> 	}
> I would instead like it to generate:
> 	@OneToOne(cascade = CascadeType.ALL)
> 	private Profile profile;
> 	public Profile getProfile() {
> 		return this.profile;
> 	}
> 	public void setProfile(final Profile profile) {
> 		this.profile = profile;
> 	}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the forge-issues mailing list