Github user michaelandrepearce commented on a diff in the pull request: https://github.com/apache/activemq-artemis/pull/2427#discussion_r232558150 --- Diff: artemis-commons/src/main/java/org/apache/activemq/artemis/utils/collections/TypedProperties.java --- @@ -318,6 +320,33 @@ public synchronized boolean containsProperty(final SimpleString key) { } } + public synchronized boolean cleanupInternalProperties(Predicate<SimpleString> propertyNamePredicate) { + if (!internalProperties) { --- End diff -- It may have them from legacy someone put it there, but if you were designing a collections class, you'd design it in a fashion so it focussed just on the logic it needs to have so you ensure its good. If anything that field, the flag and the method check hasInternalProperties really should move upto CoreMessage, as its only used there.
---