public static String getSetterMethodName(String property) {
        StringBuilder sb = new StringBuilder();

        sb.append(property);
        if (Character.isLowerCase(sb.charAt(0))
                && (sb.length() == 1 || !Character.isUpperCase(sb.charAt(1)))) {
            sb.setCharAt(0, Character.toUpperCase(sb.charAt(0)));
        }

        sb.insert(0, "set"); //$NON-NLS-1$

        return sb.toString();
    }
@Test
    void testGetSetterMethodName() {
        assertEquals("seteMail", getSetterMethodName("eMail")); //$NON-NLS-1$ //$NON-NLS-2$
        assertEquals("setFirstName", getSetterMethodName("firstName")); //$NON-NLS-1$ //$NON-NLS-2$
        assertEquals("setURL", getSetterMethodName("URL")); //$NON-NLS-1$ //$NON-NLS-2$
        assertEquals("setXAxis", getSetterMethodName("XAxis")); //$NON-NLS-1$ //$NON-NLS-2$
        assertEquals("setA", getSetterMethodName("a")); //$NON-NLS-1$ //$NON-NLS-2$
        assertEquals("setI_PARAM_INT_1", getSetterMethodName("i_PARAM_INT_1")); //$NON-NLS-1$ //$NON-NLS-2$
        assertEquals("set_fred", getSetterMethodName("_fred")); //$NON-NLS-1$ //$NON-NLS-2$
        assertEquals("setAccountType", getSetterMethodName("AccountType")); //$NON-NLS-1$ //$NON-NLS-2$
    }