AUIPageStorage protocol

API for implementing a custom image storage.

Most common scenarios will work with the default page storage. AUIPageStorage protocol is intended for advanced users and specific scenarios.

PageStorage can be represented as a collection of pages, where each page is assigned with a unique identifier (GUID) and is itself a key-value collection with string keys and arbitrary data values (NSData). Key-value relationship is to be maintained on the client side. An example of a key is an image or a thumbnail.

The default implementation of the PageStorage is file-based. By default it has a root folder located in application's internal storage. Each page is stored in a subfolder of the root folder named with page's identifier. All page-related data, such as captured image and its properties, is stored in files inside the corresponding subfolder.

Methods can be used for creation and managing pages of the image storage.

This logic is also used in the custom image storage implementation with the AUIPageStorage protocol and its methods.

To use the implemented custom storage instead of the default one during the AUIMultiPageImageCaptureScenario object initialization, use the corresponding initWithEngine: method signature.

This protocol and its methods are to be implemented on the client side.

Methods

Name Description
- clearWithError Removes all the pages from the storage.
- createWithError Creates an empty page and adds it to the storage.
- deleteWithId: Removes the page with specified identifier.
- loadDataForPage:key: Returns the data, corresponding to a certain page and associated with the specified key.
- pagesWithError Returns all the pages identifiers in the storage.
- storeData:page:key: Adds, removes or edits data, associated with the key of the page with the specified identifier.

02.03.2022 12:59:15

Usage of Cookies. In order to optimize the website functionality and improve your online experience ABBYY uses cookies. You agree to the usage of cookies when you continue using this site. Further details can be found in our Privacy Notice.