mirror of https://github.com/flutter/samples.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
193 lines
6.0 KiB
193 lines
6.0 KiB
// Autogenerated from Pigeon (v1.0.1), do not edit directly.
|
|
// See also: https://pub.dev/packages/pigeon
|
|
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name
|
|
// @dart = 2.12
|
|
import 'dart:async';
|
|
import 'dart:typed_data' show Uint8List, Int32List, Int64List, Float64List;
|
|
|
|
import 'package:flutter/foundation.dart' show WriteBuffer, ReadBuffer;
|
|
import 'package:flutter/services.dart';
|
|
|
|
class Book {
|
|
String? title;
|
|
String? subtitle;
|
|
String? author;
|
|
String? summary;
|
|
String? publishDate;
|
|
int? pageCount;
|
|
Thumbnail? thumbnail;
|
|
|
|
Object encode() {
|
|
final pigeonMap = <Object?, Object?>{};
|
|
pigeonMap['title'] = title;
|
|
pigeonMap['subtitle'] = subtitle;
|
|
pigeonMap['author'] = author;
|
|
pigeonMap['summary'] = summary;
|
|
pigeonMap['publishDate'] = publishDate;
|
|
pigeonMap['pageCount'] = pageCount;
|
|
pigeonMap['thumbnail'] = thumbnail == null ? null : thumbnail!.encode();
|
|
return pigeonMap;
|
|
}
|
|
|
|
static Book decode(Object message) {
|
|
final pigeonMap = message as Map<Object?, Object?>;
|
|
return Book()
|
|
..title = pigeonMap['title'] as String?
|
|
..subtitle = pigeonMap['subtitle'] as String?
|
|
..author = pigeonMap['author'] as String?
|
|
..summary = pigeonMap['summary'] as String?
|
|
..publishDate = pigeonMap['publishDate'] as String?
|
|
..pageCount = pigeonMap['pageCount'] as int?
|
|
..thumbnail = pigeonMap['thumbnail'] != null
|
|
? Thumbnail.decode(pigeonMap['thumbnail']!)
|
|
: null;
|
|
}
|
|
}
|
|
|
|
class Thumbnail {
|
|
String? url;
|
|
|
|
Object encode() {
|
|
final pigeonMap = <Object?, Object?>{};
|
|
pigeonMap['url'] = url;
|
|
return pigeonMap;
|
|
}
|
|
|
|
static Thumbnail decode(Object message) {
|
|
final pigeonMap = message as Map<Object?, Object?>;
|
|
return Thumbnail()..url = pigeonMap['url'] as String?;
|
|
}
|
|
}
|
|
|
|
class _FlutterBookApiCodec extends StandardMessageCodec {
|
|
const _FlutterBookApiCodec();
|
|
@override
|
|
void writeValue(WriteBuffer buffer, Object? value) {
|
|
if (value is Book) {
|
|
buffer.putUint8(128);
|
|
writeValue(buffer, value.encode());
|
|
} else {
|
|
super.writeValue(buffer, value);
|
|
}
|
|
}
|
|
|
|
@override
|
|
Object? readValueOfType(int type, ReadBuffer buffer) {
|
|
switch (type) {
|
|
case 128:
|
|
return Book.decode(readValue(buffer)!);
|
|
|
|
default:
|
|
return super.readValueOfType(type, buffer);
|
|
}
|
|
}
|
|
}
|
|
|
|
abstract class FlutterBookApi {
|
|
static const MessageCodec<Object?> codec = _FlutterBookApiCodec();
|
|
|
|
void displayBookDetails(Book book);
|
|
static void setup(FlutterBookApi? api) {
|
|
{
|
|
const channel = BasicMessageChannel<Object?>(
|
|
'dev.flutter.pigeon.FlutterBookApi.displayBookDetails', codec);
|
|
if (api == null) {
|
|
channel.setMessageHandler(null);
|
|
} else {
|
|
// ignore: avoid_types_on_closure_parameters
|
|
channel.setMessageHandler((Object? message) async {
|
|
assert(message != null,
|
|
'Argument for dev.flutter.pigeon.FlutterBookApi.displayBookDetails was null.');
|
|
final List<Object?> args = (message as List<Object?>?)!;
|
|
final Book? arg_book = args[0] as Book?;
|
|
assert(arg_book != null,
|
|
'Argument for dev.flutter.pigeon.FlutterBookApi.displayBookDetails was null, expected non-null Book.');
|
|
api.displayBookDetails(arg_book!);
|
|
return;
|
|
});
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
class _HostBookApiCodec extends StandardMessageCodec {
|
|
const _HostBookApiCodec();
|
|
@override
|
|
void writeValue(WriteBuffer buffer, Object? value) {
|
|
if (value is Book) {
|
|
buffer.putUint8(128);
|
|
writeValue(buffer, value.encode());
|
|
} else {
|
|
super.writeValue(buffer, value);
|
|
}
|
|
}
|
|
|
|
@override
|
|
Object? readValueOfType(int type, ReadBuffer buffer) {
|
|
switch (type) {
|
|
case 128:
|
|
return Book.decode(readValue(buffer)!);
|
|
|
|
default:
|
|
return super.readValueOfType(type, buffer);
|
|
}
|
|
}
|
|
}
|
|
|
|
class HostBookApi {
|
|
/// Constructor for [HostBookApi]. The [binaryMessenger] named argument is
|
|
/// available for dependency injection. If it is left null, the default
|
|
/// BinaryMessenger will be used which routes to the host platform.
|
|
HostBookApi({BinaryMessenger? binaryMessenger})
|
|
: _binaryMessenger = binaryMessenger;
|
|
|
|
final BinaryMessenger? _binaryMessenger;
|
|
|
|
static const MessageCodec<Object?> codec = _HostBookApiCodec();
|
|
|
|
Future<void> cancel() async {
|
|
final channel = BasicMessageChannel<Object?>(
|
|
'dev.flutter.pigeon.HostBookApi.cancel', codec,
|
|
binaryMessenger: _binaryMessenger);
|
|
final Map<Object?, Object?>? replyMap =
|
|
await channel.send(null) as Map<Object?, Object?>?;
|
|
if (replyMap == null) {
|
|
throw PlatformException(
|
|
code: 'channel-error',
|
|
message: 'Unable to establish connection on channel.',
|
|
details: null,
|
|
);
|
|
} else if (replyMap['error'] != null) {
|
|
final error = (replyMap['error'] as Map<Object?, Object?>?)!;
|
|
throw PlatformException(
|
|
code: (error['code'] as String?)!,
|
|
message: error['message'] as String?,
|
|
details: error['details'],
|
|
);
|
|
}
|
|
}
|
|
|
|
Future<void> finishEditingBook(Book arg_book) async {
|
|
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
|
'dev.flutter.pigeon.HostBookApi.finishEditingBook', codec,
|
|
binaryMessenger: _binaryMessenger);
|
|
final Map<Object?, Object?>? replyMap =
|
|
await channel.send(<Object>[arg_book]) as Map<Object?, Object?>?;
|
|
if (replyMap == null) {
|
|
throw PlatformException(
|
|
code: 'channel-error',
|
|
message: 'Unable to establish connection on channel.',
|
|
details: null,
|
|
);
|
|
} else if (replyMap['error'] != null) {
|
|
final Map<Object?, Object?> error =
|
|
(replyMap['error'] as Map<Object?, Object?>?)!;
|
|
throw PlatformException(
|
|
code: (error['code'] as String?)!,
|
|
message: error['message'] as String?,
|
|
details: error['details'],
|
|
);
|
|
}
|
|
}
|
|
}
|