Apache Geronimo > Discussion Forums  User List | Dev List | Wiki | Issue Tracker  

[jira] Created: (GERONIMO-4216) Examine setters methods in connector builder

View: New views
10 Messages — Rating Filter:   Alert me  

[jira] Created: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Examine setters methods in connector builder
--------------------------------------------

                 Key: GERONIMO-4216
                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
             Project: Geronimo
          Issue Type: Improvement
      Security Level: public (Regular issues)
          Components: connector
    Affects Versions: 2.2
            Reporter: Jarek Gawor


Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).

This is related to [GERONIMO-4131].


--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ https://issues.apache.org/jira/browse/GERONIMO-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rex Wang reassigned GERONIMO-4216:
----------------------------------

    Assignee: Rex Wang

> Examine setters methods in connector builder
> --------------------------------------------
>
>                 Key: GERONIMO-4216
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
>             Project: Geronimo
>          Issue Type: Improvement
>      Security Level: public(Regular issues)
>          Components: connector
>    Affects Versions: 2.2
>            Reporter: Jarek Gawor
>            Assignee: Rex Wang
>
> Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).
> This is related to [GERONIMO-4131].

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ https://issues.apache.org/jira/browse/GERONIMO-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rex Wang updated GERONIMO-4216:
-------------------------------

    Attachment: GERONIMO-4216-b21.patch

This is the current solution for brach 2.1, I will make a trunk patch once I can get the build successfully.

-Rex

> Examine setters methods in connector builder
> --------------------------------------------
>
>                 Key: GERONIMO-4216
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
>             Project: Geronimo
>          Issue Type: Improvement
>      Security Level: public(Regular issues)
>          Components: connector
>    Affects Versions: 2.2
>            Reporter: Jarek Gawor
>            Assignee: Rex Wang
>         Attachments: GERONIMO-4216-b21.patch
>
>
> Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).
> This is related to [GERONIMO-4131].

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ https://issues.apache.org/jira/browse/GERONIMO-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12725094#action_12725094 ]

Rex Wang commented on GERONIMO-4216:
------------------------------------

Although having the solution for this JIRA, I am not very confortable with this connector builder, we can see a lot of "switchCase" called in the class with which it  can support the "thisProperty" and "ThisProperty" properties from the rar plan. I have raise a discussion on this issue, and prefer to enable this ability on the gbean attribute level. I would like to open a new jira against it. Thanks for any comments!

-Rex

> Examine setters methods in connector builder
> --------------------------------------------
>
>                 Key: GERONIMO-4216
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
>             Project: Geronimo
>          Issue Type: Improvement
>      Security Level: public(Regular issues)
>          Components: connector
>    Affects Versions: 2.2
>            Reporter: Jarek Gawor
>            Assignee: Rex Wang
>         Attachments: GERONIMO-4216-b21.patch
>
>
> Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).
> This is related to [GERONIMO-4131].

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ https://issues.apache.org/jira/browse/GERONIMO-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rex Wang updated GERONIMO-4216:
-------------------------------

    Attachment: GERONIMO-4216-b21-updated.patch

Use the updated patch to eliminate using the switchCase, this can make the the code logic more readable. However, we still should always decapitalize the property name first in this builder.

-Rex

> Examine setters methods in connector builder
> --------------------------------------------
>
>                 Key: GERONIMO-4216
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
>             Project: Geronimo
>          Issue Type: Improvement
>      Security Level: public(Regular issues)
>          Components: connector
>    Affects Versions: 2.2
>            Reporter: Jarek Gawor
>            Assignee: Rex Wang
>         Attachments: GERONIMO-4216-b21-updated.patch
>
>
> Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).
> This is related to [GERONIMO-4131].

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ https://issues.apache.org/jira/browse/GERONIMO-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rex Wang updated GERONIMO-4216:
-------------------------------

    Attachment:     (was: GERONIMO-4216-b21.patch)

> Examine setters methods in connector builder
> --------------------------------------------
>
>                 Key: GERONIMO-4216
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
>             Project: Geronimo
>          Issue Type: Improvement
>      Security Level: public(Regular issues)
>          Components: connector
>    Affects Versions: 2.2
>            Reporter: Jarek Gawor
>            Assignee: Rex Wang
>         Attachments: GERONIMO-4216-b21-updated.patch
>
>
> Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).
> This is related to [GERONIMO-4131].

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ https://issues.apache.org/jira/browse/GERONIMO-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rex Wang updated GERONIMO-4216:
-------------------------------

    Attachment: GERONIMO-4216-b21-updated.patch

> Examine setters methods in connector builder
> --------------------------------------------
>
>                 Key: GERONIMO-4216
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
>             Project: Geronimo
>          Issue Type: Improvement
>      Security Level: public(Regular issues)
>          Components: connector
>    Affects Versions: 2.2
>            Reporter: Jarek Gawor
>            Assignee: Rex Wang
>         Attachments: GERONIMO-4216-b21-updated.patch
>
>
> Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).
> This is related to [GERONIMO-4131].

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ https://issues.apache.org/jira/browse/GERONIMO-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rex Wang updated GERONIMO-4216:
-------------------------------

    Attachment:     (was: GERONIMO-4216-b21-updated.patch)

