+1 for some sample snippets. Perhaps also look at the extensions module
called 'formats'. This is still work in progress though (I am not yet
satisfied with the abstractions), though it might go in a direction you
also are thinking, perhaps...?
public class MyTestSinglePropertySourceProvider extends
BaseSimpleFormatPropertySourceProvider{
public MyTestSinglePropertySourceProvider() {
super(new JSonFormat(),
MyTestSinglePropertySourceProvider.class.getResource(
"META-INF/config/myConfig.ini"));
}
@Override
protected PropertySource createPropertySource(String entryTypeName,
Map<String, String> entries,
ConfigurationFormat
formatUsed) {
// assuming there is only one entryTypeName = default
return new HirarchicalPropertySource(entries);
}
}
and
public class MyTestMultiPropertySourceProvider extends
BasePathBasedMultiFormatPropertySourceProvider{
public MyTestMultiPropertySourceProvider(List<ConfigurationFormat>
formats, String... paths) {
super(Arrays.asList(new ConfigurationFormat[]{}
new JsonFormat(),
new PropertiesFormat(),
new IniConfigurationFormat()}
), "META-INF/config/tamaya-config.*");
}
@Override
protected PropertySource getPropertySource(String entryTypeName,
Map<String, String> entries,
ConfigurationFormat
formatUsed) {
// Convert items read into a corresponding PropertySource
return null;
}
}
Cheers,
Anatole
2015-02-12 8:38 GMT+01:00 Romain Manni-Bucau <[email protected]>:
> Can you give a sample please? I dont get the point
> Le 12 févr. 2015 08:25, "Oliver B. Fischer" <[email protected]> a
> écrit :
>
> > Dear all,
> >
> > PropertySource is our abstraction for different property sources and
> > formats. I think we agree on this. Furthermore we said the origin of a
> > source must be overhanded as a URL (file://somewhere/).
> >
> > That is fine and works. But IMHO we miss the connection between them. How
> > to specify a specific property source and to find the matching
> > PropertySource?
> >
> > Therefore I would like to propose a option SPI: PropertySourceLocator (?)
> >
> > PropertySourceLocator#accepts(URL url):boolean
> > PropertySourceLocator#get(URL url): PropertySource
> >
> > WDYT?
> >
> > Oliver
> >
> > --
> > N Oliver B. Fischer
> > A Schönhauser Allee 64, 10437 Berlin, Deutschland/Germany
> > P +49 30 44793251
> > M +49 178 7903538
> > E [email protected]
> > S oliver.b.fischer
> > J [email protected]
> > X http://xing.to/obf
> >
> >
>
--
*Anatole Tresch*
Java Engineer & Architect, JSR Spec Lead
Glärnischweg 10
CH - 8620 Wetzikon
*Switzerland, Europe Zurich, GMT+1*
*Twitter: @atsticks*
*Blogs: **http://javaremarkables.blogspot.ch/
<http://javaremarkables.blogspot.ch/>*
*Google: atsticksMobile +41-76 344 62 79*