lundi 9 mars 2020

Refactoring if..else using design pattern or Optional java 8

I ve this method:

  public InfoNucleoFamiliare buildInfo(ModelNucleoFamiliareDTO nucleoFamiliare,long idAccessoServizio) {       
    InfoNucleoFamiliare infoNucleoFamiliare = new InfoNucleoFamiliare();        
    if (!isResidente(nucleoFamiliare.getDatoPuntuale())) {
        return new InfoNucleoFamiliare(true, null, StringUtils.EMPTY, SuseApiConstants.RESIDENZA_NON_CONFERMATA,false);
    }
    boolean isIdoneo = accessoServiziService.isAccessibileToServizio(idAccessoServizio,);
    if (!isIdoneo) {
        return new InfoNucleoFamiliare(true, null, StringUtils.EMPTY,SuseApiConstants.ETA_NON_IDONEA, false);
    }
    Long idIScrizione = tErogIscrizioneService.findIscrizioneConfermataByCodiceFiscale(nucleoFamiliare.getDatoPuntuale().getCodiceFiscale());
    if (idIScrizione != null) {
        return new InfoNucleoFamiliare(true, idIScrizione, SuseApiConstants.CONFERMATA, SuseApiConstants.ISCRIZIONE_CONFERMATA,false);
    } 
    idIScrizione = tIscrizioneService.findIscrizioneByIdAccessoServizioAndCodiceFiscaleIscritto(idAccessoServizio);
    if (idIScrizione != null) {
        return  new InfoNucleoFamiliare(true, idIScrizione, SuseApiConstants.PRENOTATA, SuseApiConstants.ISCRIZIONE_PRENOTATA,false);       
    }
    return infoNucleoFamiliare;
}

How i can refator this code without use if , using design pattern or something other?

Aucun commentaire:

Enregistrer un commentaire