Passa al contenuto principale

4.1.10.2. Rollback (Annullamento)

4.1.10.2. Rollback (Annullamento)

In determinate situazioni, può essere desiderabile "annullare" una modifica apportata a setLocalDescription o setRemoteDescription. Consideriamo un caso in cui una chiamata è in corso e un lato desidera modificare alcuni dei parametri della sessione; quel lato genera un'offerta aggiornata e quindi chiama setLocalDescription. Tuttavia, il lato remoto, prima o dopo setRemoteDescription, decide di non voler accettare i nuovi parametri e invia un messaggio di rifiuto all'offerente. Ora, l'offerente, e possibilmente anche il risponditore, deve tornare a uno stato "stable" e alla descrizione locale/remota precedente. Per supportare questo, introduciamo il concetto di "rollback", che scarta qualsiasi modifica proposta alla sessione, riportando la macchina a stati allo stato "stable". Un rollback viene eseguito fornendo una descrizione della sessione di tipo "rollback" con contenuto vuoto a setLocalDescription o setRemoteDescription.