> Examine setters methods in connector builder
> --------------------------------------------
>
>                 Key: GERONIMO-4216
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
>             Project: Geronimo
>          Issue Type: Improvement
>      Security Level: public(Regular issues)
>          Components: connector
>    Affects Versions: 2.2
>            Reporter: Jarek Gawor
>            Assignee: Rex Wang
>         Attachments: GERONIMO-4216-b21-updated.patch
>
>
> Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).
> This is related to [GERONIMO-4131].

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ https://issues.apache.org/jira/browse/GERONIMO-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12752897#action_12752897 ]

Rex Wang commented on GERONIMO-4216:
------------------------------------

I would like to re-discuss on this improvement, the previous way to set up dynamic gbean in connector builder is, use java reflection to find out all the public getters and setters. And the ones both have public getter and setter method is a "valid" attribute and will build a GAttributeInfo for them.

But the GERONIMO-3874 hope examine the setters (because in a spring ra, the getter is protected. And what is more, there might be no getter in a RA class definiation), so the purpose of this jira.

The difficulty is how to determine the type of an attribute. And that is also the reason why this jira opens such a long time. The current code logic is using the retune type of getter as the type of attribute, That is reasonalbe absolutely. But if no getter exist, how to "guess" the type?

I am not sure if the following code logic is acceptable:
1. if both have setter and getter, use the return type of getter.
2. if no getter, check if there is an attribute declaration. if exist, use its type.
3. if no getter and attribute declaration, use the setter arguments type as the attibute type. (always primative and string)

Any thoughts?

-Rex

> Examine setters methods in connector builder
> --------------------------------------------
>
>                 Key: GERONIMO-4216
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
>             Project: Geronimo
>          Issue Type: Improvement
>      Security Level: public(Regular issues)
>          Components: connector
>    Affects Versions: 2.2
>            Reporter: Jarek Gawor
>            Assignee: Rex Wang
>         Attachments: GERONIMO-4216-b21-updated.patch
>
>
> Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).
> This is related to [GERONIMO-4131].

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (GERONIMO-4216) Examine setters methods in connector builder

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ https://issues.apache.org/jira/browse/GERONIMO-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12752897#action_12752897 ]

Rex Wang edited comment on GERONIMO-4216 at 9/8/09 9:35 PM:
------------------------------------------------------------

I would like to re-discuss this improvement, the previous way to set up dynamic gbean in connector builder is, use java reflection to find out all the public getters and setters. And the one both have public getter and setter is a "valid" attribute and will build a GAttributeInfo for it.

But the GERONIMO-3874 hope examine the setters (because in a spring ra, the getter is protected. And what is more, there might be no getter in a RA class definiation). So is the purpose of this jira.

The difficulty is how to determine the type of an attribute. And that is also the reason why this jira opens such a long time, I think. The current code logic is using the retune type of getter as the type of attribute, That is reasonalbe absolutely. But if no getter exist, how to "guess" the type?

I am not sure if the following code logic is acceptable:
1. if both have setter and getter, use the return type of getter.
2. if no getter, check if there is an attribute declaration. if exist, use its type.
3. if no getter and attribute declaration, use the setter arguments type as the attibute type. (always primative and string)

Any thoughts?

-Rex

      was (Author: rwonly):
    I would like to re-discuss on this improvement, the previous way to set up dynamic gbean in connector builder is, use java reflection to find out all the public getters and setters. And the ones both have public getter and setter method is a "valid" attribute and will build a GAttributeInfo for them.

But the GERONIMO-3874 hope examine the setters (because in a spring ra, the getter is protected. And what is more, there might be no getter in a RA class definiation), so the purpose of this jira.

The difficulty is how to determine the type of an attribute. And that is also the reason why this jira opens such a long time. The current code logic is using the retune type of getter as the type of attribute, That is reasonalbe absolutely. But if no getter exist, how to "guess" the type?

I am not sure if the following code logic is acceptable:
1. if both have setter and getter, use the return type of getter.
2. if no getter, check if there is an attribute declaration. if exist, use its type.
3. if no getter and attribute declaration, use the setter arguments type as the attibute type. (always primative and string)

Any thoughts?

-Rex
 

> Examine setters methods in connector builder
> --------------------------------------------
>
>                 Key: GERONIMO-4216
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4216
>             Project: Geronimo
>          Issue Type: Improvement
>      Security Level: public(Regular issues)
>          Components: connector
>    Affects Versions: 2.2
>            Reporter: Jarek Gawor
>            Assignee: Rex Wang
>         Attachments: GERONIMO-4216-b21-updated.patch
>
>
> Currently, the connector builder uses the getter methods to figure out the types for the attributes for the dynamic gbeans created for the various connector classes. The connector builder should use the setter methods instead (for example, in cases where there is a write-only property, i.e. setter method is present but getter is not).
> This is related to [GERONIMO-4131].

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.