Movatterモバイル変換


[0]ホーム

URL:


Skip to content
Search Gists
Sign in Sign up

Instantly share code, notes, and snippets.

@RareScrap
CreatedMay 16, 2020 07:20
    • Star(0)You must be signed in to star a gist
    • Fork(0)You must be signed in to fork a gist

    Select an option

    Save RareScrap/98571ddb4ab761c0682ccfd6445ce759 to your computer and use it in GitHub Desktop.
    Позволяет GSON'у толкать поля с переменные с префикса "m"
    publicstaticclassAndroidFieldNamingPolicyimplementsFieldNamingStrategy {
    privatestaticfinalStringJSON_WORD_DELIMITER ="_";
    @Override
    publicStringtranslateName(finalFieldf) {
    if (f.getName().startsWith("m")) {
    returnhandleWords(f.getName().substring(1));
    }
    else {
    thrownewIllegalArgumentException("Don't know how to handle field not starting with m prefix: " +f.getName());
    }
    }
    privatefinalstaticPatternUPPERCASE_PATTERN =Pattern.compile("(?=\\p{Lu})");
    privateStringhandleWords(finalStringfieldName) {
    String[]words =UPPERCASE_PATTERN.split(fieldName);
    finalStringBuffersb =newStringBuffer();
    for (Stringword :words) {
    if (sb.length() >0) {
    sb.append(JSON_WORD_DELIMITER);
    }
    sb.append(word.toLowerCase());
    }
    returnsb.toString();
    }
    }
    Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

    [8]ページ先頭

    ©2009-2025 Movatter.jp