Standard API REST per includere il metodo in Controller o livello di servizio

0

Stiamo utilizzando REST API con Spring MVC per sviluppare endpoint. Ho una domanda relativa alla posizione del metodo (livello controller o livello servizio). Il controller ha un metodo get() che accetta un po 'di requestParameters . In questo requestParameters contiene id crittografati che sono separati da una pipe (|), quindi dobbiamo inserire un metodo per separare gli id e decodificarli, quindi dove dovrebbe questo metodo getAdditionalFilters() go - nel controller (come privato metodo) o nel servizio?

Metodo fittizio come di seguito:

private Map<String, Object> getAdditionalFilters(String encryptedIdsSeparatedByPipe) {
    Map<String, Object> additionalFilter = new HashMap<String, Object>();
    List<Long> mSkFilterList = convertIdListToSkList(encryptedIdsSeparatedByPipe, "PREFIX");
            additionalFilter.put("ADDITIONAL_CRITERIA",
                    Restrictions.in("id", mSkFilterList));
    return additionalFilter;
}

private List<Long> convertIdListToSkList(String encryptedIdsSeparatedByPipe, String prefix) {
    List<Long> listOfSkToFilter = new ArrayList<Long>();
    @SuppressWarnings("unchecked")
    List<String> filterIdList = Arrays.asList(encryptedIdsSeparatedByPipe.split(Pattern.quote("|")));
    for (String id : filterIdList) {
        //logic to conver encrypted id to sk and then adding it to the result list
        listOfSkToFilter.add(sk);
    }
    return listOfSkToFilter;
}

Per favore fatemi sapere se sono necessarie ulteriori informazioni.

    
posta VijayD 08.06.2018 - 11:32
fonte

0 risposte

Leggi altre domande sui tag