File storage
May 26, 2020 · View on GitHub
Простое обьектное хранилище на основе файлов. Хранение данных происходит в формате key(String) - value(Object), где key используется как имя файла, а в качестве содержимого выступает value, сериализованный в массив байт.
Может использоваться для реализации кэша.
Использование
Наследованием от BaseFileStorage или более специфичных его реализаций:
Наследник определяет папку, в которой будут храниться файлы.
Важно: для имени папки не следует использовать имя класса из-за обфускации.
Внутренние сущности:
- ObjectConverter - сериализатор/десериализатор, есть готовые реализации для Serializable, Json
- NamingProcessor - преобразует ключ в имя файла, необходим из-за того, что ключ может быть любого размера а размер имени файла ограничен системой
- FileProcessor - инкапслулирует действия с файлами внутри некоторой директории
- Encryptor - позволяет шифровать сохраняемые данные
Подключение
Gradle:
implementation "ru.surfstudio.android:filestorage:X.X.X"