Sto scrivendo la mia prima classe Objective-C. È responsabile dell'interazione con un servizio di autenticazione SSO HTTP.
Il processo richiede più transazioni HTTP per il completamento. La classe funge da NSURLConnectionDelegate
per il proprio oggetto NSURLConnection
. L'oggetto NSURLConnectionDelegate
funziona in modo asincrono.
Devo disabilitare un tentativo di autenticazione quando un altro è in corso. Ho un'idea di come farlo da solo, ma voglio conoscere i modelli di progettazione per questa situazione.
La mia idea attuale è controllare una variabile di istanza per vedere se è in corso l'autenticazione e, in tal caso, semplicemente non avviarne un'altra. Tuttavia, non sono sicuro di come comunicare questo alla classe chiamante. Il mio metodo al momento ritorna vuoto. Dovrei usare un NSError e restituirlo se è in corso un altro tentativo di autenticazione?