[JIRA] Created: (CC-952) Update of properties

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

[JIRA] Created: (CC-952) Update of properties

by JIRA jira@users.public.thoughtworks.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Update of properties
--------------------

                 Key: CC-952
                 URL: http://jira.public.thoughtworks.org/browse/CC-952
             Project: CruiseControl
          Issue Type: Improvement
          Components: Core Application
    Affects Versions: 2.8.3
         Environment: not dependent
            Reporter: Daniel Tihelka


Let us imagine quite complicated CruiseControl (CC) project (let's call it "primary"), where a build uses results of other "secondary" CC projects. Each build of a secondary project DYNAMICALLY (build dependent) defines a set of properties and stores them into a defined property file.

However, the CC does not update properties when the "primary" project is built, as it does not know that the  property files were changed by the "secondary" projects builds.

Jeffrey Fredrick proposed quite general and elegant solution (not limited only to the properties handling), which I started to work on.


See the discusion in messages named "Update of properties" in cruisecontrol-user@... mailing list

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.public.thoughtworks.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Cruisecontrol-devel mailing list
Cruisecontrol-devel@...
https://lists.sourceforge.net/lists/listinfo/cruisecontrol-devel

[JIRA] Updated: (CC-952) Update of properties

by JIRA jira@users.public.thoughtworks.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ http://jira.public.thoughtworks.org/browse/CC-952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Tihelka updated CC-952:
------------------------------

    Attachment: FileResolver.java
                CruiseControlConfig.java.patch1
                CruiseControlConfigIncludeTest.java.patch1

I send the first set of patches to solve the issue (the are 2 more in the following set). The patches do not change the function of CruiseControl, they just slightly change signatures of few methods.


> Update of properties
> --------------------
>
>                 Key: CC-952
>                 URL: http://jira.public.thoughtworks.org/browse/CC-952
>             Project: CruiseControl
>          Issue Type: Improvement
>          Components: Core Application
>    Affects Versions: 2.8.3
>         Environment: not dependent
>            Reporter: Daniel Tihelka
>         Attachments: CruiseControlConfig.java.patch1, CruiseControlConfigIncludeTest.java.patch1, FileResolver.java
>
>   Original Estimate: 2 weeks
>  Remaining Estimate: 2 weeks
>
> Let us imagine quite complicated CruiseControl (CC) project (let's call it "primary"), where a build uses results of other "secondary" CC projects. Each build of a secondary project DYNAMICALLY (build dependent) defines a set of properties and stores them into a defined property file.
> However, the CC does not update properties when the "primary" project is built, as it does not know that the  property files were changed by the "secondary" projects builds.
> Jeffrey Fredrick proposed quite general and elegant solution (not limited only to the properties handling), which I started to work on.
> See the discusion in messages named "Update of properties" in cruisecontrol-user@... mailing list

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.public.thoughtworks.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Cruisecontrol-devel mailing list
Cruisecontrol-devel@...
https://lists.sourceforge.net/lists/listinfo/cruisecontrol-devel

[JIRA] Updated: (CC-952) Update of properties

by JIRA jira@users.public.thoughtworks.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ http://jira.public.thoughtworks.org/browse/CC-952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Tihelka updated CC-952:
------------------------------

    Attachment: XMLConfigManager.java.patch1
                ProjectXMLHelper.java.patch1

There are the two remaining patches.

What remains to implement is the passing of FileResolver
into plugins (see ProjectXMLHelper.configurePlugin()), and to change
DefaultPropertiesPlugin to accept and use the resolver. And maybe some tests,
but I'm not sure, if they are necessary in this case.

Opened discussion is, if modules accepting the FileResorlver should implement an interface (telling that they are interested in FileReselver), or if it should be passed to them using reflection mechanisms. See  "Update of properties" messages from 11.8.09 and 12.8.09 in cruisecontrol-user@... mailing list.




> Update of properties
> --------------------
>
>                 Key: CC-952
>                 URL: http://jira.public.thoughtworks.org/browse/CC-952
>             Project: CruiseControl
>          Issue Type: Improvement
>          Components: Core Application
>    Affects Versions: 2.8.3
>         Environment: not dependent
>            Reporter: Daniel Tihelka
>         Attachments: CruiseControlConfig.java.patch1, CruiseControlConfigIncludeTest.java.patch1, FileResolver.java, ProjectXMLHelper.java.patch1, XMLConfigManager.java.patch1
>
>   Original Estimate: 2 weeks
>  Remaining Estimate: 2 weeks
>
> Let us imagine quite complicated CruiseControl (CC) project (let's call it "primary"), where a build uses results of other "secondary" CC projects. Each build of a secondary project DYNAMICALLY (build dependent) defines a set of properties and stores them into a defined property file.
> However, the CC does not update properties when the "primary" project is built, as it does not know that the  property files were changed by the "secondary" projects builds.
> Jeffrey Fredrick proposed quite general and elegant solution (not limited only to the properties handling), which I started to work on.
> See the discusion in messages named "Update of properties" in cruisecontrol-user@... mailing list

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.public.thoughtworks.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Cruisecontrol-devel mailing list
Cruisecontrol-devel@...
https://lists.sourceforge.net/lists/listinfo/cruisecontrol-devel

[JIRA] Updated: (CC-952) Update of properties

by JIRA jira@users.public.thoughtworks.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ http://jira.public.thoughtworks.org/browse/CC-952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Tihelka updated CC-952:
------------------------------

    Attachment: ResolverUser.java
                DefaultPropertiesPlugin.java.patch1

All right. I have no feedback, so I decided to continue. There are two more attachments, the ResolverUser.java is the interface which, if implemented by a plugin, cases its automatic filling of FileResolver implementation. The patch illustrates it on DefaultPropertiesPlugin, which was the aim of this issue.

What remains to finish is the filling of resolver when a plugin is created - it follows in the next attachment.

> Update of properties
> --------------------
>
>                 Key: CC-952
>                 URL: http://jira.public.thoughtworks.org/browse/CC-952
>             Project: CruiseControl
>          Issue Type: Improvement
>          Components: Core Application
>    Affects Versions: 2.8.3
>         Environment: not dependent
>            Reporter: Daniel Tihelka
>         Attachments: CruiseControlConfig.java.patch1, CruiseControlConfigIncludeTest.java.patch1, DefaultPropertiesPlugin.java.patch1, FileResolver.java, ProjectXMLHelper.java.patch1, ResolverUser.java, XMLConfigManager.java.patch1
>
>   Original Estimate: 2 weeks
>  Remaining Estimate: 2 weeks
>
> Let us imagine quite complicated CruiseControl (CC) project (let's call it "primary"), where a build uses results of other "secondary" CC projects. Each build of a secondary project DYNAMICALLY (build dependent) defines a set of properties and stores them into a defined property file.
> However, the CC does not update properties when the "primary" project is built, as it does not know that the  property files were changed by the "secondary" projects builds.
> Jeffrey Fredrick proposed quite general and elegant solution (not limited only to the properties handling), which I started to work on.
> See the discusion in messages named "Update of properties" in cruisecontrol-user@... mailing list

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.public.thoughtworks.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Cruisecontrol-devel mailing list
Cruisecontrol-devel@...
https://lists.sourceforge.net/lists/listinfo/cruisecontrol-devel

[JIRA] Updated: (CC-952) Update of properties

by JIRA jira@users.public.thoughtworks.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ http://jira.public.thoughtworks.org/browse/CC-952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Tihelka updated CC-952:
------------------------------

    Attachment: ProjectXMLHelper.java.patch2

And the final piece. This patch contains the code passing resolver instance to a plugin implementing the ResolverUses interface.

NOTE: the patch is diff to the code added by ProjectXMLHelper.java.patch1. So, apply the patch1 before applying this patch2!

> Update of properties
> --------------------
>
>                 Key: CC-952
>                 URL: http://jira.public.thoughtworks.org/browse/CC-952
>             Project: CruiseControl
>          Issue Type: Improvement
>          Components: Core Application
>    Affects Versions: 2.8.3
>         Environment: not dependent
>            Reporter: Daniel Tihelka
>         Attachments: CruiseControlConfig.java.patch1, CruiseControlConfigIncludeTest.java.patch1, DefaultPropertiesPlugin.java.patch1, FileResolver.java, ProjectXMLHelper.java.patch1, ProjectXMLHelper.java.patch2, ResolverUser.java, XMLConfigManager.java.patch1
>
>   Original Estimate: 2 weeks
>  Remaining Estimate: 2 weeks
>
> Let us imagine quite complicated CruiseControl (CC) project (let's call it "primary"), where a build uses results of other "secondary" CC projects. Each build of a secondary project DYNAMICALLY (build dependent) defines a set of properties and stores them into a defined property file.
> However, the CC does not update properties when the "primary" project is built, as it does not know that the  property files were changed by the "secondary" projects builds.
> Jeffrey Fredrick proposed quite general and elegant solution (not limited only to the properties handling), which I started to work on.
> See the discusion in messages named "Update of properties" in cruisecontrol-user@... mailing list

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.public.thoughtworks.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Cruisecontrol-devel mailing list
Cruisecontrol-devel@...
https://lists.sourceforge.net/lists/listinfo/cruisecontrol-devel

[JIRA] Updated: (CC-952) Update of properties

by JIRA jira@users.public.thoughtworks.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ http://jira.public.thoughtworks.org/browse/CC-952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Tihelka updated CC-952:
------------------------------

    Attachment: FileResolver.java
                ResolverUser.java
                Update-of-properties.patch

Well, you may want it all-in-one. So this attachment contains both the new java classes and the patch with all modifications done.

I hope that I understood Jeffrey well and this code will cause automatic re-read of properties get from a file whenever the file is changed. If so, it was really easy; if not, I am ready to continue and get it to the required shape.

> Update of properties
> --------------------
>
>                 Key: CC-952
>                 URL: http://jira.public.thoughtworks.org/browse/CC-952
>             Project: CruiseControl
>          Issue Type: Improvement
>          Components: Core Application
>    Affects Versions: 2.8.3
>         Environment: not dependent
>            Reporter: Daniel Tihelka
>         Attachments: CruiseControlConfig.java.patch1, CruiseControlConfigIncludeTest.java.patch1, DefaultPropertiesPlugin.java.patch1, FileResolver.java, FileResolver.java, ProjectXMLHelper.java.patch1, ProjectXMLHelper.java.patch2, ResolverUser.java, ResolverUser.java, Update-of-properties.patch, XMLConfigManager.java.patch1
>
>   Original Estimate: 2 weeks
>  Remaining Estimate: 2 weeks
>
> Let us imagine quite complicated CruiseControl (CC) project (let's call it "primary"), where a build uses results of other "secondary" CC projects. Each build of a secondary project DYNAMICALLY (build dependent) defines a set of properties and stores them into a defined property file.
> However, the CC does not update properties when the "primary" project is built, as it does not know that the  property files were changed by the "secondary" projects builds.
> Jeffrey Fredrick proposed quite general and elegant solution (not limited only to the properties handling), which I started to work on.
> See the discusion in messages named "Update of properties" in cruisecontrol-user@... mailing list

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.public.thoughtworks.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Cruisecontrol-devel mailing list
Cruisecontrol-devel@...
https://lists.sourceforge.net/lists/listinfo/cruisecontrol-devel

[JIRA] Commented: (CC-952) Update of properties

by JIRA jira@users.public.thoughtworks.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ http://jira.public.thoughtworks.org/browse/CC-952?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_17882 ]

Dan Rollo commented on CC-952:
------------------------------

Hi Daniel,

I have not reviewed this (as I am not up to date on the discussed you have had so far).

It might make it easier for people to review you changes if you:
1. Put the latest changes all into one .patch file (that way it's easy to apply all at once).
2. Clear mention in a comment which .patch file is the current "golden" one. ;)

Dan

> Update of properties
> --------------------
>
>                 Key: CC-952
>                 URL: http://jira.public.thoughtworks.org/browse/CC-952
>             Project: CruiseControl
>          Issue Type: Improvement
>          Components: Core Application
>    Affects Versions: 2.8.3
>         Environment: not dependent
>            Reporter: Daniel Tihelka
>         Attachments: CruiseControlConfig.java.patch1, CruiseControlConfigIncludeTest.java.patch1, DefaultPropertiesPlugin.java.patch1, FileResolver.java, FileResolver.java, ProjectXMLHelper.java.patch1, ProjectXMLHelper.java.patch2, ResolverUser.java, ResolverUser.java, Update-of-properties.patch, XMLConfigManager.java.patch1
>
>   Original Estimate: 2 weeks
>  Remaining Estimate: 2 weeks
>
> Let us imagine quite complicated CruiseControl (CC) project (let's call it "primary"), where a build uses results of other "secondary" CC projects. Each build of a secondary project DYNAMICALLY (build dependent) defines a set of properties and stores them into a defined property file.
> However, the CC does not update properties when the "primary" project is built, as it does not know that the  property files were changed by the "secondary" projects builds.
> Jeffrey Fredrick proposed quite general and elegant solution (not limited only to the properties handling), which I started to work on.
> See the discusion in messages named "Update of properties" in cruisecontrol-user@... mailing list

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.public.thoughtworks.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Cruisecontrol-devel mailing list
Cruisecontrol-devel@...
https://lists.sourceforge.net/lists/listinfo/cruisecontrol-devel

[JIRA] Updated: (CC-952) Update of properties

by JIRA jira@users.public.thoughtworks.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ http://jira.public.thoughtworks.org/browse/CC-952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Tihelka updated CC-952:
------------------------------

    Attachment: Update-of-properties.patch

Than you for your note. So, the "golden" patch is Update-of-properties.patch (now against revision 4365), which further requires FileResolver.java and ResolverUser.java files.


> Update of properties
> --------------------
>
>                 Key: CC-952
>                 URL: http://jira.public.thoughtworks.org/browse/CC-952
>             Project: CruiseControl
>          Issue Type: Improvement
>          Components: Core Application
>    Affects Versions: 2.8.3
>         Environment: not dependent
>            Reporter: Daniel Tihelka
>         Attachments: CruiseControlConfig.java.patch1, CruiseControlConfigIncludeTest.java.patch1, DefaultPropertiesPlugin.java.patch1, FileResolver.java, FileResolver.java, ProjectXMLHelper.java.patch1, ProjectXMLHelper.java.patch2, ResolverUser.java, ResolverUser.java, Update-of-properties.patch, Update-of-properties.patch, XMLConfigManager.java.patch1
>
>   Original Estimate: 2 weeks
>  Remaining Estimate: 2 weeks
>
> Let us imagine quite complicated CruiseControl (CC) project (let's call it "primary"), where a build uses results of other "secondary" CC projects. Each build of a secondary project DYNAMICALLY (build dependent) defines a set of properties and stores them into a defined property file.
> However, the CC does not update properties when the "primary" project is built, as it does not know that the  property files were changed by the "secondary" projects builds.
> Jeffrey Fredrick proposed quite general and elegant solution (not limited only to the properties handling), which I started to work on.
> See the discusion in messages named "Update of properties" in cruisecontrol-user@... mailing list

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.public.thoughtworks.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Cruisecontrol-devel mailing list
Cruisecontrol-devel@...
https://lists.sourceforge.net/lists/listinfo/cruisecontrol-devel