use of com.sldeditor.importdata.esri.renderer.EsriRendererInterface in project sldeditor by robward-scisys.
the class ParseLayer method internal_createRenderer.
/**
* Internal_create renderer.
*
* @param renderer the renderer
* @return the json object
*/
private JsonObject internal_createRenderer(IFeatureRenderer renderer) {
EsriRendererInterface rendererConverter = data.getRenderer(renderer.getClass());
JsonObject jsonRenderer = null;
if (rendererConverter != null) {
jsonRenderer = rendererConverter.convert(renderer);
} else {
System.err.println("Unsupported renderer : " + renderer.getClass().getName());
}
return jsonRenderer;
}
use of com.sldeditor.importdata.esri.renderer.EsriRendererInterface in project sldeditor by robward-scisys.
the class RegisterClasses method registerRenderers.
/**
* Register renderer converters.
*
* @param classLoadersList the class loaders list
* @param data the data
*/
private static void registerRenderers(List<ClassLoader> classLoadersList, ConversionData data) {
logger.info("Renderers supported:");
Reflections reflections = new Reflections(new ConfigurationBuilder().setScanners(new SubTypesScanner(false), new ResourcesScanner()).setUrls(ClasspathHelper.forClassLoader(classLoadersList.toArray(new ClassLoader[0]))).filterInputsBy(new FilterBuilder().include(FilterBuilder.prefix("com.sldeditor.importdata.esri.renderer"))));
Set<Class<? extends Object>> allClasses = reflections.getSubTypesOf(Object.class);
for (Class<? extends Object> claszz : allClasses) {
try {
if (validClass(claszz, EsriRendererInterface.class)) {
EsriRendererInterface rendererObj = (EsriRendererInterface) claszz.newInstance();
logger.info(rendererObj.getRendererClass().getName());
data.addRenderer(rendererObj);
}
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
Aggregations