* @param servletContext
* @return
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
public static List<EntityDescriptorType> getMetadataConfiguration(ProviderType providerType, ServletContext servletContext) {
MetadataProviderType metadataProviderType = providerType.getMetaDataProvider();
if (metadataProviderType == null) {
return null;
}
String fqn = metadataProviderType.getClassName();
Class<?> clazz = SecurityActions.loadClass(CoreConfigUtil.class, fqn);
IMetadataProvider metadataProvider;
try {
metadataProvider = (IMetadataProvider) clazz.newInstance();
} catch (Exception iae) {
throw new RuntimeException(iae);
}
List<KeyValueType> keyValues = metadataProviderType.getOption();
Map<String, String> options = new HashMap<String, String>();
if (keyValues != null) {
for (KeyValueType kvt : keyValues)
options.put(kvt.getKey(), kvt.getValue());
}