@@ -243,10 +243,7 @@ private static Map<String, SegmentContext> mapIdentityOverridesToSegments(
243243 SegmentMetadata metadata = new SegmentMetadata ();
244244 metadata .setSource (SegmentMetadata .Source .IDENTITY_OVERRIDES );
245245
246- Map <String , Object > metadataMap = MapperFactory .getMapper ()
247- .convertValue (metadata ,
248- new com .fasterxml .jackson .core .type .TypeReference <Map <String , Object >>() {
249- });
246+ Map <String , Object > metadataMap = mapSegmentMetadataToMetadataMap (metadata );
250247
251248 SegmentContext segmentContext = new SegmentContext ()
252249 .withKey ("" ) // Identity override segments never use % Split operator
@@ -416,10 +413,7 @@ private static SegmentContext mapSegmentToSegmentContext(SegmentModel segment) {
416413 metadata .setSource (SegmentMetadata .Source .API );
417414 metadata .setFlagsmithId (segment .getId ());
418415
419- Map <String , Object > metadataMap = MapperFactory .getMapper ()
420- .convertValue (metadata ,
421- new com .fasterxml .jackson .core .type .TypeReference <Map <String , Object >>() {
422- });
416+ Map <String , Object > metadataMap = mapSegmentMetadataToMetadataMap (metadata );
423417
424418 String segmentKey = String .valueOf (segment .getId ());
425419 return new SegmentContext ()
@@ -456,4 +450,10 @@ private static String getVirtualSegmentKey(
456450 // This is safer than using List.hashCode() as we control the string content
457451 return String .valueOf (keyBuilder .toString ().hashCode ());
458452 }
453+
454+ private static Map <String , Object > mapSegmentMetadataToMetadataMap (SegmentMetadata metadata ) {
455+ return MapperFactory .getMapper ().convertValue (metadata ,
456+ new com .fasterxml .jackson .core .type .TypeReference <Map <String , Object >>() {
457+ });
458+ }
459459}
0 commit comments