gnodet commented on code in PR #2436: URL: https://github.com/apache/maven/pull/2436#discussion_r2134612594
########## src/mdo/java/WrapperProperties.java: ########## @@ -101,102 +88,89 @@ public void list(PrintWriter out) { @Override public int size() { - ensureInitialized(); - return orderedProps.size(); + return getter.get().size(); } @Override public boolean isEmpty() { - ensureInitialized(); - return orderedProps.isEmpty(); + return getter.get().isEmpty(); } @Override public Enumeration<Object> keys() { - ensureInitialized(); - return orderedProps.keys(); + return Collections.enumeration((Set) getter.get().keySet()); } @Override public Enumeration<Object> elements() { - ensureInitialized(); - return orderedProps.elements(); + return Collections.enumeration((Collection) getter.get().values()); } @Override public boolean contains(Object value) { - ensureInitialized(); - return orderedProps.contains(value); + return getter.get().containsKey(value != null ? value.toString() : null); } @Override public boolean containsValue(Object value) { - ensureInitialized(); - return orderedProps.containsValue(value); + return getter.get().containsValue(value); } @Override public boolean containsKey(Object key) { - ensureInitialized(); - return orderedProps.containsKey(key); + return getter.get().containsKey(key); } @Override public Object get(Object key) { - ensureInitialized(); - return orderedProps.get(key); + return getter.get().get(key); } @Override public synchronized String toString() { - ensureInitialized(); - return orderedProps.toString(); + return getter.get().toString(); } @Override public Set<Object> keySet() { - ensureInitialized(); - return orderedProps.keySet(); + return new OrderedProperties(getter.get()).keySet(); } @Override public Collection<Object> values() { - ensureInitialized(); - return orderedProps.values(); + return new OrderedProperties(getter.get()).values(); } @Override public Set<Map.Entry<Object, Object>> entrySet() { - ensureInitialized(); - return orderedProps.entrySet(); + return new OrderedProperties(getter.get()).entrySet(); } @Override public synchronized boolean equals(Object o) { - ensureInitialized(); if (o instanceof WrapperProperties wrapperProperties) { - wrapperProperties.ensureInitialized(); - return orderedProps.equals(wrapperProperties.orderedProps); + o = wrapperProperties.getter.get(); } - return orderedProps.equals(o); + return getter.get().equals(o); } @Override public synchronized int hashCode() { - ensureInitialized(); - return orderedProps.hashCode(); + return getter.get().hashCode(); } @Override public Object getOrDefault(Object key, Object defaultValue) { - ensureInitialized(); - return orderedProps.getOrDefault(key, defaultValue); + if (key instanceof String str && defaultValue instanceof String def) { + return getter.get().getOrDefault(key, def); + } else { + return defaultValue; + } Review Comment: > ```suggestion > > return key instanceof String str && defaultValue instanceof String def > > ? getter.get().getOrDefault(key, def) > > : defaultValue; > > ``` > > this is the term reduced to its (c)leanest. The formatting looks wrong however. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org