groovy-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mauro Molinari <>
Subject @TupleConstructor: what am I doing wrong?
Date Thu, 11 Jan 2018 13:57:41 GMT
Hello all,
I'm getting crazy because I can't understand what I'm doing wrong.

Consider this (it can be pasted on the Groovy console):

|import groovy.transform.TupleConstructor||
||public class Foobar {||
||  private Long id;||
||  public Long getId() { return; }||
||  public void setId(Long id) { = id; }||
||class Ext extends Foobar {||
||  String foo||
||Ext.constructors.each {||
||    println it||
||println 'end'|

The result is just:

public Ext(java.lang.String)
public Ext()

But isn't |id| a property (as per the Java beans conventions)???

If I replace |includeSuperProperties=true| with 
|includeSuperFields=true|, I get the expected result:

public Ext()
public Ext(java.lang.Long)
public Ext(java.lang.Long,java.lang.String)

But in more complex cases, |includeSuperFields=true| will include 
unwanted fields that are not actually properties.

What am I doing wrong?

Thanks in advance,

View raw message