private void testSetUserDataOf(PlacemarkDescriptor descriptor, String expected) { final SimpleFeatureType ft = descriptor.getBaseFeatureType(); descriptor.setUserDataOf(ft); assertTrue(ft.getUserData().containsKey(AbstractPlacemarkDescriptor.PROPERTY_NAME_PLACEMARK_DESCRIPTOR)); assertEquals(expected, ft.getUserData().get(AbstractPlacemarkDescriptor.PROPERTY_NAME_PLACEMARK_DESCRIPTOR)); } }
@Test public void testSetUserData() throws Exception { SimpleFeatureType ft1 = createCompatibleFT("org.esa.beam.Pineapple"); assertEquals(0, ft1.getUserData().size()); instance.setUserDataOf(ft1); assertEquals(3, ft1.getUserData().size()); assertEquals("geometry", ft1.getUserData().get("defaultGeometry")); assertEquals("true", ft1.getUserData().get("trackPoints")); assertEquals(TrackPointDescriptor.class.getName(), ft1.getUserData().get("placemarkDescriptor")); SimpleFeatureType ft2 = createCompatibleFT("org.esa.beam.Pin"); assertEquals(0, ft2.getUserData().size()); instance.setUserDataOf(ft2); assertEquals(3, ft2.getUserData().size()); assertEquals("geometry", ft2.getUserData().get("defaultGeometry")); assertEquals("true", ft2.getUserData().get("trackPoints")); assertEquals(TrackPointDescriptor.class.getName(), ft2.getUserData().get("placemarkDescriptor")); }
return null; placemarkDescriptor.setUserDataOf(featureType);
@Test public void testSetUserData() throws Exception { SimpleFeatureType ft1 = createCompatibleFT("org.esa.beam.Pineapple"); assertEquals(0, ft1.getUserData().size()); instance.setUserDataOf(ft1); assertEquals(2, ft1.getUserData().size()); assertEquals("geometry", ft1.getUserData().get("defaultGeometry")); assertEquals("org.esa.beam.framework.datamodel.PinDescriptor", ft1.getUserData().get("placemarkDescriptor")); SimpleFeatureType ft2 = createCompatibleFT("org.esa.beam.Pin"); assertEquals(0, ft2.getUserData().size()); instance.setUserDataOf(ft2); assertEquals(2, ft2.getUserData().size()); assertEquals("geometry", ft2.getUserData().get("defaultGeometry")); assertEquals("org.esa.beam.framework.datamodel.PinDescriptor", ft2.getUserData().get("placemarkDescriptor")); SimpleFeatureType ft3 = createIncompatibleFT("org.esa.beam.GroundControlPoint"); assertEquals(0, ft3.getUserData().size()); instance.setUserDataOf(ft3); assertEquals(1, ft3.getUserData().size()); assertEquals("org.esa.beam.framework.datamodel.PinDescriptor", ft2.getUserData().get("placemarkDescriptor")); }
@Test public void testSetUserData() throws Exception { SimpleFeatureType ft1 = createCompatibleFT("org.esa.beam.GroundControlPot"); assertEquals(0, ft1.getUserData().size()); instance.setUserDataOf(ft1); assertEquals(2, ft1.getUserData().size()); assertEquals("geometry", ft1.getUserData().get("defaultGeometry")); assertEquals("org.esa.beam.framework.datamodel.GcpDescriptor", ft1.getUserData().get("placemarkDescriptor")); SimpleFeatureType ft2 = createCompatibleFT("org.esa.beam.GroundControlPoint"); assertEquals(0, ft2.getUserData().size()); instance.setUserDataOf(ft2); assertEquals(2, ft2.getUserData().size()); assertEquals("geometry", ft2.getUserData().get("defaultGeometry")); assertEquals("org.esa.beam.framework.datamodel.GcpDescriptor", ft2.getUserData().get("placemarkDescriptor")); SimpleFeatureType ft3 = createIncompatibleFT("org.esa.beam.GroundControlPoint"); assertEquals(0, ft3.getUserData().size()); instance.setUserDataOf(ft3); assertEquals(1, ft3.getUserData().size()); assertEquals("org.esa.beam.framework.datamodel.GcpDescriptor", ft2.getUserData().get("placemarkDescriptor")); }
@Override public void actionPerformed(final CommandEvent event) { VisatApp visatApp = VisatApp.getApp(); File file = visatApp.showFileOpenDialog(TITLE, false, null, "importSeabass.lastDir"); if (file == null) { return; } Product product = visatApp.getSelectedProduct(); FeatureCollection<SimpleFeatureType, SimpleFeature> featureCollection; try { featureCollection = readTrack(file, product.getGeoCoding()); } catch (Exception e) { visatApp.showErrorDialog(TITLE, "Failed to load SeaBASS file:\n" + e.getMessage()); return; } if (featureCollection.isEmpty()) { visatApp.showErrorDialog(TITLE, "No records found."); return; } String name = file.getName(); final PlacemarkDescriptor placemarkDescriptor = PlacemarkDescriptorRegistry.getInstance().getPlacemarkDescriptor(featureCollection.getSchema()); placemarkDescriptor.setUserDataOf(featureCollection.getSchema()); VectorDataNode vectorDataNode = new VectorDataNode(name, featureCollection, placemarkDescriptor); product.getVectorDataGroup().add(vectorDataNode); final ProductSceneView view = visatApp.getSelectedProductSceneView(); if (view != null) { view.setLayersVisible(vectorDataNode); } }
@Override public void actionPerformed(final CommandEvent event) { VisatApp visatApp = VisatApp.getApp(); File file = visatApp.showFileOpenDialog(TITLE, false, null, "importTrack.lastDir"); if (file == null) { return; } Product product = visatApp.getSelectedProduct(); FeatureCollection<SimpleFeatureType, SimpleFeature> featureCollection; try { featureCollection = readTrack(file, product.getGeoCoding()); } catch (IOException e) { visatApp.showErrorDialog(TITLE, "Failed to load track file:\n" + e.getMessage()); return; } if (featureCollection.isEmpty()) { visatApp.showErrorDialog(TITLE, "No records found."); return; } String name = FileUtils.getFilenameWithoutExtension(file); final PlacemarkDescriptor placemarkDescriptor = PlacemarkDescriptorRegistry.getInstance().getPlacemarkDescriptor(featureCollection.getSchema()); placemarkDescriptor.setUserDataOf(featureCollection.getSchema()); VectorDataNode vectorDataNode = new VectorDataNode(name, featureCollection, placemarkDescriptor); product.getVectorDataGroup().add(vectorDataNode); final ProductSceneView view = visatApp.getSelectedProductSceneView(); if (view != null) { view.setLayersVisible(vectorDataNode); } }