Barcode Capture Deserializer

Defined in framework ScanditBarcodeCapture

Warning

The deserialization API is not yet stable and will still change over the coming releases.

Note

This deserializer is not thread-safe, subsequent calls for the same settings, mode or overlay have to be called on the same thread.

BarcodeCaptureDeserializer
open class BarcodeCaptureDeserializer : NSObject, DataCaptureModeDeserializer

Added in version 6.1.0

A deserializer to construct barcode capture from JSON. For most use cases it is enough to use BarcodeCapture.init() which internally uses this deserializer. Using the deserializer gives the advantage of being able to listen to the deserialization events as they happen and potentially influence them. Additionally warnings can be read from the deserializer that would otherwise not be available.

init
init()

Added in version 6.1.0

Creates a new deserializer object.

delegate
open weak var delegate: BarcodeCaptureDeserializerDelegate? { get, set }

Added in version 6.1.0

The object informed about deserialization events.

warnings
open var warnings: Array<String> { get }

Added in version 6.1.0

The warnings produced during deserialization, for example which properties were not used during deserialization.

mode
open func mode(fromJSONString JSONString: String, with context: DataCaptureContext) throws -> BarcodeCapture

Added in version 6.1.0

Deserializes barcode capture from JSON.

An error is set if the provided JSON does not contain required properties or contains properties of the wrong type.

updateMode
open func updateMode(_ barcodeCapture: BarcodeCapture, fromJSONString JSONString: String) throws -> BarcodeCapture

Added in version 6.1.0

Takes an existing barcode capture and updates it by deserializing new or changed properties from JSON.

An error is set if the provided JSON does not contain required properties or contains properties of the wrong type.

settings
open func settings(fromJSONString JSONString: String) throws -> BarcodeCaptureSettings

Added in version 6.1.0

Deserializes barcode capture settings from JSON.

An error is set if the provided JSON does not contain required properties or contains properties of the wrong type.

update
open func update(_ settings: BarcodeCaptureSettings, fromJSONString JSONString: String) throws -> BarcodeCaptureSettings

Added in version 6.1.0

Takes existing barcode capture settings and updates them by deserializing new or changed properties from JSON.

An error is set if the provided JSON does not contain required properties or contains properties of the wrong type.

overlay
open func overlay(fromJSONString JSONString: String, withMode mode: BarcodeCapture) throws -> BarcodeCaptureOverlay

Added in version 6.1.0

Deserializes a barcode capture overlay from JSON.

An error is set if the provided JSON does not contain required properties or contains properties of the wrong type.

update
open func update(_ overlay: BarcodeCaptureOverlay, fromJSONString JSONString: String) throws -> BarcodeCaptureOverlay

Added in version 6.1.0

Takes an existing barcode capture overlay and updates it by deserializing new or changed properties from JSON.

An error is set if the provided JSON does not contain required properties or contains properties of the wrong type.