On Thu, May 24, 2012 at 7:23 PM, Vincent Massol <[email protected]> wrote:
> > On May 24, 2012, at 9:09 AM, Denis Gervalle wrote: > > > On Tue, May 22, 2012 at 4:03 PM, Vincent Massol <[email protected]> > wrote: > > > >> > >> On May 22, 2012, at 3:51 PM, Sergiu Dumitriu wrote: > >> > >>> On 05/22/2012 08:59 AM, Vincent Massol wrote: > >>>> > >>>> On May 22, 2012, at 2:49 PM, Vincent Massol wrote: > >>>> > >>>>> Hi devs, > >>>>> > >>>>> I need to be able to configuration the location of the HSQLDB > >> database/ directory in our installer when executing on windows7 > (because on > >> windows7 you cannot write to the ProgramFiles directory). > >>>>> > >>>>> I'm proposing to add variable substitution so that we can configure > >> connectio.url for HSQLDB to point to the environment.permanentDirectory > >> location. > >>>>> > >>>>> We would have: > >>>>> <property > >> > name="connection.url">jdbc:hsqldb:file:${environment.permanentDirectory)/database/xwiki_db;shutdown=true</property> > >>>>> > >>>>> Technical details: > >>>>> * I'll modify DBCPConnectionProvider. More specifically this part: > >>>>> > >>>>> String jdbcUrl = System.getProperty(Environment.URL); > >>>>> if (jdbcUrl == null) { > >>>>> jdbcUrl = props.getProperty(Environment.URL); > >>>>> } > >>>>> dbcpProperties.put("url", jdbcUrl); > >>>>> > >>>>> * And look for ${…} , extract the variable name and use the > >> XWikiPropertiesConfigurationSource to get the value for that variable > name, > >> as a String. > >>>>> > >>>>> WDYT? > >>>> > >>>> Note that another solution to this is to move all Hibernate > >> configuration data to xwiki.properties… Since we allow property > referencing > >> in our xwiki.properties file it would solve my need too. > >>>> > >>>> It's a lot more more work though (unless we support both, looking > first > >> in xwiki.properties for hibernate properties and fallbacking to older > >> hibernate.cfg.xml if not found, in which case it's a little less work > but > >> still substantial). I'm still unsure I'm prepared to work on this now… > :) > >>>> > >>>> WDYT? > >>> > >>> I don't like this that much, since there's a lot more that can be > >> configured in the xml file, and the .properties is already getting very > big. > >> > >> If we really think that the size of the file is important (which I'm not > >> sure about) then we have the option of having as many configuration > files > >> as possible by using a CompositeConfiguration. > >> > > > > I agree with Sergiu, but this is not a question of file size. Duplicating > > the work done for hibernate configuration is not good, we would both > limit > > the flexibility since duplicating the whole possibilities would be hard, > > No it wouldn't ;-) > > We would automatically take all props starting with storage.hibernate.* > and pass them. > hibernate.cfg.xml is not just a simple list of properties. Are we talking about the same thing ? > > > and also confuse those who already knows the syntax of such file. So, I > > like more the variable substitution proposal. With that one, we could > > provide a simplified configuration in our ConfigurationSource, while > > keeping the possibility of configuring the XML file directly. This is the > > best of both worlds IMO. > > As I replied to sergiu there's also a 3rd solution: using a different file > but with commons configuration. > Not sure to understand what you means. All I say is that the hibernate.cfg.xml is a well-known configuration file, and that it is nice to be able to use it directly. This is why I prefer variable substitution in that file, taking any properties from our environment. > > Thanks > Vincent > > >> The important point here is not so much to have hibernate config in the > >> same file but rather to have it under our ConfigurationSource mechanism. > >> > >> Thanks > >> -Vincent > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs > -- Denis Gervalle SOFTEC sa - CEO eGuilde sarl - CTO _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

