/** * Returns a new instance of {@code ImmutableJsonFieldSelectorFactory} which constructs a {@link JsonFieldSelector} * based on the given string. * * @param jsonFieldSelectorString the string to create a JSON field selector from. * @param jsonParseOptions the JsonParseOptions to apply when parsing the {@code jsonFieldSelectorString}. * @return a new JSON field selector factory. * @throws NullPointerException if {@code jsonFieldSelectorString} is {@code null}. * @throws JsonFieldSelectorInvalidException if {@code jsonFieldSelectorString} is empty or if {@code * jsonFieldSelectorString} does not contain closing parenthesis ({@code )}) for each opening parenthesis ({@code * (}). */ public static ImmutableJsonFieldSelectorFactory newInstance(final String jsonFieldSelectorString, final JsonParseOptions jsonParseOptions) { requireNonNull(jsonFieldSelectorString, "The JSON field selector string must not be null!"); requireNonNull(jsonParseOptions, "The JSON parse options must not be null!"); final String decodedJsonFieldSelectorString = tryToDecodeString(jsonFieldSelectorString, jsonParseOptions); return new ImmutableJsonFieldSelectorFactory(decodedJsonFieldSelectorString); }
/** * Returns a new instance of {@code ImmutableJsonFieldSelectorFactory} which constructs a {@link JsonFieldSelector} * based on the given string. * * @param jsonFieldSelectorString the string to create a JSON field selector from. * @param jsonParseOptions the JsonParseOptions to apply when parsing the {@code jsonFieldSelectorString}. * @return a new JSON field selector factory. * @throws NullPointerException if {@code jsonFieldSelectorString} is {@code null}. * @throws JsonFieldSelectorInvalidException if {@code jsonFieldSelectorString} is empty or if {@code * jsonFieldSelectorString} does not contain closing parenthesis ({@code )}) for each opening parenthesis ({@code * (}). */ public static ImmutableJsonFieldSelectorFactory newInstance(final String jsonFieldSelectorString, final JsonParseOptions jsonParseOptions) { requireNonNull(jsonFieldSelectorString, "The JSON field selector string must not be null!"); requireNonNull(jsonParseOptions, "The JSON parse options must not be null!"); final String decodedJsonFieldSelectorString = tryToDecodeString(jsonFieldSelectorString, jsonParseOptions); return new ImmutableJsonFieldSelectorFactory(decodedJsonFieldSelectorString); }