public String getBuilderName(String propertyName, JsonNode node) {
        propertyName = getPropertyNameForAccessor(propertyName, node);

        String prefix = "with";

        if (propertyName.length() > 1 && Character.isUpperCase(propertyName.charAt(1))) {
            return prefix + propertyName;
        } else {
            return prefix + capitalize(propertyName);
        }
    }
@Test
    public void testBuilderNamedCorrectly() {
        assertThat(nameHelper.getBuilderName("foo", NODE), is("withFoo"));
        assertThat(nameHelper.getBuilderName("oAuth2State", NODE), is("withoAuth2State"));
        assertThat(nameHelper.getBuilderName("URL", NODE), is("withUrl"));
    }