package org.esa.snap.rcp.layermanager.editors; import com.bc.ceres.core.ExtensionFactory; import org.esa.snap.ui.layer.LayerEditor; import org.esa.snap.ui.product.VectorDataLayer; /** * Experimental code: A factory that creates a specific {@link LayerEditor} for a given {@link VectorDataLayer}. * * @author Norman Fomferra * @since BEAM 4.10 */ public class VectorDataLayerEditorFactory implements ExtensionFactory { @Override public LayerEditor getExtension(Object object, Class<?> extensionType) { if (object instanceof VectorDataLayer) { // todo - special TrackPointEditor: work on this after 4.10 (nf) /* VectorDataLayer vectorDataLayer = (VectorDataLayer) object; String featureTypeName = vectorDataLayer.getVectorDataNode().getFeatureType().getTypeName(); if (TrackLayerType.isTrackPointNode(vectorDataLayer.getVectorDataNode())) { return new TrackLayerEditor(); } else { return new VectorDataLayerEditor(); } */ return new VectorDataLayerEditor(); } return null; } @Override public Class<?>[] getExtensionTypes() { return new Class<?>[]{LayerEditor.class}; } }