LatitudeLongitudeHandler extends BaseKlvHandler implements Trimmable { @Override public Optional<Attribute> asAttribute() { int minimumListSize = getMinimumListSize(); List<String> pairs = new ArrayList<>(); for (int i = 0; i < minimumListSize; i++) { pairs.add( String.format( "POINT (%f %f)", map.get(longitudeFieldName).get(i), map.get(latitudeFieldName).get(i))); } return asAttribute(pairs); } LatitudeLongitudeHandler(
      String attributeName, String latitudeFieldName, String longitudeFieldName); String getLongitudeFieldName(); String getLatitudeFieldName(); Map<String, List<Double>> getRawGeoData(); @Override Optional<Attribute> asAttribute(); LatitudeLongitudeHandler asSubsampledHandler(int subsampleCount); @Override void trim(); @Override void accept(KlvDataElement klvDataElement); @Override void reset(); void accept(String name, Double value);  }
@Test public void testEmpty() { assertThat(klvHandler.asAttribute().isPresent(), is(false)); }