I'm not clear on what you are saying.
We reflect the methods of existing beans:-
- If the member has a getter it is available in the LHS
- If the member has a setter it is available in the RHS
- If the member has a getter and a setter it is available in both the
LHS and RHS
Members of declared types are available in both the LHS and RHS (as we
implicitly create getters and setters).
I don't understand "we should only support getters" but "be
intelligent
enough not to allow the setter to be used in the IDE". If we only support
getters there is no setter; and if there is no setter how do we allow the
user to set the value? Of course my comments are from a Guvnor perspective,
if you mean to change the way declared types work, then... well, we'll have
to change Guvnor anyway :)
2011/12/19 Mark Proctor <mproctor(a)codehaus.org>
On 19/12/2011 16:04, Michael Anstis wrote:
You are not mistaken.
For POJO models we use reflection (class.getMethods) to determine whether
a Type's methods members are available in the LHS or RHS or both, according
to Java Bean conventions. Declarative models have their members available
in both the LHS and RHS by default as we generate "getters" and
"setters"
for them.
It probably looks like we should support only getters though, for existing
beans. We just need to be intelligent enough not to allow the setter to be
used in the IDE.
Toshiya: Sounds like a great introduction task, you up for the challenge?
Mark
On 19 December 2011 05:47, Toshiya Kobayashi <tkobayas(a)redhat.com> wrote:
> Hello,
>
> In Guvnor 5.3.0, I can use CEP feature support in Guided Rule Editor
> after uploading a class by "Upload POJO Model jar" and annotating it in
> "New Declarable Mode".
>
> 1. | declare TestPojo
> 2. | @role(value = event)
> 3. | end
>
> But if some fields of the POJO class have only getter methods, Guided
> Rule Editor won't list those fields in "Modify constraints" popup. (if
a
> field has a setter method, it will be listed)
>
> public class TestPojo {
> private String name;
> public TestPojo() {}
> public String getName() { return name; }
> // public void setName(String name) { this.name = name; }
> }
>
> Am I missing something? If it's not an expected behaviour, I will raise a
> JIRA.
>
> Cheers,
> Toshiya
> _______________________________________________
> rules-users mailing list
> rules-users(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/rules-users
>
_______________________________________________
rules-users mailing
listrules-users@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/rules-users
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users