[jira] Updated: (CONFIGURATION-248) Safeguard config source abstraction by using HierarchicalConfiguration as supertype for all configs

2007-01-11 Thread Dennis Kuehn (JIRA)

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

Dennis Kuehn updated CONFIGURATION-248:
---

Description: 
I hope I get this right:
When I have a CompositeConfiguration, the nice thing about it is that I don't 
have to care in which file or file type a config entry has been defined. Now 
when part of my CompositeConfiguration has a hierarchical structure and I need 
the API provided by HierarchicalConfiguration, I lose the aforementioned 
abstraction: I need to cast a specific part of my CompositeConfiguration to 
HierarchicalConfiguration. This is a major design problem!

It would be better to leverage the Composite Pattern here: derive all 
configuration classes from HierarchicalConfiguration. Put differently, move the 
HierarchicalConfiguration API to Configuration. Even if a config is not 
hierarchically structured, methods for hierarchical access will be present, but 
that's a minor drawback which is intrinsic to the Composite Pattern. This also 
happens when you are modelling a tree structure and you have a common supertype 
Node which has a method getSubNodes() which will also be present in leaf 
node instances (in this case, getSubNodes() would return null etc.).


  was:
I hope I get this right:
When I have a CompositeConfiguration, the nice thing about it is that I don't 
have to care in which file or file type a config entry has been defined. Now 
when part of my CompositeConfiguration has a hierarchical structure and I need 
the API provided by HierarchicalConfiguration, I lose the aforementioned 
abstraction: I need to cast a specific part of my CompositeConfiguration to 
HierarchicalConfiguration. This is a major design problem!

It would be better to leverage the Composite Pattern here: derive all 
configuration objects from HierarchicalConfiguration. Put differently, move the 
HierarchicalConfiguration API to Configuration. Even if a config is not 
hierarchically structured, methods for hierarchical access will be present, but 
that's a minor drawback which is intrinsic to the Composite Pattern, like when 
you are modelling a tree structure and you have a common superclass Node 
which has a method getSubNodes() which will also be present for leaf nodes 
(in this case, getSubNodes() would return null etc.).



 Safeguard config source abstraction by using HierarchicalConfiguration as 
 supertype for all configs
 ---

 Key: CONFIGURATION-248
 URL: https://issues.apache.org/jira/browse/CONFIGURATION-248
 Project: Commons Configuration
  Issue Type: Wish
Affects Versions: 1.3 Final
 Environment: -
Reporter: Dennis Kuehn

 I hope I get this right:
 When I have a CompositeConfiguration, the nice thing about it is that I don't 
 have to care in which file or file type a config entry has been defined. Now 
 when part of my CompositeConfiguration has a hierarchical structure and I 
 need the API provided by HierarchicalConfiguration, I lose the aforementioned 
 abstraction: I need to cast a specific part of my CompositeConfiguration to 
 HierarchicalConfiguration. This is a major design problem!
 It would be better to leverage the Composite Pattern here: derive all 
 configuration classes from HierarchicalConfiguration. Put differently, move 
 the HierarchicalConfiguration API to Configuration. Even if a config is not 
 hierarchically structured, methods for hierarchical access will be present, 
 but that's a minor drawback which is intrinsic to the Composite Pattern. This 
 also happens when you are modelling a tree structure and you have a common 
 supertype Node which has a method getSubNodes() which will also be 
 present in leaf node instances (in this case, getSubNodes() would return 
 null etc.).

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



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jira] Updated: (CONFIGURATION-248) Safeguard config source abstraction by using HierarchicalConfiguration as supertype for all configs

2007-01-11 Thread Oliver Heger (JIRA)

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

Oliver Heger updated CONFIGURATION-248:
---

Fix Version/s: 2.0
Affects Version/s: (was: 2.0)
   1.3 Final

 Safeguard config source abstraction by using HierarchicalConfiguration as 
 supertype for all configs
 ---

 Key: CONFIGURATION-248
 URL: https://issues.apache.org/jira/browse/CONFIGURATION-248
 Project: Commons Configuration
  Issue Type: Wish
Affects Versions: 1.3 Final
 Environment: -
Reporter: Dennis Kuehn
 Fix For: 2.0


 I hope I get this right:
 When I have a CompositeConfiguration, the nice thing about it is that I don't 
 have to care in which file or file type a config entry has been defined. Now 
 when part of my CompositeConfiguration has a hierarchical structure and I 
 need the API provided by HierarchicalConfiguration, I lose the aforementioned 
 abstraction: I need to cast a specific part of my CompositeConfiguration to 
 HierarchicalConfiguration. This is a major design problem!
 It would be better to leverage the Composite Pattern here: derive all 
 configuration classes from HierarchicalConfiguration. Put differently, move 
 the HierarchicalConfiguration API to Configuration. Even if a config is not 
 hierarchically structured, methods for hierarchical access will be present, 
 but that's a minor drawback which is intrinsic to the Composite Pattern. This 
 also happens when you are modelling a tree structure and you have a common 
 supertype Node which has a method getSubNodes() which will also be 
 present in leaf node instances (in this case, getSubNodes() would return 
 null etc.).

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



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jira] Updated: (CONFIGURATION-248) Safeguard config source abstraction by using HierarchicalConfiguration as supertype for all configs

2007-01-11 Thread Oliver Heger (JIRA)

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

Oliver Heger updated CONFIGURATION-248:
---

Affects Version/s: (was: 1.3 Final)
   2.0

I agree that a future version of the Configuration interface should support the 
special operations for hierarchical configurations. Non hierarchical 
configurations can be seen as a flat special case for hierarchical 
configurations. However because this is a major change that would break binary 
compatibility, such a change can only be done in a major release, i.e. for 
Commons Configuration 2.0.

In the meantime: Did you see the CombinedConfiguration class? This is a 
hierarchical version of CompositeConfiguration.

 Safeguard config source abstraction by using HierarchicalConfiguration as 
 supertype for all configs
 ---

 Key: CONFIGURATION-248
 URL: https://issues.apache.org/jira/browse/CONFIGURATION-248
 Project: Commons Configuration
  Issue Type: Wish
Affects Versions: 1.3 Final
 Environment: -
Reporter: Dennis Kuehn
 Fix For: 2.0


 I hope I get this right:
 When I have a CompositeConfiguration, the nice thing about it is that I don't 
 have to care in which file or file type a config entry has been defined. Now 
 when part of my CompositeConfiguration has a hierarchical structure and I 
 need the API provided by HierarchicalConfiguration, I lose the aforementioned 
 abstraction: I need to cast a specific part of my CompositeConfiguration to 
 HierarchicalConfiguration. This is a major design problem!
 It would be better to leverage the Composite Pattern here: derive all 
 configuration classes from HierarchicalConfiguration. Put differently, move 
 the HierarchicalConfiguration API to Configuration. Even if a config is not 
 hierarchically structured, methods for hierarchical access will be present, 
 but that's a minor drawback which is intrinsic to the Composite Pattern. This 
 also happens when you are modelling a tree structure and you have a common 
 supertype Node which has a method getSubNodes() which will also be 
 present in leaf node instances (in this case, getSubNodes() would return 
 null etc.).

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



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]