PropertyValue implements Serializable, Iterable<PropertyValue> { public PropertyValue setKey(String key) { checkImmutable(); if(!Objects.equals(this.key, key)) { this.key = Objects.requireNonNull(key); version.incrementAndGet(); } return this; } PropertyValue(String key); protected  PropertyValue(String key, String value); static ObjectValue createObject(); static ListValue createList(); static PropertyValue createValue(String key, String value); static ListValue createList(String key); static ObjectValue createObject(String key); static Map<String, PropertyValue> mapProperties(Map<String, String> config, String source); static Map<String, PropertyValue> mapProperties(Map<String, String> config, String source,
                                                           Map<String,String> metaData); static Map<String, PropertyValue> mapProperties(Map<String, String> config, String source,
                                                           Map<String,String> metaData, String prefix); final boolean isImmutable(); PropertyValue immutable(); PropertyValue mutable(); ValueType getValueType(); final String getKey(); String getValue(); @Deprecated String getSource(); PropertyValue setValue(String value); String getQualifiedKey(); final PropertyValue getParent(); final int getVersion(); final boolean isRoot(); final boolean isLeaf(); final Map<String, String> getMeta(); @Deprecated String getMetaEntry(String key); final T getMeta(String key); int getSize(); @Override Iterator<PropertyValue> iterator(); final PropertyValue setMeta(Map<String, String> metaEntries); final PropertyValue setMeta(String key, Object value); final PropertyValue removeMeta(String key); Map<String,String> toMap(); Map<String,String> toLocalMap(); @Override String toString(); ObjectValue toObjectValue(); ListValue toListValue(); PropertyValue setKey(String key); @Override boolean equals(Object o); @Override int hashCode();  }
@Test public void setKey() { PropertyValue n = new PropertyValue("key", ""); assertThat("key").isEqualTo(n.getKey()); n.setKey("jhgjg"); assertThat("jhgjg").isEqualTo(n.getKey()); }