Its the PropertySourceProviders that can do file discovery and apply whatever öpgic on top to determine the different priorities of the different files fouind...
Romain Manni-Bucau <[email protected]> schrieb am Thu Feb 12 2015 at 17:43:31: > You judt want few custom sources you can call directly for that purpose but > to be honest this look like the opposite of tamaya design (you dont > discover files but property sources) > Le 12 févr. 2015 17:37, "Anatole Tresch" <[email protected]> a écrit : > > > Definitivly not, semms for mw you mix up things_ > > > > PropertySourceProvider = n PropertySources > > Location(URL) + format + Config/PriorityMapping = n PropertySources > > > > Oliver B. Fischer <[email protected]> schrieb am Thu Feb 12 2015 > at > > 16:51:20: > > > > > @Anatole: IMHO duplicates the formats module the functionality of the > > > PropertySource. IMHO. > > > > > > Am 12.02.15 um 10:41 schrieb Anatole Tresch: > > > > +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 MyTestMultiPropertySourceProvi > der(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 > > > >>> > > > >>> > > > > > > > > > > > > > > -- > > > 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 > > > > > > > > >
