Skip to content

Commit c8ab176

Browse files
committed
重复代码重构
1 parent 5b8fc3c commit c8ab176

File tree

1 file changed

+15
-18
lines changed

1 file changed

+15
-18
lines changed

giscat-vector/giscat-vector-pojo/src/main/java/org/wowtools/giscat/vector/pojo/converter/ProtoFeatureConverter.java

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -550,6 +550,19 @@ public static byte[] feature2Proto(Feature feature) {
550550
return featureCollection2Proto(fc);
551551
}
552552

553+
private static ProtoFeature.Map.Builder putPropertiesToCell(Map<String, Object> properties,ToProtoKeyValueCell keyValueCell) {
554+
ProtoFeature.Map.Builder propertiesBuilder = ProtoFeature.Map.newBuilder();
555+
properties.forEach((k, v) -> {
556+
if (null == v) {
557+
return;
558+
}
559+
PropertiesSetter setter = getPropertiesSetter(v);
560+
setter.setKey(propertiesBuilder, keyValueCell, k);
561+
setter.setValue(propertiesBuilder, keyValueCell, v);
562+
});
563+
return propertiesBuilder;
564+
}
565+
553566
/**
554567
* FeatureCollection 转 ProtoFeature bytes
555568
*
@@ -563,15 +576,7 @@ public static byte[] featureCollection2Proto(FeatureCollection featureCollection
563576
//properties转换
564577
Map<String, Object> properties = feature.getProperties();
565578
if (null != properties) {
566-
ProtoFeature.Map.Builder propertiesBuilder = ProtoFeature.Map.newBuilder();
567-
properties.forEach((k, v) -> {
568-
if (null == v) {
569-
return;
570-
}
571-
PropertiesSetter setter = getPropertiesSetter(v);
572-
setter.setKey(propertiesBuilder, keyValueCell, k);
573-
setter.setValue(propertiesBuilder, keyValueCell, v);
574-
});
579+
ProtoFeature.Map.Builder propertiesBuilder = putPropertiesToCell(properties, keyValueCell);
575580
builder.addPropertiess(propertiesBuilder);
576581
} else {
577582
builder.addPropertiess(nullMap);
@@ -885,15 +890,7 @@ public void setValue(ProtoFeature.List.Builder propertiesBuilder, ToProtoKeyValu
885890

886891
private ProtoFeature.Map.Builder createMapBuilder(ToProtoKeyValueCell keyValueCell, Object value) {
887892
Map<String, Object> subProperties = (Map<String, Object>) value;
888-
ProtoFeature.Map.Builder subBuilder = ProtoFeature.Map.newBuilder();
889-
subProperties.forEach((k, v) -> {
890-
if (null == v) {
891-
return;
892-
}
893-
PropertiesSetter setter = getPropertiesSetter(v);
894-
setter.setKey(subBuilder, keyValueCell, k);
895-
setter.setValue(subBuilder, keyValueCell, v);
896-
});
893+
ProtoFeature.Map.Builder subBuilder = putPropertiesToCell(subProperties, keyValueCell);
897894
return subBuilder;
898895
}
899896
};

0 commit comments

Comments
 (0)