Sto cercando di trovare un buon modello di progettazione, o forse una serie di pattern, per iniettare la gestione degli errori e riprovare la gestione durante il recupero dei dati da un webservice.
Ad esempio, ho:
do {
//get the data here
data = Datagetter.getMyData(request)
if(data.hasError())
{
//handle error
}
} while(shouldRetry());
E sto cercando di capire un modo per iniettare il meccanismo che scopre e affronta qualsiasi errore, così come il meccanismo che gestisce il modo in cui un nuovo tentativo funziona (dovrei aspettare? ? ecc.)
Direi che non sono la prima persona a dover affrontare questo, e c'è un modo per farlo che non ho ancora scoperto.
Ho esaminato catena di responsabilità e strategy come possibili soluzioni, ma non riesco a sembrarle abbastanza complicate per funzionare.