Skip to content

Commit befee96

Browse files
committed
update how geopackage contents are presented in the list
1 parent 1d245d1 commit befee96

File tree

3 files changed

+13
-12
lines changed

3 files changed

+13
-12
lines changed

src/main/java/com/esri/samples/map/read_geopackage/README.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,6 @@ remove them from the map.</p>
3232
<li>Basemap</li>
3333
<li>FeatureLayer</li>
3434
<li>GeoPackage</li>
35-
<li>GeoPackageFeatureTable</li>
36-
<li>GeoPackageRaster</li>
3735
<li>Layer</li>
3836
<li>MapView</li>
3937
<li>RasterLayer</li>
118 KB
Loading

src/main/java/com/esri/samples/map/read_geopackage/ReadGeoPackageSample.java

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,12 @@
3232
import javafx.util.Callback;
3333

3434
import com.esri.arcgisruntime.data.GeoPackage;
35-
import com.esri.arcgisruntime.data.GeoPackageFeatureTable;
3635
import com.esri.arcgisruntime.layers.FeatureLayer;
3736
import com.esri.arcgisruntime.layers.Layer;
3837
import com.esri.arcgisruntime.layers.RasterLayer;
3938
import com.esri.arcgisruntime.mapping.ArcGISMap;
4039
import com.esri.arcgisruntime.mapping.Basemap;
4140
import com.esri.arcgisruntime.mapping.view.MapView;
42-
import com.esri.arcgisruntime.raster.GeoPackageRaster;
4341

4442
public class ReadGeoPackageSample extends Application {
4543

@@ -85,7 +83,7 @@ public void start(Stage stage) throws Exception {
8583
// add labels and lists to the control panel
8684
vBoxControl.getChildren().addAll(mapLayersLabel, mapLayers, geoPackageLayersLabel, geoPackageLayers);
8785

88-
// create a cell factory to show the layer descriptions in the list view
86+
// create a cell factory to show the layer names in the list view
8987
Callback<ListView<Layer>, ListCell<Layer>> cellFactory = list -> new ListCell<Layer>() {
9088

9189
@Override
@@ -95,12 +93,12 @@ protected void updateItem(Layer layer, boolean bln) {
9593
if (layer != null) {
9694
if (layer instanceof FeatureLayer) {
9795
FeatureLayer featureLayer = (FeatureLayer) layer;
98-
GeoPackageFeatureTable featureTable = (GeoPackageFeatureTable) featureLayer.getFeatureTable();
99-
setText(featureTable.getDescription());
96+
setText(featureLayer.getName());
10097
} else if (layer instanceof RasterLayer) {
10198
RasterLayer rasterLayer = (RasterLayer) layer;
102-
GeoPackageRaster raster = (GeoPackageRaster) rasterLayer.getRaster();
103-
setText(raster.getDescription());
99+
// use the raster file name if the raster layer name is empty
100+
String path = rasterLayer.getRaster().getPath();
101+
setText(rasterLayer.getName().isEmpty() ? path.substring(path.lastIndexOf('/') + 1) : rasterLayer.getName());
104102
}
105103
} else {
106104
setText(null);
@@ -147,13 +145,18 @@ protected void updateItem(Layer layer, boolean bln) {
147145
GeoPackage geoPackage = new GeoPackage(geoPackageFile.getAbsolutePath());
148146
geoPackage.loadAsync();
149147
geoPackage.addDoneLoadingListener(() -> {
150-
geoPackage.getGeoPackageRasters().forEach(r -> {
151-
RasterLayer rasterLayer = new RasterLayer(r);
148+
geoPackage.getGeoPackageRasters().forEach(raster -> {
149+
RasterLayer rasterLayer = new RasterLayer(raster);
150+
rasterLayer.loadAsync();
152151
// make the raster layer semi-transparent so we can see layers below it
153152
rasterLayer.setOpacity(0.5f);
154153
geoPackageLayers.getItems().add(rasterLayer);
155154
});
156-
geoPackage.getGeoPackageFeatureTables().forEach(t -> geoPackageLayers.getItems().add(new FeatureLayer(t)));
155+
geoPackage.getGeoPackageFeatureTables().forEach(table -> {
156+
FeatureLayer featureLayer = new FeatureLayer(table);
157+
featureLayer.loadAsync();
158+
geoPackageLayers.getItems().add(featureLayer);
159+
});
157160
});
158161

159162
// add the map view and control box to stack pane

0 commit comments

Comments
 (0)