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 onReaderDevice.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
EncryptedReaderPayloadandTransactionRequest.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