ReaderProfile class

Static description of a reader / driver combination.

A ReaderProfile answers "what reader is this and what can it do" at the contract level: vendor, human-readable model name, vendor-internal model code (when applicable), the routing driverId the native adapter dispatcher will key on, the set of transports the reader can connect over, the entry modes it can accept, the capability flags, and an optional vendor-specific metadata extension.

Hard rule: this branch is contract / capability modeling only. The native side does not link any vendor SDK; the static profiles below are the contract-level description that vendor adapters will eventually have to satisfy.

Constructors

ReaderProfile({required ReaderVendor vendor, required String modelName, String? modelCode, String? driverId, List<ReaderTransport> supportedTransports = const [], List<EntryMode> supportedEntryModes = const [], ReaderCapability capabilities = const ReaderCapability(), Map<String, dynamic>? metadata})
const
ReaderProfile.fromJson(Map<String, dynamic> json)
factory

Properties

capabilities → ReaderCapability
Capability flags.
final
driverId → String?
Routing identifier the native vendor-adapter dispatcher will key on. Format: <vendor>.<model_slug>.<transport>. Example: magtek.dynaflex_ii_go.bluetooth_le. Also surfaced on ReaderDevice.driverId (a.k.a. providerAdapterId in some vendor SDKs).
final
hashCode → int
The hash code for this object.
no setteroverride
metadata → Map<String, dynamic>?
Vendor-specific extension. Not interpreted by the contract. Must not carry sensitive data.
final
modelCode → String?
Vendor-internal model code (e.g. SKU, marketing code, USB PID). Free-form string; the contract does not interpret it.
final
modelName → String
Human-readable model name, suitable for showing on a "choose reader" screen, e.g. "MagTek DynaFlex II Go".
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
supportedEntryModes → List<EntryMode>
Entry modes the reader can accept. Provider-neutral - same enum the rest of the contract uses on EncryptedReaderPayload and TransactionRequest.allowedEntryModes.
final
supportedTransports → List<ReaderTransport>
Physical transports this reader is known to support.
final
vendor → ReaderVendor
Vendor of the reader.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
toString() → String
A string representation of this object.
override

Operators

operator ==(Object other) → bool
The equality operator.
override