Skip to content

amirhusseinSSoori/Movie_Mvi_Compose

Repository files navigation

banner

Introduction

In this repository I have used network bound resources with jetpack compose and Mvi architecture

Network bound resources

If the device is offline, any cached values should immediately be dispatched. Otherwise, any cached values should be dispatched as part of a temporary loading state. The algorithm then determines whether the cached values are sufficiently recent, or whether the data should be fetched from the network. If sufficiently recent, the cached values are dispatched. Otherwise, the algorithm determines whether a login is necessary (for example, if an authentication token is missing or expired), and if so, attempts to reauthenticate.

If the login fails because the credentials are invalid, the user is prompted to re-enter the credentials, and the algorithm stops. Once the user has entered the credentials, the algorithm should be automatically restarted, without the user having to refresh. The data is now fetched over the network.

If the call was unsuccessful, the reason is evaluated. If the call failed because it was unauthorized, it is necessary to reauthenticate and redo the call. Otherwise, the error should be dispatched. If the call was successful, the data is saved, automatically triggering a refresh.

Libraries used

About

how to handle flow with compose?

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages