public Pattern updatePattern ( final Collection < String > prefixes ) { final String XML_PREFIX = prefixes . stream ( ) . map ( s -> Pattern . quote ( s + "/" ) ) . collect ( Collectors . joining ( "|" ) ) ; return XML_PATH_PATTERN = Pattern . compile ( "^/?(?:" + XML_PREFIX + ")?(?:" + IDX_PREFIX + ")?(?<fieldPath>[^/]+(?:/[^/]+)*)$" ) ; }
We have to do it this way to break the circular dependency between the FieldsInfo deserializer and this .