public void testUserData() throws Exception { GeometryFactory gf = new GeometryFactory(); builder.add(gf.createPoint(new Coordinate(0, 0))); builder.add(Integer.valueOf(1)); builder.add(new Float(2.0)); builder.featureUserData("foo", "bar"); SimpleFeature feature = builder.buildFeature("fid"); assertNotNull(feature); assertEquals("bar", feature.getUserData().get("foo")); builder = new SimpleFeatureBuilder(feature.getFeatureType()); builder.init(feature); feature = builder.buildFeature("fid"); assertNotNull(feature); assertEquals("bar", feature.getUserData().get("foo")); } }
b.featureUserData("UntypedExtendedData", extData.get("untyped")); @SuppressWarnings("unchecked") Map<String, Object> typedUserData = (Map<String, Object>) extData.get("typed"); b.featureUserData("Folder", folderStack.asList());
b.set(aname("intProperty"), Integer.valueOf(i)); b.set(aname("geometry"), new GeometryFactory().createPoint(new Coordinate(i, i))); b.featureUserData(Hints.USE_PROVIDED_FID, Boolean.TRUE); collection.add(b.buildFeature(typeName + "." + (i * 10)));
/** * @param featureType the feature type of the features to transform * @return a transform function to update and keep track of feature id mappings of exported * features */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { // Return optional.absent for features that were not part of the diff String featureId = feature.getIdentifier().getID(); if (!changedNodes.containsKey(featureId)) { return Optional.absent(); } SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); long fidValue = nextId.incrementAndGet(); builder.featureUserData(Hints.PROVIDED_FID, Long.valueOf(fidValue)); fidMappings.put(Long.toString(fidValue), featureId); Feature modifiedFeature = builder.buildFeature(Long.toString(fidValue)); return Optional.fromNullable(modifiedFeature); }; return function; } }
/** * Transforms all features to use a feature id that is compatible with GeoPackage. Keeps track * of all the mappings so they can be added to the geopackage file after the export. * * @param featureType the feature type of the features to transform * @return the transforming function */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); long fidValue = nextId.incrementAndGet(); builder.featureUserData(Hints.PROVIDED_FID, Long.valueOf(fidValue)); fidMappings.put(Long.toString(fidValue), feature.getIdentifier().getID()); Feature modifiedFeature = builder.buildFeature(Long.toString(fidValue)); return Optional.fromNullable(modifiedFeature); }; return function; } }
/** * @param featureType the feature type of the features to transform * @return a transform function to update and keep track of feature id mappings of exported * features */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); long fidValue = nextId.incrementAndGet(); builder.featureUserData(Hints.PROVIDED_FID, Long.valueOf(fidValue)); fidMappings.put(Long.toString(fidValue), feature.getIdentifier().getID()); Feature modifiedFeature = builder.buildFeature(Long.toString(fidValue)); return Optional.fromNullable(modifiedFeature); }; return function; } }
/** * @param featureType the feature type of the features to transform * @return a transform function to update and keep track of feature id mappings of exported * features */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); long fidValue = nextId.incrementAndGet(); builder.featureUserData(Hints.PROVIDED_FID, Long.valueOf(fidValue)); fidMappings.put(Long.toString(fidValue), feature.getIdentifier().getID()); Feature modifiedFeature = builder.buildFeature(Long.toString(fidValue)); return Optional.fromNullable(modifiedFeature); }; return function; } }
/** * @param featureType the feature type of the features to transform * @return a transform function to update and keep track of feature id mappings of exported * features */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { // Return optional.absent for features that were not part of the diff String featureId = feature.getIdentifier().getID(); if (!changedNodes.containsKey(featureId)) { return Optional.absent(); } SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); long fidValue = nextId.incrementAndGet(); builder.featureUserData(Hints.PROVIDED_FID, Long.valueOf(fidValue)); fidMappings.put(Long.toString(fidValue), featureId); Feature modifiedFeature = builder.buildFeature(Long.toString(fidValue)); return Optional.fromNullable(modifiedFeature); }; return function; } }
/** * Transforms all features to use a feature id that is compatible with GeoPackage. Keeps track * of all the mappings so they can be added to the geopackage file after the export. * * @param featureType the feature type of the features to transform * @return the transforming function */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); long fidValue = nextId.incrementAndGet(); builder.featureUserData(Hints.PROVIDED_FID, Long.valueOf(fidValue)); fidMappings.put(Long.toString(fidValue), feature.getIdentifier().getID()); Feature modifiedFeature = builder.buildFeature(Long.toString(fidValue)); return Optional.fromNullable(modifiedFeature); }; return function; } }
/** * Transforms all features to use a feature id that is compatible with GeoPackage. Keeps track * of all the mappings so they can be added to the geopackage file after the export. * * @param featureType the feature type of the features to transform * @return the transforming function */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); long fidValue = nextId.incrementAndGet(); builder.featureUserData(Hints.PROVIDED_FID, Long.valueOf(fidValue)); fidMappings.put(Long.toString(fidValue), feature.getIdentifier().getID()); Feature modifiedFeature = builder.buildFeature(Long.toString(fidValue)); return Optional.fromNullable(modifiedFeature); }; return function; } }
/** * Transforms all features to use a feature id that is compatible with postgres. * * @param featureType the feature type of the features to transform * @return the transforming function */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); String fid = feature.getIdentifier().getID(); String fidPrefix = feature.getType().getName().getLocalPart(); if (fid.startsWith(fidPrefix)) { fid = fid.substring(fidPrefix.length() + 1); } builder.featureUserData(Hints.PROVIDED_FID, fid); Feature modifiedFeature = builder.buildFeature(fid); return Optional.fromNullable(modifiedFeature); }; return function; } }
builder.featureUserData(Hints.USE_PROVIDED_FID, Boolean.TRUE);
/** * Transforms all features to use a feature id that is compatible with postgres. * * @param featureType the feature type of the features to transform * @return the transforming function */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); String fid = feature.getIdentifier().getID(); String fidPrefix = feature.getType().getName().getLocalPart(); if (fid.startsWith(fidPrefix)) { fid = fid.substring(fidPrefix.length() + 1); } builder.featureUserData(Hints.PROVIDED_FID, fid); Feature modifiedFeature = builder.buildFeature(fid); return Optional.fromNullable(modifiedFeature); }; return function; } }
/** * Transforms all features to use a feature id that is compatible with postgres. * * @param featureType the feature type of the features to transform * @return the transforming function */ @Override protected Function<Feature, Optional<Feature>> getTransformingFunction( final SimpleFeatureType featureType) { Function<Feature, Optional<Feature>> function = (feature) -> { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(featureType); builder.init((SimpleFeature) feature); String fid = feature.getIdentifier().getID(); String fidPrefix = feature.getType().getName().getLocalPart(); if (fid.startsWith(fidPrefix)) { fid = fid.substring(fidPrefix.length() + 1); } builder.featureUserData(Hints.PROVIDED_FID, fid); Feature modifiedFeature = builder.buildFeature(fid); return Optional.fromNullable(modifiedFeature); }; return function; } }
builder.featureUserData(Hints.USE_PROVIDED_FID, java.lang.Boolean.TRUE);
private SimpleFeature transformFeatureId(SimpleFeature feature) { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(feature.getFeatureType()); for (Property property : feature.getProperties()) { if (property instanceof GeometryAttribute) { builder.set(feature.getFeatureType().getGeometryDescriptor().getName(), property.getValue()); } else { builder.set(property.getName().getLocalPart(), property.getValue()); } } Map<Object, Object> userData = feature.getUserData(); for (Entry<Object, Object> entry : userData.entrySet()) { builder.featureUserData(entry.getKey(), entry.getValue()); } long fidValue = nextId.incrementAndGet(); builder.featureUserData(Hints.USE_PROVIDED_FID, true); builder.featureUserData(Hints.PROVIDED_FID, Long.valueOf(fidValue)); SimpleFeature modifiedFeature = builder.buildFeature(Long.toString(fidValue)); return modifiedFeature; }
public void testFolders() throws Exception { SimpleFeatureBuilder fb = new SimpleFeatureBuilder(origType); List<Folder> folders = new ArrayList<Folder>(2); folders.add(new Folder("foo")); folders.add(new Folder("bar")); fb.featureUserData("Folder", folders); SimpleFeature feature = fb.buildFeature("testFolders"); SimpleFeature newFeature = kmlPlacemarkTransform.convertFeature(feature, transformedType); assertEquals("foo -> bar", newFeature.getAttribute("Folder")); } }
private SimpleFeature transformFeatureId(SimpleFeature feature) { SimpleFeatureBuilder builder = new SimpleFeatureBuilder(feature.getFeatureType()); for (Property property : feature.getProperties()) { if (property instanceof GeometryAttribute) { builder.set(feature.getFeatureType().getGeometryDescriptor().getName(), property.getValue()); } else { builder.set(property.getName().getLocalPart(), property.getValue()); } } Map<Object, Object> userData = feature.getUserData(); for (Entry<Object, Object> entry : userData.entrySet()) { builder.featureUserData(entry.getKey(), entry.getValue()); } long fidValue = nextId.incrementAndGet(); builder.featureUserData(Hints.USE_PROVIDED_FID, true); builder.featureUserData(Hints.PROVIDED_FID, Long.valueOf(fidValue)); SimpleFeature modifiedFeature = builder.buildFeature(Long.toString(fidValue)); return modifiedFeature; }
b.featureUserData("UntypedExtendedData", extData.get("untyped")); @SuppressWarnings("unchecked") Map<String, Object> typedUserData = (Map<String, Object>) extData.get("typed"); b.featureUserData("Folder", folderStack.asList());