PropertyPath implements Comparable<PropertyPath> { public static PropertyPath fromPathString(final String propertyPath) { if (propertyPath == null || propertyPath.isEmpty()) { return EMPTY_INSTANCE; } else { return PropertyPath.fromParts(propertyPath.split(DELIMITER_REGEX)); } } @JsonCreator  PropertyPath(@JsonProperty("parts") final List<String> parts); static PropertyPath blank(); static PropertyPath fromPathString(final String propertyPath); static PropertyPath fromParts(final String... parts); static PropertyPath fromParts(final List<String> parts); PropertyPath merge(final PropertyPath otherPath); PropertyPath merge(final String part); @JsonIgnore String getPropertyName(); static Builder builder(); @Override int compareTo(final PropertyPath other); @Override String toString(); @Override boolean equals(final Object o); boolean equalsIgnoreCase(final PropertyPath o); @Override int hashCode();  }
@Test void testSerde() throws IOException { doSerdeTest(PropertyPath.fromPathString("stroom.node.name"), PropertyPath.class); }