[jira] [Commented] (GROOVY-7640) @Builder should include superclass properties

2016-03-11 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GROOVY-7640:


Github user asfgit closed the pull request at:

https://github.com/apache/groovy/pull/284


> @Builder should include superclass properties
> -
>
> Key: GROOVY-7640
> URL: https://issues.apache.org/jira/browse/GROOVY-7640
> Project: Groovy
>  Issue Type: Improvement
>Reporter: Marc Bogaerts
>Assignee: Pascal Schumacher
>
> If one annotates a groovy class with @Builder and that class extends from 
> another class, then the generated builder does not support setting the parent 
> class properties.
> This is especially problematic when mixin groovy builders in java code.
> e.g. the following class shows what will and will not compile
> {code:java}
> // Animal.groovy
> import groovy.transform.builder.Builder
> import groovy.transform.builder.SimpleStrategy
> @Builder(builderStrategy = SimpleStrategy)
> class Animal {
>String color
> int legs
> }
> // Pet.groovy
> import groovy.transform.builder.Builder
> import groovy.transform.builder.SimpleStrategy
> @Builder(builderStrategy = SimpleStrategy)
> class Pet extends Animal {
> String name
> }
> // PetTest.java
> import org.junit.Test;
> import static org.junit.Assert.*;
> public class PetTest {
> @Test public void createPet() {
> // Pet pet = new Pet().setColor("white").setLegs(4).setName("Bobby"); 
> does not compile
> Pet pet = (Pet) new 
> Pet().setName("Bobby").setColor("white").setLegs(4);
> assertTrue(pet.getLegs() == 4);
> }
> }
> {code}



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


[jira] [Commented] (GROOVY-7640) @Builder should include superclass properties

2016-03-11 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GROOVY-7640:


Github user asfgit closed the pull request at:

https://github.com/apache/groovy/pull/152


> @Builder should include superclass properties
> -
>
> Key: GROOVY-7640
> URL: https://issues.apache.org/jira/browse/GROOVY-7640
> Project: Groovy
>  Issue Type: Improvement
>Reporter: Marc Bogaerts
>Assignee: Pascal Schumacher
>
> If one annotates a groovy class with @Builder and that class extends from 
> another class, then the generated builder does not support setting the parent 
> class properties.
> This is especially problematic when mixin groovy builders in java code.
> e.g. the following class shows what will and will not compile
> {code:java}
> // Animal.groovy
> import groovy.transform.builder.Builder
> import groovy.transform.builder.SimpleStrategy
> @Builder(builderStrategy = SimpleStrategy)
> class Animal {
>String color
> int legs
> }
> // Pet.groovy
> import groovy.transform.builder.Builder
> import groovy.transform.builder.SimpleStrategy
> @Builder(builderStrategy = SimpleStrategy)
> class Pet extends Animal {
> String name
> }
> // PetTest.java
> import org.junit.Test;
> import static org.junit.Assert.*;
> public class PetTest {
> @Test public void createPet() {
> // Pet pet = new Pet().setColor("white").setLegs(4).setName("Bobby"); 
> does not compile
> Pet pet = (Pet) new 
> Pet().setName("Bobby").setColor("white").setLegs(4);
> assertTrue(pet.getLegs() == 4);
> }
> }
> {code}



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


[jira] [Commented] (GROOVY-7640) @Builder should include superclass properties

2016-03-11 Thread Pascal Schumacher (JIRA)

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

Pascal Schumacher commented on GROOVY-7640:
---

For consistency with several other AST transforms, there is now an 
includeSuperProperties flag to turn on this behavior.

> @Builder should include superclass properties
> -
>
> Key: GROOVY-7640
> URL: https://issues.apache.org/jira/browse/GROOVY-7640
> Project: Groovy
>  Issue Type: Improvement
>Reporter: Marc Bogaerts
>Assignee: Pascal Schumacher
>
> If one annotates a groovy class with @Builder and that class extends from 
> another class, then the generated builder does not support setting the parent 
> class properties.
> This is especially problematic when mixin groovy builders in java code.
> e.g. the following class shows what will and will not compile
> {code:java}
> // Animal.groovy
> import groovy.transform.builder.Builder
> import groovy.transform.builder.SimpleStrategy
> @Builder(builderStrategy = SimpleStrategy)
> class Animal {
>String color
> int legs
> }
> // Pet.groovy
> import groovy.transform.builder.Builder
> import groovy.transform.builder.SimpleStrategy
> @Builder(builderStrategy = SimpleStrategy)
> class Pet extends Animal {
> String name
> }
> // PetTest.java
> import org.junit.Test;
> import static org.junit.Assert.*;
> public class PetTest {
> @Test public void createPet() {
> // Pet pet = new Pet().setColor("white").setLegs(4).setName("Bobby"); 
> does not compile
> Pet pet = (Pet) new 
> Pet().setName("Bobby").setColor("white").setLegs(4);
> assertTrue(pet.getLegs() == 4);
> }
> }
> {code}



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