class ImmutableJsonFieldSelectorFactory {

    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);
    }

    private  ImmutableJsonFieldSelectorFactory(final String theJsonFieldSelectorString);

}