mirror of
https://github.com/flutter/packages.git
synced 2025-06-29 14:18:54 +08:00
[pigeon] Add Flutter API integration tests (#3066)
* Add the new wrapper APIs * Regenerate files * Add the new integration tests * macOS Swift implementation * iOS Swift implementation * Android Kotlin implementation; some tests disabled * Android Java implementation * iOS Obj-C implementation * Windows C++ implementation
This commit is contained in:
@ -187,16 +187,76 @@ abstract class HostIntegrationCoreApi {
|
||||
@async
|
||||
void callFlutterNoop();
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoAllTypes:')
|
||||
AllTypes callFlutterEchoAllTypes(AllTypes everything);
|
||||
|
||||
// TODO(stuartmorgan): Add callFlutterEchoAllNullableTypes and the associated
|
||||
// test once either https://github.com/flutter/flutter/issues/116117 is fixed,
|
||||
// or the problematic type is moved out of AllNullableTypes and into its own
|
||||
// test, since the type mismatch breaks the second `encode` round.
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterSendMultipleNullableTypesABool:anInt:aString:')
|
||||
AllNullableTypes callFlutterSendMultipleNullableTypes(
|
||||
bool? aNullableBool, int? aNullableInt, String? aNullableString);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoBool:')
|
||||
bool callFlutterEchoBool(bool aBool);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoInt:')
|
||||
int callFlutterEchoInt(int anInt);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoDouble:')
|
||||
double callFlutterEchoDouble(double aDouble);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoString:')
|
||||
String callFlutterEchoString(String aString);
|
||||
|
||||
// TODO(stuartmorgan): Add callFlutterEchoAllTypes and the associated test
|
||||
// once either https://github.com/flutter/flutter/issues/116117 is fixed, or
|
||||
// the problematic type is moved out of AllTypes and into its own test, since
|
||||
// the type mismatch breaks the second `encode` round.
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoUint8List:')
|
||||
Uint8List callFlutterEchoUint8List(Uint8List aList);
|
||||
|
||||
// TODO(stuartmorgan): Fill in the rest of the callFlutterEcho* tests.
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoList:')
|
||||
List<Object?> callFlutterEchoList(List<Object?> aList);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoMap:')
|
||||
Map<String?, Object?> callFlutterEchoMap(Map<String?, Object?> aMap);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoNullableBool:')
|
||||
bool? callFlutterEchoNullableBool(bool? aBool);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoNullableInt:')
|
||||
int? callFlutterEchoNullableInt(int? anInt);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoNullableDouble:')
|
||||
double? callFlutterEchoNullableDouble(double? aDouble);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoNullableString:')
|
||||
String? callFlutterEchoNullableString(String? aString);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoNullableUint8List:')
|
||||
Uint8List? callFlutterEchoNullableUint8List(Uint8List? aList);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoNullableList:')
|
||||
List<Object?>? callFlutterEchoNullableList(List<Object?>? aList);
|
||||
|
||||
@async
|
||||
@ObjCSelector('callFlutterEchoNullableMap:')
|
||||
Map<String?, Object?>? callFlutterEchoNullableMap(
|
||||
Map<String?, Object?>? aMap);
|
||||
}
|
||||
|
||||
/// The core interface that the Dart platform_test code implements for host
|
||||
@ -280,7 +340,7 @@ abstract class FlutterIntegrationCoreApi {
|
||||
|
||||
/// Returns the passed map, to test serialization and deserialization.
|
||||
@ObjCSelector('echoNullableMap:')
|
||||
Map<String?, Object?> echoNullableMap(Map<String?, Object?> aMap);
|
||||
Map<String?, Object?>? echoNullableMap(Map<String?, Object?>? aMap);
|
||||
}
|
||||
|
||||
/// An API that can be implemented for minimal, compile-only tests.
|
||||
|
@ -13,6 +13,8 @@ import com.example.alternate_language_test_plugin.CoreTests.FlutterIntegrationCo
|
||||
import com.example.alternate_language_test_plugin.CoreTests.HostIntegrationCoreApi;
|
||||
import com.example.alternate_language_test_plugin.CoreTests.Result;
|
||||
import io.flutter.embedding.engine.plugins.FlutterPlugin;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/** This plugin handles the native side of the integration tests in example/integration_test/. */
|
||||
public class AlternateLanguageTestPlugin implements FlutterPlugin, HostIntegrationCoreApi {
|
||||
@ -154,6 +156,67 @@ public class AlternateLanguageTestPlugin implements FlutterPlugin, HostIntegrati
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoAllTypes(@NonNull AllTypes everything, Result<AllTypes> result) {
|
||||
flutterApi.echoAllTypes(
|
||||
everything,
|
||||
new FlutterIntegrationCoreApi.Reply<AllTypes>() {
|
||||
public void reply(AllTypes value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterSendMultipleNullableTypes(
|
||||
@Nullable Boolean aNullableBool,
|
||||
@Nullable Long aNullableInt,
|
||||
@Nullable String aNullableString,
|
||||
Result<AllNullableTypes> result) {
|
||||
flutterApi.sendMultipleNullableTypes(
|
||||
aNullableBool,
|
||||
aNullableInt,
|
||||
aNullableString,
|
||||
new FlutterIntegrationCoreApi.Reply<AllNullableTypes>() {
|
||||
public void reply(AllNullableTypes value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoBool(@NonNull Boolean aBool, Result<Boolean> result) {
|
||||
flutterApi.echoBool(
|
||||
aBool,
|
||||
new FlutterIntegrationCoreApi.Reply<Boolean>() {
|
||||
public void reply(Boolean value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoInt(@NonNull Long anInt, Result<Long> result) {
|
||||
flutterApi.echoInt(
|
||||
anInt,
|
||||
new FlutterIntegrationCoreApi.Reply<Long>() {
|
||||
public void reply(Long value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoDouble(@NonNull Double aDouble, Result<Double> result) {
|
||||
flutterApi.echoDouble(
|
||||
aDouble,
|
||||
new FlutterIntegrationCoreApi.Reply<Double>() {
|
||||
public void reply(Double value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoString(@NonNull String aString, Result<String> result) {
|
||||
flutterApi.echoString(
|
||||
@ -164,4 +227,117 @@ public class AlternateLanguageTestPlugin implements FlutterPlugin, HostIntegrati
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoUint8List(@NonNull byte[] aList, Result<byte[]> result) {
|
||||
flutterApi.echoUint8List(
|
||||
aList,
|
||||
new FlutterIntegrationCoreApi.Reply<byte[]>() {
|
||||
public void reply(byte[] value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoList(@NonNull List<Object> aList, Result<List<Object>> result) {
|
||||
flutterApi.echoList(
|
||||
aList,
|
||||
new FlutterIntegrationCoreApi.Reply<List<Object>>() {
|
||||
public void reply(List<Object> value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoMap(
|
||||
@NonNull Map<String, Object> aMap, Result<Map<String, Object>> result) {
|
||||
flutterApi.echoMap(
|
||||
aMap,
|
||||
new FlutterIntegrationCoreApi.Reply<Map<String, Object>>() {
|
||||
public void reply(Map<String, Object> value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoNullableBool(@Nullable Boolean aBool, Result<Boolean> result) {
|
||||
flutterApi.echoNullableBool(
|
||||
aBool,
|
||||
new FlutterIntegrationCoreApi.Reply<Boolean>() {
|
||||
public void reply(Boolean value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoNullableInt(@Nullable Long anInt, Result<Long> result) {
|
||||
flutterApi.echoNullableInt(
|
||||
anInt,
|
||||
new FlutterIntegrationCoreApi.Reply<Long>() {
|
||||
public void reply(Long value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoNullableDouble(@Nullable Double aDouble, Result<Double> result) {
|
||||
flutterApi.echoNullableDouble(
|
||||
aDouble,
|
||||
new FlutterIntegrationCoreApi.Reply<Double>() {
|
||||
public void reply(Double value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoNullableString(@Nullable String aString, Result<String> result) {
|
||||
flutterApi.echoNullableString(
|
||||
aString,
|
||||
new FlutterIntegrationCoreApi.Reply<String>() {
|
||||
public void reply(String value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoNullableUint8List(@Nullable byte[] aList, Result<byte[]> result) {
|
||||
flutterApi.echoNullableUint8List(
|
||||
aList,
|
||||
new FlutterIntegrationCoreApi.Reply<byte[]>() {
|
||||
public void reply(byte[] value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoNullableList(
|
||||
@Nullable List<Object> aList, Result<List<Object>> result) {
|
||||
flutterApi.echoNullableList(
|
||||
aList,
|
||||
new FlutterIntegrationCoreApi.Reply<List<Object>>() {
|
||||
public void reply(List<Object> value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void callFlutterEchoNullableMap(
|
||||
@Nullable Map<String, Object> aMap, Result<Map<String, Object>> result) {
|
||||
flutterApi.echoNullableMap(
|
||||
aMap,
|
||||
new FlutterIntegrationCoreApi.Reply<Map<String, Object>>() {
|
||||
public void reply(Map<String, Object> value) {
|
||||
result.success(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -831,8 +831,43 @@ public class CoreTests {
|
||||
|
||||
void callFlutterNoop(Result<Void> result);
|
||||
|
||||
void callFlutterEchoAllTypes(@NonNull AllTypes everything, Result<AllTypes> result);
|
||||
|
||||
void callFlutterSendMultipleNullableTypes(
|
||||
@Nullable Boolean aNullableBool,
|
||||
@Nullable Long aNullableInt,
|
||||
@Nullable String aNullableString,
|
||||
Result<AllNullableTypes> result);
|
||||
|
||||
void callFlutterEchoBool(@NonNull Boolean aBool, Result<Boolean> result);
|
||||
|
||||
void callFlutterEchoInt(@NonNull Long anInt, Result<Long> result);
|
||||
|
||||
void callFlutterEchoDouble(@NonNull Double aDouble, Result<Double> result);
|
||||
|
||||
void callFlutterEchoString(@NonNull String aString, Result<String> result);
|
||||
|
||||
void callFlutterEchoUint8List(@NonNull byte[] aList, Result<byte[]> result);
|
||||
|
||||
void callFlutterEchoList(@NonNull List<Object> aList, Result<List<Object>> result);
|
||||
|
||||
void callFlutterEchoMap(@NonNull Map<String, Object> aMap, Result<Map<String, Object>> result);
|
||||
|
||||
void callFlutterEchoNullableBool(@Nullable Boolean aBool, Result<Boolean> result);
|
||||
|
||||
void callFlutterEchoNullableInt(@Nullable Long anInt, Result<Long> result);
|
||||
|
||||
void callFlutterEchoNullableDouble(@Nullable Double aDouble, Result<Double> result);
|
||||
|
||||
void callFlutterEchoNullableString(@Nullable String aString, Result<String> result);
|
||||
|
||||
void callFlutterEchoNullableUint8List(@Nullable byte[] aList, Result<byte[]> result);
|
||||
|
||||
void callFlutterEchoNullableList(@Nullable List<Object> aList, Result<List<Object>> result);
|
||||
|
||||
void callFlutterEchoNullableMap(
|
||||
@Nullable Map<String, Object> aMap, Result<Map<String, Object>> result);
|
||||
|
||||
/** The codec used by HostIntegrationCoreApi. */
|
||||
static MessageCodec<Object> getCodec() {
|
||||
return HostIntegrationCoreApiCodec.INSTANCE;
|
||||
@ -1463,6 +1498,210 @@ public class CoreTests {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoAllTypes",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
AllTypes everythingArg = (AllTypes) args.get(0);
|
||||
if (everythingArg == null) {
|
||||
throw new NullPointerException("everythingArg unexpectedly null.");
|
||||
}
|
||||
Result<AllTypes> resultCallback =
|
||||
new Result<AllTypes>() {
|
||||
public void success(AllTypes result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoAllTypes(everythingArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterSendMultipleNullableTypes",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
Boolean aNullableBoolArg = (Boolean) args.get(0);
|
||||
Number aNullableIntArg = (Number) args.get(1);
|
||||
String aNullableStringArg = (String) args.get(2);
|
||||
Result<AllNullableTypes> resultCallback =
|
||||
new Result<AllNullableTypes>() {
|
||||
public void success(AllNullableTypes result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterSendMultipleNullableTypes(
|
||||
aNullableBoolArg,
|
||||
(aNullableIntArg == null) ? null : aNullableIntArg.longValue(),
|
||||
aNullableStringArg,
|
||||
resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoBool",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
Boolean aBoolArg = (Boolean) args.get(0);
|
||||
if (aBoolArg == null) {
|
||||
throw new NullPointerException("aBoolArg unexpectedly null.");
|
||||
}
|
||||
Result<Boolean> resultCallback =
|
||||
new Result<Boolean>() {
|
||||
public void success(Boolean result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoBool(aBoolArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoInt",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
Number anIntArg = (Number) args.get(0);
|
||||
if (anIntArg == null) {
|
||||
throw new NullPointerException("anIntArg unexpectedly null.");
|
||||
}
|
||||
Result<Long> resultCallback =
|
||||
new Result<Long>() {
|
||||
public void success(Long result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoInt(
|
||||
(anIntArg == null) ? null : anIntArg.longValue(), resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoDouble",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
Double aDoubleArg = (Double) args.get(0);
|
||||
if (aDoubleArg == null) {
|
||||
throw new NullPointerException("aDoubleArg unexpectedly null.");
|
||||
}
|
||||
Result<Double> resultCallback =
|
||||
new Result<Double>() {
|
||||
public void success(Double result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoDouble(aDoubleArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
@ -1503,6 +1742,386 @@ public class CoreTests {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoUint8List",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
byte[] aListArg = (byte[]) args.get(0);
|
||||
if (aListArg == null) {
|
||||
throw new NullPointerException("aListArg unexpectedly null.");
|
||||
}
|
||||
Result<byte[]> resultCallback =
|
||||
new Result<byte[]>() {
|
||||
public void success(byte[] result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoUint8List(aListArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoList",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
List<Object> aListArg = (List<Object>) args.get(0);
|
||||
if (aListArg == null) {
|
||||
throw new NullPointerException("aListArg unexpectedly null.");
|
||||
}
|
||||
Result<List<Object>> resultCallback =
|
||||
new Result<List<Object>>() {
|
||||
public void success(List<Object> result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoList(aListArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoMap",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
Map<String, Object> aMapArg = (Map<String, Object>) args.get(0);
|
||||
if (aMapArg == null) {
|
||||
throw new NullPointerException("aMapArg unexpectedly null.");
|
||||
}
|
||||
Result<Map<String, Object>> resultCallback =
|
||||
new Result<Map<String, Object>>() {
|
||||
public void success(Map<String, Object> result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoMap(aMapArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableBool",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
Boolean aBoolArg = (Boolean) args.get(0);
|
||||
Result<Boolean> resultCallback =
|
||||
new Result<Boolean>() {
|
||||
public void success(Boolean result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoNullableBool(aBoolArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableInt",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
Number anIntArg = (Number) args.get(0);
|
||||
Result<Long> resultCallback =
|
||||
new Result<Long>() {
|
||||
public void success(Long result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoNullableInt(
|
||||
(anIntArg == null) ? null : anIntArg.longValue(), resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableDouble",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
Double aDoubleArg = (Double) args.get(0);
|
||||
Result<Double> resultCallback =
|
||||
new Result<Double>() {
|
||||
public void success(Double result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoNullableDouble(aDoubleArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableString",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
String aStringArg = (String) args.get(0);
|
||||
Result<String> resultCallback =
|
||||
new Result<String>() {
|
||||
public void success(String result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoNullableString(aStringArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableUint8List",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
byte[] aListArg = (byte[]) args.get(0);
|
||||
Result<byte[]> resultCallback =
|
||||
new Result<byte[]>() {
|
||||
public void success(byte[] result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoNullableUint8List(aListArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableList",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
List<Object> aListArg = (List<Object>) args.get(0);
|
||||
Result<List<Object>> resultCallback =
|
||||
new Result<List<Object>>() {
|
||||
public void success(List<Object> result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoNullableList(aListArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
{
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableMap",
|
||||
getCodec());
|
||||
if (api != null) {
|
||||
channel.setMessageHandler(
|
||||
(message, reply) -> {
|
||||
ArrayList wrapped = new ArrayList<>();
|
||||
try {
|
||||
ArrayList<Object> args = (ArrayList<Object>) message;
|
||||
assert args != null;
|
||||
Map<String, Object> aMapArg = (Map<String, Object>) args.get(0);
|
||||
Result<Map<String, Object>> resultCallback =
|
||||
new Result<Map<String, Object>>() {
|
||||
public void success(Map<String, Object> result) {
|
||||
wrapped.add(0, result);
|
||||
reply.reply(wrapped);
|
||||
}
|
||||
|
||||
public void error(Throwable error) {
|
||||
ArrayList<Object> wrappedError = wrapError(error);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
};
|
||||
|
||||
api.callFlutterEchoNullableMap(aMapArg, resultCallback);
|
||||
} catch (Error | RuntimeException exception) {
|
||||
ArrayList<Object> wrappedError = wrapError(exception);
|
||||
reply.reply(wrappedError);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel.setMessageHandler(null);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1823,7 +2442,7 @@ public class CoreTests {
|
||||
}
|
||||
/** Returns the passed map, to test serialization and deserialization. */
|
||||
public void echoNullableMap(
|
||||
@NonNull Map<String, Object> aMapArg, Reply<Map<String, Object>> callback) {
|
||||
@Nullable Map<String, Object> aMapArg, Reply<Map<String, Object>> callback) {
|
||||
BasicMessageChannel<Object> channel =
|
||||
new BasicMessageChannel<>(
|
||||
binaryMessenger,
|
||||
|
@ -138,6 +138,51 @@
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoAllTypes:(AllTypes *)everything
|
||||
completion:(void (^)(AllTypes *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoAllTypes:everything
|
||||
completion:^(AllTypes *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterSendMultipleNullableTypesABool:(nullable NSNumber *)aNullableBool
|
||||
anInt:(nullable NSNumber *)aNullableInt
|
||||
aString:(nullable NSString *)aNullableString
|
||||
completion:(void (^)(AllNullableTypes *_Nullable,
|
||||
FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI sendMultipleNullableTypesABool:aNullableBool
|
||||
anInt:aNullableInt
|
||||
aString:aNullableString
|
||||
completion:^(AllNullableTypes *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoBool:(NSNumber *)aBool
|
||||
completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoBool:aBool
|
||||
completion:^(NSNumber *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoInt:(NSNumber *)anInt
|
||||
completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoInt:anInt
|
||||
completion:^(NSNumber *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoDouble:(NSNumber *)aDouble
|
||||
completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoDouble:aDouble
|
||||
completion:^(NSNumber *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoString:(NSString *)aString
|
||||
completion:(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoString:aString
|
||||
@ -146,4 +191,93 @@
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoUint8List:(FlutterStandardTypedData *)aList
|
||||
completion:(void (^)(FlutterStandardTypedData *_Nullable,
|
||||
FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoUint8List:aList
|
||||
completion:^(FlutterStandardTypedData *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoList:(NSArray<id> *)aList
|
||||
completion:(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoList:aList
|
||||
completion:^(NSArray<id> *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoMap:(NSDictionary<NSString *, id> *)aMap
|
||||
completion:(void (^)(NSDictionary<NSString *, id> *_Nullable,
|
||||
FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoMap:aMap
|
||||
completion:^(NSDictionary<NSString *, id> *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoNullableBool:(nullable NSNumber *)aBool
|
||||
completion:
|
||||
(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoNullableBool:aBool
|
||||
completion:^(NSNumber *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoNullableInt:(nullable NSNumber *)anInt
|
||||
completion:
|
||||
(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoNullableInt:anInt
|
||||
completion:^(NSNumber *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoNullableDouble:(nullable NSNumber *)aDouble
|
||||
completion:
|
||||
(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoNullableDouble:aDouble
|
||||
completion:^(NSNumber *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoNullableString:(nullable NSString *)aString
|
||||
completion:
|
||||
(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoNullableString:aString
|
||||
completion:^(NSString *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoNullableUint8List:(nullable FlutterStandardTypedData *)aList
|
||||
completion:(void (^)(FlutterStandardTypedData *_Nullable,
|
||||
FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoNullableUint8List:aList
|
||||
completion:^(FlutterStandardTypedData *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoNullableList:(nullable NSArray<id> *)aList
|
||||
completion:
|
||||
(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoNullableList:aList
|
||||
completion:^(NSArray<id> *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)callFlutterEchoNullableMap:(nullable NSDictionary<NSString *, id> *)aMap
|
||||
completion:(void (^)(NSDictionary<NSString *, id> *_Nullable,
|
||||
FlutterError *_Nullable))completion {
|
||||
[self.flutterAPI echoNullableMap:aMap
|
||||
completion:^(NSDictionary<NSString *, id> *value, NSError *error) {
|
||||
completion(value, error);
|
||||
}];
|
||||
}
|
||||
|
||||
@end
|
||||
|
@ -182,8 +182,50 @@ NSObject<FlutterMessageCodec> *HostIntegrationCoreApiGetCodec(void);
|
||||
- (void)echoAsyncString:(NSString *)aString
|
||||
completion:(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterNoopWithCompletion:(void (^)(FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoAllTypes:(AllTypes *)everything
|
||||
completion:(void (^)(AllTypes *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterSendMultipleNullableTypesABool:(nullable NSNumber *)aNullableBool
|
||||
anInt:(nullable NSNumber *)aNullableInt
|
||||
aString:(nullable NSString *)aNullableString
|
||||
completion:(void (^)(AllNullableTypes *_Nullable,
|
||||
FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoBool:(NSNumber *)aBool
|
||||
completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoInt:(NSNumber *)anInt
|
||||
completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoDouble:(NSNumber *)aDouble
|
||||
completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoString:(NSString *)aString
|
||||
completion:(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoUint8List:(FlutterStandardTypedData *)aList
|
||||
completion:(void (^)(FlutterStandardTypedData *_Nullable,
|
||||
FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoList:(NSArray<id> *)aList
|
||||
completion:(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoMap:(NSDictionary<NSString *, id> *)aMap
|
||||
completion:(void (^)(NSDictionary<NSString *, id> *_Nullable,
|
||||
FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoNullableBool:(nullable NSNumber *)aBool
|
||||
completion:
|
||||
(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoNullableInt:(nullable NSNumber *)anInt
|
||||
completion:
|
||||
(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoNullableDouble:(nullable NSNumber *)aDouble
|
||||
completion:
|
||||
(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoNullableString:(nullable NSString *)aString
|
||||
completion:
|
||||
(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoNullableUint8List:(nullable FlutterStandardTypedData *)aList
|
||||
completion:(void (^)(FlutterStandardTypedData *_Nullable,
|
||||
FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoNullableList:(nullable NSArray<id> *)aList
|
||||
completion:
|
||||
(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion;
|
||||
- (void)callFlutterEchoNullableMap:(nullable NSDictionary<NSString *, id> *)aMap
|
||||
completion:(void (^)(NSDictionary<NSString *, id> *_Nullable,
|
||||
FlutterError *_Nullable))completion;
|
||||
@end
|
||||
|
||||
extern void HostIntegrationCoreApiSetup(id<FlutterBinaryMessenger> binaryMessenger,
|
||||
@ -254,7 +296,7 @@ NSObject<FlutterMessageCodec> *FlutterIntegrationCoreApiGetCodec(void);
|
||||
- (void)echoNullableList:(nullable NSArray<id> *)aList
|
||||
completion:(void (^)(NSArray<id> *_Nullable, NSError *_Nullable))completion;
|
||||
/// Returns the passed map, to test serialization and deserialization.
|
||||
- (void)echoNullableMap:(NSDictionary<NSString *, id> *)aMap
|
||||
- (void)echoNullableMap:(nullable NSDictionary<NSString *, id> *)aMap
|
||||
completion:
|
||||
(void (^)(NSDictionary<NSString *, id> *_Nullable, NSError *_Nullable))completion;
|
||||
@end
|
||||
|
@ -759,6 +759,123 @@ void HostIntegrationCoreApiSetup(id<FlutterBinaryMessenger> binaryMessenger,
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoAllTypes"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoAllTypes:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoAllTypes:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
AllTypes *arg_everything = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoAllTypes:arg_everything
|
||||
completion:^(AllTypes *_Nullable output, FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:
|
||||
@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterSendMultipleNullableTypes"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector
|
||||
(callFlutterSendMultipleNullableTypesABool:anInt:aString:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterSendMultipleNullableTypesABool:anInt:aString:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSNumber *arg_aNullableBool = GetNullableObjectAtIndex(args, 0);
|
||||
NSNumber *arg_aNullableInt = GetNullableObjectAtIndex(args, 1);
|
||||
NSString *arg_aNullableString = GetNullableObjectAtIndex(args, 2);
|
||||
[api callFlutterSendMultipleNullableTypesABool:arg_aNullableBool
|
||||
anInt:arg_aNullableInt
|
||||
aString:arg_aNullableString
|
||||
completion:^(AllNullableTypes *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoBool"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoBool:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoBool:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSNumber *arg_aBool = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoBool:arg_aBool
|
||||
completion:^(NSNumber *_Nullable output, FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoInt"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoInt:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoInt:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSNumber *arg_anInt = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoInt:arg_anInt
|
||||
completion:^(NSNumber *_Nullable output, FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoDouble"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoDouble:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoDouble:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSNumber *arg_aDouble = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoDouble:arg_aDouble
|
||||
completion:^(NSNumber *_Nullable output, FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoString"
|
||||
@ -781,6 +898,236 @@ void HostIntegrationCoreApiSetup(id<FlutterBinaryMessenger> binaryMessenger,
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoUint8List"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoUint8List:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoUint8List:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
FlutterStandardTypedData *arg_aList = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoUint8List:arg_aList
|
||||
completion:^(FlutterStandardTypedData *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoList"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoList:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoList:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSArray<id> *arg_aList = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoList:arg_aList
|
||||
completion:^(NSArray<id> *_Nullable output, FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoMap"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoMap:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoMap:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSDictionary<NSString *, id> *arg_aMap = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoMap:arg_aMap
|
||||
completion:^(NSDictionary<NSString *, id> *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableBool"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoNullableBool:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoNullableBool:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSNumber *arg_aBool = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoNullableBool:arg_aBool
|
||||
completion:^(NSNumber *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableInt"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoNullableInt:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoNullableInt:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSNumber *arg_anInt = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoNullableInt:arg_anInt
|
||||
completion:^(NSNumber *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableDouble"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoNullableDouble:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoNullableDouble:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSNumber *arg_aDouble = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoNullableDouble:arg_aDouble
|
||||
completion:^(NSNumber *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableString"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoNullableString:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoNullableString:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSString *arg_aString = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoNullableString:arg_aString
|
||||
completion:^(NSString *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:
|
||||
@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableUint8List"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoNullableUint8List:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoNullableUint8List:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
FlutterStandardTypedData *arg_aList = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoNullableUint8List:arg_aList
|
||||
completion:^(FlutterStandardTypedData *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableList"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoNullableList:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoNullableList:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSArray<id> *arg_aList = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoNullableList:arg_aList
|
||||
completion:^(NSArray<id> *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
{
|
||||
FlutterBasicMessageChannel *channel = [[FlutterBasicMessageChannel alloc]
|
||||
initWithName:@"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableMap"
|
||||
binaryMessenger:binaryMessenger
|
||||
codec:HostIntegrationCoreApiGetCodec()];
|
||||
if (api) {
|
||||
NSCAssert([api respondsToSelector:@selector(callFlutterEchoNullableMap:completion:)],
|
||||
@"HostIntegrationCoreApi api (%@) doesn't respond to "
|
||||
@"@selector(callFlutterEchoNullableMap:completion:)",
|
||||
api);
|
||||
[channel setMessageHandler:^(id _Nullable message, FlutterReply callback) {
|
||||
NSArray *args = message;
|
||||
NSDictionary<NSString *, id> *arg_aMap = GetNullableObjectAtIndex(args, 0);
|
||||
[api callFlutterEchoNullableMap:arg_aMap
|
||||
completion:^(NSDictionary<NSString *, id> *_Nullable output,
|
||||
FlutterError *_Nullable error) {
|
||||
callback(wrapResult(output, error));
|
||||
}];
|
||||
}];
|
||||
} else {
|
||||
[channel setMessageHandler:nil];
|
||||
}
|
||||
}
|
||||
}
|
||||
@interface FlutterIntegrationCoreApiCodecReader : FlutterStandardReader
|
||||
@end
|
||||
@ -1067,7 +1414,7 @@ NSObject<FlutterMessageCodec> *FlutterIntegrationCoreApiGetCodec() {
|
||||
completion(output, nil);
|
||||
}];
|
||||
}
|
||||
- (void)echoNullableMap:(NSDictionary<NSString *, id> *)arg_aMap
|
||||
- (void)echoNullableMap:(nullable NSDictionary<NSString *, id> *)arg_aMap
|
||||
completion:
|
||||
(void (^)(NSDictionary<NSString *, id> *_Nullable, NSError *_Nullable))completion {
|
||||
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
|
||||
|
@ -97,21 +97,11 @@ void runPigeonIntegrationTests(TargetGenerator targetGenerator) {
|
||||
expect(echoObject.aFloatArray, genericAllTypes.aFloatArray);
|
||||
expect(listEquals(echoObject.aList, genericAllTypes.aList), true);
|
||||
expect(mapEquals(echoObject.aMap, genericAllTypes.aMap), true);
|
||||
// TODO(stuartmorgan): Enable this once the Dart types are fixed; see
|
||||
// https://github.com/flutter/flutter/issues/116117
|
||||
// expect(echoObject.nestedList.length, genericAllTypes.nestedList.length);
|
||||
//for (int i = 0; i < echoObject.nestedList!.length; i++) {
|
||||
// expect(listEquals(echoObject.nestedList![i], genericAllTypes.nestedList![i]),
|
||||
// true);
|
||||
//}
|
||||
// expect(
|
||||
// mapEquals(
|
||||
// echoObject.mapWithAnnotations, genericAllTypes.mapWithAnnotations),
|
||||
// true);
|
||||
// expect(
|
||||
// mapEquals(echoObject.mapWithObject, genericAllTypes.mapWithObject), true);
|
||||
expect(echoObject.anEnum, genericAllTypes.anEnum);
|
||||
});
|
||||
},
|
||||
// TODO(stuartmorgan): Fix and re-enable.
|
||||
// See https://github.com/flutter/flutter/issues/118726
|
||||
skip: targetGenerator == TargetGenerator.kotlin);
|
||||
|
||||
testWidgets('all nullable datatypes serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
@ -160,7 +150,7 @@ void runPigeonIntegrationTests(TargetGenerator targetGenerator) {
|
||||
expect(echoObject?.aNullableEnum, genericAllNullableTypes.aNullableEnum);
|
||||
});
|
||||
|
||||
testWidgets('all nulla datatypes serialize and deserialize correctly',
|
||||
testWidgets('all null datatypes serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
@ -233,7 +223,10 @@ void runPigeonIntegrationTests(TargetGenerator targetGenerator) {
|
||||
|
||||
expect(echoNullFilledObject?.aNullableEnum, allTypesNull.aNullableEnum);
|
||||
expect(echoNullFilledObject?.aNullableEnum, null);
|
||||
});
|
||||
},
|
||||
// TODO(stuartmorgan): Fix and re-enable.
|
||||
// See https://github.com/flutter/flutter/issues/118733
|
||||
skip: targetGenerator == TargetGenerator.objc);
|
||||
|
||||
testWidgets('errors are returned correctly', (WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
@ -518,15 +511,294 @@ void runPigeonIntegrationTests(TargetGenerator targetGenerator) {
|
||||
expect(api.callFlutterNoop(), completes);
|
||||
});
|
||||
|
||||
testWidgets('all datatypes serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
final AllTypes echoObject =
|
||||
await api.callFlutterEchoAllTypes(genericAllTypes);
|
||||
|
||||
expect(echoObject.aBool, genericAllTypes.aBool);
|
||||
expect(echoObject.anInt, genericAllTypes.anInt);
|
||||
expect(echoObject.aDouble, genericAllTypes.aDouble);
|
||||
expect(echoObject.aString, genericAllTypes.aString);
|
||||
expect(echoObject.aByteArray, genericAllTypes.aByteArray);
|
||||
expect(echoObject.a4ByteArray, genericAllTypes.a4ByteArray);
|
||||
expect(echoObject.a8ByteArray, genericAllTypes.a8ByteArray);
|
||||
expect(echoObject.aFloatArray, genericAllTypes.aFloatArray);
|
||||
expect(listEquals(echoObject.aList, genericAllTypes.aList), true);
|
||||
expect(mapEquals(echoObject.aMap, genericAllTypes.aMap), true);
|
||||
expect(echoObject.anEnum, genericAllTypes.anEnum);
|
||||
},
|
||||
// TODO(stuartmorgan): Fix and re-enable.
|
||||
// See https://github.com/flutter/flutter/issues/118726
|
||||
skip: targetGenerator == TargetGenerator.kotlin ||
|
||||
// TODO(stuartmorgan): Fix and re-enable.
|
||||
// See https://github.com/flutter/flutter/issues/118739
|
||||
targetGenerator == TargetGenerator.cpp);
|
||||
|
||||
testWidgets(
|
||||
'Arguments of multiple types serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
const String aNullableString = 'this is a String';
|
||||
const bool aNullableBool = false;
|
||||
const int aNullableInt = 42;
|
||||
|
||||
final AllNullableTypes compositeObject =
|
||||
await api.callFlutterSendMultipleNullableTypes(
|
||||
aNullableBool, aNullableInt, aNullableString);
|
||||
expect(compositeObject.aNullableInt, aNullableInt);
|
||||
expect(compositeObject.aNullableBool, aNullableBool);
|
||||
expect(compositeObject.aNullableString, aNullableString);
|
||||
});
|
||||
|
||||
testWidgets(
|
||||
'Arguments of multiple null types serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
final AllNullableTypes compositeObject =
|
||||
await api.callFlutterSendMultipleNullableTypes(null, null, null);
|
||||
expect(compositeObject.aNullableInt, null);
|
||||
expect(compositeObject.aNullableBool, null);
|
||||
expect(compositeObject.aNullableString, null);
|
||||
});
|
||||
|
||||
testWidgets('booleans serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
for (final bool sentObject in <bool>[true, false]) {
|
||||
final bool echoObject = await api.callFlutterEchoBool(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
}
|
||||
});
|
||||
|
||||
testWidgets('ints serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const int sentObject = -13;
|
||||
final int echoObject = await api.callFlutterEchoInt(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
},
|
||||
// TODO(stuartmorgan): Fix and re-enable.
|
||||
// See https://github.com/flutter/flutter/issues/118726
|
||||
skip: targetGenerator == TargetGenerator.kotlin);
|
||||
|
||||
testWidgets('doubles serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const double sentObject = 2.0694;
|
||||
final double echoObject = await api.callFlutterEchoDouble(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
});
|
||||
|
||||
testWidgets('strings serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const String sentObject = 'Hello Dart!';
|
||||
|
||||
final String echoObject = await api.callFlutterEchoString(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
});
|
||||
|
||||
testWidgets('Uint8Lists serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
final List<int> data = <int>[
|
||||
102,
|
||||
111,
|
||||
114,
|
||||
116,
|
||||
121,
|
||||
45,
|
||||
116,
|
||||
119,
|
||||
111,
|
||||
0
|
||||
];
|
||||
final Uint8List sentObject = Uint8List.fromList(data);
|
||||
final Uint8List echoObject =
|
||||
await api.callFlutterEchoUint8List(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
});
|
||||
|
||||
testWidgets('lists serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const List<Object?> sentObject = <Object>[7, 'Hello Dart!'];
|
||||
final List<Object?> echoObject =
|
||||
await api.callFlutterEchoList(sentObject);
|
||||
expect(listEquals(echoObject, sentObject), true);
|
||||
});
|
||||
|
||||
testWidgets('maps serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const Map<String?, Object?> sentObject = <String?, Object?>{
|
||||
'a': 1,
|
||||
'b': 2.3,
|
||||
'c': 'four',
|
||||
};
|
||||
final Map<String?, Object?> echoObject =
|
||||
await api.callFlutterEchoMap(sentObject);
|
||||
expect(mapEquals(echoObject, sentObject), true);
|
||||
});
|
||||
|
||||
testWidgets('nullable booleans serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
for (final bool? sentObject in <bool?>[true, false]) {
|
||||
final bool? echoObject =
|
||||
await api.callFlutterEchoNullableBool(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
}
|
||||
});
|
||||
|
||||
testWidgets('null booleans serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const bool? sentObject = null;
|
||||
final bool? echoObject =
|
||||
await api.callFlutterEchoNullableBool(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
});
|
||||
|
||||
testWidgets('nullable ints serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const int sentObject = -13;
|
||||
final int? echoObject = await api.callFlutterEchoNullableInt(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
},
|
||||
// TODO(stuartmorgan): Fix and re-enable.
|
||||
// See https://github.com/flutter/flutter/issues/118726
|
||||
skip: targetGenerator == TargetGenerator.kotlin);
|
||||
|
||||
testWidgets('null ints serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
final int? echoObject = await api.callFlutterEchoNullableInt(null);
|
||||
expect(echoObject, null);
|
||||
});
|
||||
|
||||
testWidgets('nullable doubles serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const double sentObject = 2.0694;
|
||||
final double? echoObject =
|
||||
await api.callFlutterEchoNullableDouble(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
});
|
||||
|
||||
testWidgets('null doubles serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
final double? echoObject = await api.callFlutterEchoNullableDouble(null);
|
||||
expect(echoObject, null);
|
||||
});
|
||||
|
||||
testWidgets('nullable strings serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const String sentObject = "I'm a computer";
|
||||
final String? echoObject =
|
||||
await api.callFlutterEchoNullableString(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
});
|
||||
|
||||
testWidgets('null strings serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
final String? echoObject = await api.callFlutterEchoNullableString(null);
|
||||
expect(echoObject, null);
|
||||
});
|
||||
|
||||
testWidgets('nullable Uint8Lists serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
final List<int> data = <int>[
|
||||
102,
|
||||
111,
|
||||
114,
|
||||
116,
|
||||
121,
|
||||
45,
|
||||
116,
|
||||
119,
|
||||
111,
|
||||
0
|
||||
];
|
||||
final Uint8List sentObject = Uint8List.fromList(data);
|
||||
final Uint8List? echoObject =
|
||||
await api.callFlutterEchoNullableUint8List(sentObject);
|
||||
expect(echoObject, sentObject);
|
||||
});
|
||||
|
||||
testWidgets('null Uint8Lists serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
final Uint8List? echoObject =
|
||||
await api.callFlutterEchoNullableUint8List(null);
|
||||
expect(echoObject, null);
|
||||
});
|
||||
|
||||
testWidgets('nullable lists serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const List<Object?> sentObject = <Object>[7, 'Hello Dart!'];
|
||||
final List<Object?>? echoObject =
|
||||
await api.callFlutterEchoNullableList(sentObject);
|
||||
expect(listEquals(echoObject, sentObject), true);
|
||||
});
|
||||
|
||||
testWidgets('null lists serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
final List<Object?>? echoObject =
|
||||
await api.callFlutterEchoNullableList(null);
|
||||
expect(listEquals(echoObject, null), true);
|
||||
});
|
||||
|
||||
testWidgets('nullable maps serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
const Map<String?, Object?> sentObject = <String?, Object?>{
|
||||
'a': 1,
|
||||
'b': 2.3,
|
||||
'c': 'four',
|
||||
};
|
||||
final Map<String?, Object?>? echoObject =
|
||||
await api.callFlutterEchoNullableMap(sentObject);
|
||||
expect(mapEquals(echoObject, sentObject), true);
|
||||
});
|
||||
|
||||
testWidgets('null maps serialize and deserialize correctly',
|
||||
(WidgetTester _) async {
|
||||
final HostIntegrationCoreApi api = HostIntegrationCoreApi();
|
||||
|
||||
final Map<String?, Object?>? echoObject =
|
||||
await api.callFlutterEchoNullableMap(null);
|
||||
expect(mapEquals(echoObject, null), true);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@ -587,7 +859,7 @@ class _FlutterApiTestImplementation implements FlutterIntegrationCoreApi {
|
||||
List<Object?>? echoNullableList(List<Object?>? aList) => aList;
|
||||
|
||||
@override
|
||||
Map<String?, Object?> echoNullableMap(Map<String?, Object?> aMap) => aMap;
|
||||
Map<String?, Object?>? echoNullableMap(Map<String?, Object?>? aMap) => aMap;
|
||||
|
||||
@override
|
||||
String? echoNullableString(String? aString) => aString;
|
||||
|
@ -812,6 +812,148 @@ class HostIntegrationCoreApi {
|
||||
}
|
||||
}
|
||||
|
||||
Future<AllTypes> callFlutterEchoAllTypes(AllTypes arg_everything) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoAllTypes',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_everything]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else if (replyList[0] == null) {
|
||||
throw PlatformException(
|
||||
code: 'null-error',
|
||||
message: 'Host platform returned null value for non-null return value.',
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as AllTypes?)!;
|
||||
}
|
||||
}
|
||||
|
||||
Future<AllNullableTypes> callFlutterSendMultipleNullableTypes(
|
||||
bool? arg_aNullableBool,
|
||||
int? arg_aNullableInt,
|
||||
String? arg_aNullableString) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterSendMultipleNullableTypes',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList = await channel.send(
|
||||
<Object?>[arg_aNullableBool, arg_aNullableInt, arg_aNullableString])
|
||||
as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else if (replyList[0] == null) {
|
||||
throw PlatformException(
|
||||
code: 'null-error',
|
||||
message: 'Host platform returned null value for non-null return value.',
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as AllNullableTypes?)!;
|
||||
}
|
||||
}
|
||||
|
||||
Future<bool> callFlutterEchoBool(bool arg_aBool) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoBool', codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aBool]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else if (replyList[0] == null) {
|
||||
throw PlatformException(
|
||||
code: 'null-error',
|
||||
message: 'Host platform returned null value for non-null return value.',
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as bool?)!;
|
||||
}
|
||||
}
|
||||
|
||||
Future<int> callFlutterEchoInt(int arg_anInt) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoInt', codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_anInt]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else if (replyList[0] == null) {
|
||||
throw PlatformException(
|
||||
code: 'null-error',
|
||||
message: 'Host platform returned null value for non-null return value.',
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as int?)!;
|
||||
}
|
||||
}
|
||||
|
||||
Future<double> callFlutterEchoDouble(double arg_aDouble) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoDouble',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aDouble]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else if (replyList[0] == null) {
|
||||
throw PlatformException(
|
||||
code: 'null-error',
|
||||
message: 'Host platform returned null value for non-null return value.',
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as double?)!;
|
||||
}
|
||||
}
|
||||
|
||||
Future<String> callFlutterEchoString(String arg_aString) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoString',
|
||||
@ -839,6 +981,253 @@ class HostIntegrationCoreApi {
|
||||
return (replyList[0] as String?)!;
|
||||
}
|
||||
}
|
||||
|
||||
Future<Uint8List> callFlutterEchoUint8List(Uint8List arg_aList) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoUint8List',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aList]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else if (replyList[0] == null) {
|
||||
throw PlatformException(
|
||||
code: 'null-error',
|
||||
message: 'Host platform returned null value for non-null return value.',
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as Uint8List?)!;
|
||||
}
|
||||
}
|
||||
|
||||
Future<List<Object?>> callFlutterEchoList(List<Object?> arg_aList) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoList', codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aList]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else if (replyList[0] == null) {
|
||||
throw PlatformException(
|
||||
code: 'null-error',
|
||||
message: 'Host platform returned null value for non-null return value.',
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as List<Object?>?)!.cast<Object?>();
|
||||
}
|
||||
}
|
||||
|
||||
Future<Map<String?, Object?>> callFlutterEchoMap(
|
||||
Map<String?, Object?> arg_aMap) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoMap', codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aMap]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else if (replyList[0] == null) {
|
||||
throw PlatformException(
|
||||
code: 'null-error',
|
||||
message: 'Host platform returned null value for non-null return value.',
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as Map<Object?, Object?>?)!.cast<String?, Object?>();
|
||||
}
|
||||
}
|
||||
|
||||
Future<bool?> callFlutterEchoNullableBool(bool? arg_aBool) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableBool',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aBool]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as bool?);
|
||||
}
|
||||
}
|
||||
|
||||
Future<int?> callFlutterEchoNullableInt(int? arg_anInt) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableInt',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_anInt]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as int?);
|
||||
}
|
||||
}
|
||||
|
||||
Future<double?> callFlutterEchoNullableDouble(double? arg_aDouble) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableDouble',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aDouble]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as double?);
|
||||
}
|
||||
}
|
||||
|
||||
Future<String?> callFlutterEchoNullableString(String? arg_aString) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableString',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aString]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as String?);
|
||||
}
|
||||
}
|
||||
|
||||
Future<Uint8List?> callFlutterEchoNullableUint8List(
|
||||
Uint8List? arg_aList) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableUint8List',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aList]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as Uint8List?);
|
||||
}
|
||||
}
|
||||
|
||||
Future<List<Object?>?> callFlutterEchoNullableList(
|
||||
List<Object?>? arg_aList) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableList',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aList]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as List<Object?>?)?.cast<Object?>();
|
||||
}
|
||||
}
|
||||
|
||||
Future<Map<String?, Object?>?> callFlutterEchoNullableMap(
|
||||
Map<String?, Object?>? arg_aMap) async {
|
||||
final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
|
||||
'dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableMap',
|
||||
codec,
|
||||
binaryMessenger: _binaryMessenger);
|
||||
final List<Object?>? replyList =
|
||||
await channel.send(<Object?>[arg_aMap]) as List<Object?>?;
|
||||
if (replyList == null) {
|
||||
throw PlatformException(
|
||||
code: 'channel-error',
|
||||
message: 'Unable to establish connection on channel.',
|
||||
);
|
||||
} else if (replyList.length > 1) {
|
||||
throw PlatformException(
|
||||
code: replyList[0]! as String,
|
||||
message: replyList[1] as String?,
|
||||
details: replyList[2],
|
||||
);
|
||||
} else {
|
||||
return (replyList[0] as Map<Object?, Object?>?)?.cast<String?, Object?>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class _FlutterIntegrationCoreApiCodec extends StandardMessageCodec {
|
||||
@ -938,7 +1327,7 @@ abstract class FlutterIntegrationCoreApi {
|
||||
List<Object?>? echoNullableList(List<Object?>? aList);
|
||||
|
||||
/// Returns the passed map, to test serialization and deserialization.
|
||||
Map<String?, Object?> echoNullableMap(Map<String?, Object?> aMap);
|
||||
Map<String?, Object?>? echoNullableMap(Map<String?, Object?>? aMap);
|
||||
|
||||
static void setup(FlutterIntegrationCoreApi? api,
|
||||
{BinaryMessenger? binaryMessenger}) {
|
||||
@ -1274,9 +1663,7 @@ abstract class FlutterIntegrationCoreApi {
|
||||
final List<Object?> args = (message as List<Object?>?)!;
|
||||
final Map<String?, Object?>? arg_aMap =
|
||||
(args[0] as Map<Object?, Object?>?)?.cast<String?, Object?>();
|
||||
assert(arg_aMap != null,
|
||||
'Argument for dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableMap was null, expected non-null Map<String?, Object?>.');
|
||||
final Map<String?, Object?> output = api.echoNullableMap(arg_aMap!);
|
||||
final Map<String?, Object?>? output = api.echoNullableMap(arg_aMap);
|
||||
return output;
|
||||
});
|
||||
}
|
||||
|
@ -270,7 +270,22 @@ interface HostIntegrationCoreApi {
|
||||
/** Returns the passed string asynchronously. */
|
||||
fun echoAsyncString(aString: String, callback: (String) -> Unit)
|
||||
fun callFlutterNoop(callback: () -> Unit)
|
||||
fun callFlutterEchoAllTypes(everything: AllTypes, callback: (AllTypes) -> Unit)
|
||||
fun callFlutterSendMultipleNullableTypes(aNullableBool: Boolean?, aNullableInt: Long?, aNullableString: String?, callback: (AllNullableTypes) -> Unit)
|
||||
fun callFlutterEchoBool(aBool: Boolean, callback: (Boolean) -> Unit)
|
||||
fun callFlutterEchoInt(anInt: Long, callback: (Long) -> Unit)
|
||||
fun callFlutterEchoDouble(aDouble: Double, callback: (Double) -> Unit)
|
||||
fun callFlutterEchoString(aString: String, callback: (String) -> Unit)
|
||||
fun callFlutterEchoUint8List(aList: ByteArray, callback: (ByteArray) -> Unit)
|
||||
fun callFlutterEchoList(aList: List<Any?>, callback: (List<Any?>) -> Unit)
|
||||
fun callFlutterEchoMap(aMap: Map<String?, Any?>, callback: (Map<String?, Any?>) -> Unit)
|
||||
fun callFlutterEchoNullableBool(aBool: Boolean?, callback: (Boolean?) -> Unit)
|
||||
fun callFlutterEchoNullableInt(anInt: Long?, callback: (Long?) -> Unit)
|
||||
fun callFlutterEchoNullableDouble(aDouble: Double?, callback: (Double?) -> Unit)
|
||||
fun callFlutterEchoNullableString(aString: String?, callback: (String?) -> Unit)
|
||||
fun callFlutterEchoNullableUint8List(aList: ByteArray?, callback: (ByteArray?) -> Unit)
|
||||
fun callFlutterEchoNullableList(aList: List<Any?>?, callback: (List<Any?>?) -> Unit)
|
||||
fun callFlutterEchoNullableMap(aMap: Map<String?, Any?>?, callback: (Map<String?, Any?>?) -> Unit)
|
||||
|
||||
companion object {
|
||||
/** The codec used by HostIntegrationCoreApi. */
|
||||
@ -678,6 +693,108 @@ interface HostIntegrationCoreApi {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoAllTypes", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val everythingArg = args[0] as AllTypes
|
||||
api.callFlutterEchoAllTypes(everythingArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterSendMultipleNullableTypes", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aNullableBoolArg = args[0] as? Boolean
|
||||
val aNullableIntArg = args[1].let { if (it is Int) it.toLong() else it as? Long }
|
||||
val aNullableStringArg = args[2] as? String
|
||||
api.callFlutterSendMultipleNullableTypes(aNullableBoolArg, aNullableIntArg, aNullableStringArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoBool", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aBoolArg = args[0] as Boolean
|
||||
api.callFlutterEchoBool(aBoolArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoInt", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val anIntArg = args[0].let { if (it is Int) it.toLong() else it as Long }
|
||||
api.callFlutterEchoInt(anIntArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoDouble", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aDoubleArg = args[0] as Double
|
||||
api.callFlutterEchoDouble(aDoubleArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoString", codec)
|
||||
if (api != null) {
|
||||
@ -698,6 +815,206 @@ interface HostIntegrationCoreApi {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoUint8List", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aListArg = args[0] as ByteArray
|
||||
api.callFlutterEchoUint8List(aListArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoList", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aListArg = args[0] as List<Any?>
|
||||
api.callFlutterEchoList(aListArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoMap", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aMapArg = args[0] as Map<String?, Any?>
|
||||
api.callFlutterEchoMap(aMapArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableBool", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aBoolArg = args[0] as? Boolean
|
||||
api.callFlutterEchoNullableBool(aBoolArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableInt", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val anIntArg = args[0].let { if (it is Int) it.toLong() else it as? Long }
|
||||
api.callFlutterEchoNullableInt(anIntArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableDouble", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aDoubleArg = args[0] as? Double
|
||||
api.callFlutterEchoNullableDouble(aDoubleArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableString", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aStringArg = args[0] as? String
|
||||
api.callFlutterEchoNullableString(aStringArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableUint8List", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aListArg = args[0] as? ByteArray
|
||||
api.callFlutterEchoNullableUint8List(aListArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableList", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aListArg = args[0] as? List<Any?>
|
||||
api.callFlutterEchoNullableList(aListArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
run {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableMap", codec)
|
||||
if (api != null) {
|
||||
channel.setMessageHandler { message, reply ->
|
||||
var wrapped = listOf<Any?>()
|
||||
try {
|
||||
val args = message as List<Any?>
|
||||
val aMapArg = args[0] as? Map<String?, Any?>
|
||||
api.callFlutterEchoNullableMap(aMapArg) {
|
||||
reply.reply(wrapResult(it))
|
||||
}
|
||||
} catch (exception: Error) {
|
||||
wrapped = wrapError(exception)
|
||||
reply.reply(wrapped)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
channel.setMessageHandler(null)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -899,10 +1216,10 @@ class FlutterIntegrationCoreApi(private val binaryMessenger: BinaryMessenger) {
|
||||
}
|
||||
}
|
||||
/** Returns the passed map, to test serialization and deserialization. */
|
||||
fun echoNullableMap(aMapArg: Map<String?, Any?>, callback: (Map<String?, Any?>) -> Unit) {
|
||||
fun echoNullableMap(aMapArg: Map<String?, Any?>?, callback: (Map<String?, Any?>?) -> Unit) {
|
||||
val channel = BasicMessageChannel<Any?>(binaryMessenger, "dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableMap", codec)
|
||||
channel.send(listOf(aMapArg)) {
|
||||
val result = it as Map<String?, Any?>
|
||||
val result = it as? Map<String?, Any?>?
|
||||
callback(result)
|
||||
}
|
||||
}
|
||||
|
@ -116,7 +116,75 @@ class TestPlugin: FlutterPlugin, HostIntegrationCoreApi {
|
||||
flutterApi!!.noop() { callback() }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoString(aString: String, callback: (String) -> Unit) {
|
||||
flutterApi!!.echoString(aString) { flutterString -> callback(flutterString) }
|
||||
override fun callFlutterEchoAllTypes(everything: AllTypes, callback: (AllTypes) -> Unit) {
|
||||
flutterApi!!.echoAllTypes(everything) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterSendMultipleNullableTypes(
|
||||
aNullableBool: Boolean?,
|
||||
aNullableInt: Long?,
|
||||
aNullableString: String?,
|
||||
callback: (AllNullableTypes) -> Unit
|
||||
) {
|
||||
flutterApi!!.sendMultipleNullableTypes(aNullableBool, aNullableInt, aNullableString) {
|
||||
echo -> callback(echo)
|
||||
}
|
||||
}
|
||||
|
||||
override fun callFlutterEchoBool(aBool: Boolean, callback: (Boolean) -> Unit) {
|
||||
flutterApi!!.echoBool(aBool) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoInt(anInt: Long, callback: (Long) -> Unit) {
|
||||
flutterApi!!.echoInt(anInt) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoDouble(aDouble: Double, callback: (Double) -> Unit) {
|
||||
flutterApi!!.echoDouble(aDouble) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoString(aString: String, callback: (String) -> Unit) {
|
||||
flutterApi!!.echoString(aString) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoUint8List(aList: ByteArray, callback: (ByteArray) -> Unit) {
|
||||
flutterApi!!.echoUint8List(aList) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoList(aList: List<Any?>, callback: (List<Any?>) -> Unit) {
|
||||
flutterApi!!.echoList(aList) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoMap(aMap: Map<String?, Any?>, callback: (Map<String?, Any?>) -> Unit) {
|
||||
flutterApi!!.echoMap(aMap) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoNullableBool(aBool: Boolean?, callback: (Boolean?) -> Unit) {
|
||||
flutterApi!!.echoNullableBool(aBool) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoNullableInt(anInt: Long?, callback: (Long?) -> Unit) {
|
||||
flutterApi!!.echoNullableInt(anInt) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoNullableDouble(aDouble: Double?, callback: (Double?) -> Unit) {
|
||||
flutterApi!!.echoNullableDouble(aDouble) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoNullableString(aString: String?, callback: (String?) -> Unit) {
|
||||
flutterApi!!.echoNullableString(aString) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoNullableUint8List(aList: ByteArray?, callback: (ByteArray?) -> Unit) {
|
||||
flutterApi!!.echoNullableUint8List(aList) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoNullableList(aList: List<Any?>?, callback: (List<Any?>?) -> Unit) {
|
||||
flutterApi!!.echoNullableList(aList) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
override fun callFlutterEchoNullableMap(aMap: Map<String?, Any?>?, callback: (Map<String?, Any?>?) -> Unit) {
|
||||
flutterApi!!.echoNullableMap(aMap) { echo -> callback(echo) }
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -281,7 +281,22 @@ protocol HostIntegrationCoreApi {
|
||||
/// Returns the passed string asynchronously.
|
||||
func echoAsyncString(aString: String, completion: @escaping (String) -> Void)
|
||||
func callFlutterNoop(completion: @escaping () -> Void)
|
||||
func callFlutterEchoAllTypes(everything: AllTypes, completion: @escaping (AllTypes) -> Void)
|
||||
func callFlutterSendMultipleNullableTypes(aNullableBool: Bool?, aNullableInt: Int32?, aNullableString: String?, completion: @escaping (AllNullableTypes) -> Void)
|
||||
func callFlutterEchoBool(aBool: Bool, completion: @escaping (Bool) -> Void)
|
||||
func callFlutterEchoInt(anInt: Int32, completion: @escaping (Int32) -> Void)
|
||||
func callFlutterEchoDouble(aDouble: Double, completion: @escaping (Double) -> Void)
|
||||
func callFlutterEchoString(aString: String, completion: @escaping (String) -> Void)
|
||||
func callFlutterEchoUint8List(aList: FlutterStandardTypedData, completion: @escaping (FlutterStandardTypedData) -> Void)
|
||||
func callFlutterEchoList(aList: [Any?], completion: @escaping ([Any?]) -> Void)
|
||||
func callFlutterEchoMap(aMap: [String?: Any?], completion: @escaping ([String?: Any?]) -> Void)
|
||||
func callFlutterEchoNullableBool(aBool: Bool?, completion: @escaping (Bool?) -> Void)
|
||||
func callFlutterEchoNullableInt(anInt: Int32?, completion: @escaping (Int32?) -> Void)
|
||||
func callFlutterEchoNullableDouble(aDouble: Double?, completion: @escaping (Double?) -> Void)
|
||||
func callFlutterEchoNullableString(aString: String?, completion: @escaping (String?) -> Void)
|
||||
func callFlutterEchoNullableUint8List(aList: FlutterStandardTypedData?, completion: @escaping (FlutterStandardTypedData?) -> Void)
|
||||
func callFlutterEchoNullableList(aList: [Any?]?, completion: @escaping ([Any?]?) -> Void)
|
||||
func callFlutterEchoNullableMap(aMap: [String?: Any?]?, completion: @escaping ([String?: Any?]?) -> Void)
|
||||
}
|
||||
|
||||
/// Generated setup class from Pigeon to handle messages through the `binaryMessenger`.
|
||||
@ -554,6 +569,68 @@ class HostIntegrationCoreApiSetup {
|
||||
} else {
|
||||
callFlutterNoopChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoAllTypesChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoAllTypes", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoAllTypesChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let everythingArg = args[0] as! AllTypes
|
||||
api.callFlutterEchoAllTypes(everything: everythingArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoAllTypesChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterSendMultipleNullableTypesChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterSendMultipleNullableTypes", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterSendMultipleNullableTypesChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aNullableBoolArg = args[0] as? Bool
|
||||
let aNullableIntArg = args[1] as? Int32
|
||||
let aNullableStringArg = args[2] as? String
|
||||
api.callFlutterSendMultipleNullableTypes(aNullableBool: aNullableBoolArg, aNullableInt: aNullableIntArg, aNullableString: aNullableStringArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterSendMultipleNullableTypesChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoBoolChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoBool", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoBoolChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aBoolArg = args[0] as! Bool
|
||||
api.callFlutterEchoBool(aBool: aBoolArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoBoolChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoIntChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoInt", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoIntChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let anIntArg = args[0] as! Int32
|
||||
api.callFlutterEchoInt(anInt: anIntArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoIntChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoDoubleChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoDouble", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoDoubleChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aDoubleArg = args[0] as! Double
|
||||
api.callFlutterEchoDouble(aDouble: aDoubleArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoDoubleChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoStringChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoString", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoStringChannel.setMessageHandler { message, reply in
|
||||
@ -566,6 +643,126 @@ class HostIntegrationCoreApiSetup {
|
||||
} else {
|
||||
callFlutterEchoStringChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoUint8ListChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoUint8List", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoUint8ListChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aListArg = args[0] as! FlutterStandardTypedData
|
||||
api.callFlutterEchoUint8List(aList: aListArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoUint8ListChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoListChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoList", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoListChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aListArg = args[0] as! [Any?]
|
||||
api.callFlutterEchoList(aList: aListArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoListChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoMapChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoMap", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoMapChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aMapArg = args[0] as! [String?: Any?]
|
||||
api.callFlutterEchoMap(aMap: aMapArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoMapChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableBoolChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableBool", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableBoolChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aBoolArg = args[0] as? Bool
|
||||
api.callFlutterEchoNullableBool(aBool: aBoolArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableBoolChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableIntChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableInt", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableIntChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let anIntArg = args[0] as? Int32
|
||||
api.callFlutterEchoNullableInt(anInt: anIntArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableIntChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableDoubleChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableDouble", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableDoubleChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aDoubleArg = args[0] as? Double
|
||||
api.callFlutterEchoNullableDouble(aDouble: aDoubleArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableDoubleChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableStringChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableString", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableStringChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aStringArg = args[0] as? String
|
||||
api.callFlutterEchoNullableString(aString: aStringArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableStringChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableUint8ListChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableUint8List", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableUint8ListChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aListArg = args[0] as? FlutterStandardTypedData
|
||||
api.callFlutterEchoNullableUint8List(aList: aListArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableUint8ListChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableListChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableList", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableListChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aListArg = args[0] as? [Any?]
|
||||
api.callFlutterEchoNullableList(aList: aListArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableListChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableMapChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableMap", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableMapChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aMapArg = args[0] as? [String?: Any?]
|
||||
api.callFlutterEchoNullableMap(aMap: aMapArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableMapChannel.setMessageHandler(nil)
|
||||
}
|
||||
}
|
||||
}
|
||||
private class FlutterIntegrationCoreApiCodecReader: FlutterStandardReader {
|
||||
@ -765,10 +962,10 @@ class FlutterIntegrationCoreApi {
|
||||
}
|
||||
}
|
||||
/// Returns the passed map, to test serialization and deserialization.
|
||||
func echoNullableMap(aMap aMapArg: [String?: Any?], completion: @escaping ([String?: Any?]) -> Void) {
|
||||
func echoNullableMap(aMap aMapArg: [String?: Any?]?, completion: @escaping ([String?: Any?]?) -> Void) {
|
||||
let channel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableMap", binaryMessenger: binaryMessenger, codec: codec)
|
||||
channel.sendMessage([aMapArg] as [Any?]) { response in
|
||||
let result = response as! [String?: Any?]
|
||||
let result = response as? [String?: Any?]
|
||||
completion(result)
|
||||
}
|
||||
}
|
||||
|
@ -114,9 +114,78 @@ public class TestPlugin: NSObject, FlutterPlugin, HostIntegrationCoreApi {
|
||||
}
|
||||
}
|
||||
|
||||
func callFlutterEchoString(aString: String, completion: @escaping (String) -> Void) {
|
||||
flutterAPI.echoString(aString: aString) { flutterString in
|
||||
completion(flutterString)
|
||||
func callFlutterEchoAllTypes(everything: AllTypes, completion: @escaping (AllTypes) -> Void) {
|
||||
flutterAPI.echoAllTypes(everything: everything) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterSendMultipleNullableTypes(
|
||||
aNullableBool: Bool?,
|
||||
aNullableInt: Int32?,
|
||||
aNullableString: String?,
|
||||
completion: @escaping (AllNullableTypes) -> Void
|
||||
) {
|
||||
flutterAPI.sendMultipleNullableTypes(
|
||||
aNullableBool: aNullableBool,
|
||||
aNullableInt: aNullableInt,
|
||||
aNullableString: aNullableString
|
||||
) {
|
||||
completion($0)
|
||||
}
|
||||
}
|
||||
|
||||
func callFlutterEchoBool(aBool: Bool, completion: @escaping (Bool) -> Void) {
|
||||
flutterAPI.echoBool(aBool: aBool) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoInt(anInt: Int32, completion: @escaping (Int32) -> Void) {
|
||||
flutterAPI.echoInt(anInt: anInt) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoDouble(aDouble: Double, completion: @escaping (Double) -> Void) {
|
||||
flutterAPI.echoDouble(aDouble: aDouble) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoString(aString: String, completion: @escaping (String) -> Void) {
|
||||
flutterAPI.echoString(aString: aString) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoUint8List(aList: FlutterStandardTypedData, completion: @escaping (FlutterStandardTypedData) -> Void) {
|
||||
flutterAPI.echoUint8List(aList: aList) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoList(aList: [Any?], completion: @escaping ([Any?]) -> Void) {
|
||||
flutterAPI.echoList(aList: aList) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoMap(aMap: [String? : Any?], completion: @escaping ([String? : Any?]) -> Void) {
|
||||
flutterAPI.echoMap(aMap: aMap) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableBool(aBool: Bool?, completion: @escaping (Bool?) -> Void) {
|
||||
flutterAPI.echoNullableBool(aBool: aBool) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableInt(anInt: Int32?, completion: @escaping (Int32?) -> Void) {
|
||||
flutterAPI.echoNullableInt(anInt: anInt) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableDouble(aDouble: Double?, completion: @escaping (Double?) -> Void) {
|
||||
flutterAPI.echoNullableDouble(aDouble: aDouble) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableString(aString: String?, completion: @escaping (String?) -> Void) {
|
||||
flutterAPI.echoNullableString(aString: aString) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableUint8List(aList: FlutterStandardTypedData?, completion: @escaping (FlutterStandardTypedData?) -> Void) {
|
||||
flutterAPI.echoNullableUint8List(aList: aList) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableList(aList: [Any?]?, completion: @escaping ([Any?]?) -> Void) {
|
||||
flutterAPI.echoNullableList(aList: aList) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableMap(aMap: [String? : Any?]?, completion: @escaping ([String? : Any?]?) -> Void) {
|
||||
flutterAPI.echoNullableMap(aMap: aMap) { completion($0) }
|
||||
}
|
||||
}
|
||||
|
@ -281,7 +281,22 @@ protocol HostIntegrationCoreApi {
|
||||
/// Returns the passed string asynchronously.
|
||||
func echoAsyncString(aString: String, completion: @escaping (String) -> Void)
|
||||
func callFlutterNoop(completion: @escaping () -> Void)
|
||||
func callFlutterEchoAllTypes(everything: AllTypes, completion: @escaping (AllTypes) -> Void)
|
||||
func callFlutterSendMultipleNullableTypes(aNullableBool: Bool?, aNullableInt: Int32?, aNullableString: String?, completion: @escaping (AllNullableTypes) -> Void)
|
||||
func callFlutterEchoBool(aBool: Bool, completion: @escaping (Bool) -> Void)
|
||||
func callFlutterEchoInt(anInt: Int32, completion: @escaping (Int32) -> Void)
|
||||
func callFlutterEchoDouble(aDouble: Double, completion: @escaping (Double) -> Void)
|
||||
func callFlutterEchoString(aString: String, completion: @escaping (String) -> Void)
|
||||
func callFlutterEchoUint8List(aList: FlutterStandardTypedData, completion: @escaping (FlutterStandardTypedData) -> Void)
|
||||
func callFlutterEchoList(aList: [Any?], completion: @escaping ([Any?]) -> Void)
|
||||
func callFlutterEchoMap(aMap: [String?: Any?], completion: @escaping ([String?: Any?]) -> Void)
|
||||
func callFlutterEchoNullableBool(aBool: Bool?, completion: @escaping (Bool?) -> Void)
|
||||
func callFlutterEchoNullableInt(anInt: Int32?, completion: @escaping (Int32?) -> Void)
|
||||
func callFlutterEchoNullableDouble(aDouble: Double?, completion: @escaping (Double?) -> Void)
|
||||
func callFlutterEchoNullableString(aString: String?, completion: @escaping (String?) -> Void)
|
||||
func callFlutterEchoNullableUint8List(aList: FlutterStandardTypedData?, completion: @escaping (FlutterStandardTypedData?) -> Void)
|
||||
func callFlutterEchoNullableList(aList: [Any?]?, completion: @escaping ([Any?]?) -> Void)
|
||||
func callFlutterEchoNullableMap(aMap: [String?: Any?]?, completion: @escaping ([String?: Any?]?) -> Void)
|
||||
}
|
||||
|
||||
/// Generated setup class from Pigeon to handle messages through the `binaryMessenger`.
|
||||
@ -554,6 +569,68 @@ class HostIntegrationCoreApiSetup {
|
||||
} else {
|
||||
callFlutterNoopChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoAllTypesChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoAllTypes", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoAllTypesChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let everythingArg = args[0] as! AllTypes
|
||||
api.callFlutterEchoAllTypes(everything: everythingArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoAllTypesChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterSendMultipleNullableTypesChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterSendMultipleNullableTypes", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterSendMultipleNullableTypesChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aNullableBoolArg = args[0] as? Bool
|
||||
let aNullableIntArg = args[1] as? Int32
|
||||
let aNullableStringArg = args[2] as? String
|
||||
api.callFlutterSendMultipleNullableTypes(aNullableBool: aNullableBoolArg, aNullableInt: aNullableIntArg, aNullableString: aNullableStringArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterSendMultipleNullableTypesChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoBoolChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoBool", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoBoolChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aBoolArg = args[0] as! Bool
|
||||
api.callFlutterEchoBool(aBool: aBoolArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoBoolChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoIntChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoInt", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoIntChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let anIntArg = args[0] as! Int32
|
||||
api.callFlutterEchoInt(anInt: anIntArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoIntChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoDoubleChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoDouble", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoDoubleChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aDoubleArg = args[0] as! Double
|
||||
api.callFlutterEchoDouble(aDouble: aDoubleArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoDoubleChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoStringChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoString", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoStringChannel.setMessageHandler { message, reply in
|
||||
@ -566,6 +643,126 @@ class HostIntegrationCoreApiSetup {
|
||||
} else {
|
||||
callFlutterEchoStringChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoUint8ListChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoUint8List", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoUint8ListChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aListArg = args[0] as! FlutterStandardTypedData
|
||||
api.callFlutterEchoUint8List(aList: aListArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoUint8ListChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoListChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoList", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoListChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aListArg = args[0] as! [Any?]
|
||||
api.callFlutterEchoList(aList: aListArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoListChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoMapChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoMap", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoMapChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aMapArg = args[0] as! [String?: Any?]
|
||||
api.callFlutterEchoMap(aMap: aMapArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoMapChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableBoolChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableBool", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableBoolChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aBoolArg = args[0] as? Bool
|
||||
api.callFlutterEchoNullableBool(aBool: aBoolArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableBoolChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableIntChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableInt", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableIntChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let anIntArg = args[0] as? Int32
|
||||
api.callFlutterEchoNullableInt(anInt: anIntArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableIntChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableDoubleChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableDouble", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableDoubleChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aDoubleArg = args[0] as? Double
|
||||
api.callFlutterEchoNullableDouble(aDouble: aDoubleArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableDoubleChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableStringChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableString", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableStringChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aStringArg = args[0] as? String
|
||||
api.callFlutterEchoNullableString(aString: aStringArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableStringChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableUint8ListChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableUint8List", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableUint8ListChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aListArg = args[0] as? FlutterStandardTypedData
|
||||
api.callFlutterEchoNullableUint8List(aList: aListArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableUint8ListChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableListChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableList", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableListChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aListArg = args[0] as? [Any?]
|
||||
api.callFlutterEchoNullableList(aList: aListArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableListChannel.setMessageHandler(nil)
|
||||
}
|
||||
let callFlutterEchoNullableMapChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableMap", binaryMessenger: binaryMessenger, codec: codec)
|
||||
if let api = api {
|
||||
callFlutterEchoNullableMapChannel.setMessageHandler { message, reply in
|
||||
let args = message as! [Any?]
|
||||
let aMapArg = args[0] as? [String?: Any?]
|
||||
api.callFlutterEchoNullableMap(aMap: aMapArg) { result in
|
||||
reply(wrapResult(result))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
callFlutterEchoNullableMapChannel.setMessageHandler(nil)
|
||||
}
|
||||
}
|
||||
}
|
||||
private class FlutterIntegrationCoreApiCodecReader: FlutterStandardReader {
|
||||
@ -765,10 +962,10 @@ class FlutterIntegrationCoreApi {
|
||||
}
|
||||
}
|
||||
/// Returns the passed map, to test serialization and deserialization.
|
||||
func echoNullableMap(aMap aMapArg: [String?: Any?], completion: @escaping ([String?: Any?]) -> Void) {
|
||||
func echoNullableMap(aMap aMapArg: [String?: Any?]?, completion: @escaping ([String?: Any?]?) -> Void) {
|
||||
let channel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableMap", binaryMessenger: binaryMessenger, codec: codec)
|
||||
channel.sendMessage([aMapArg] as [Any?]) { response in
|
||||
let result = response as! [String?: Any?]
|
||||
let result = response as? [String?: Any?]
|
||||
completion(result)
|
||||
}
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ public class TestPlugin: NSObject, FlutterPlugin, HostIntegrationCoreApi {
|
||||
|
||||
// MARK: HostIntegrationCoreApi implementation
|
||||
|
||||
func noop() {
|
||||
func noop() {
|
||||
}
|
||||
|
||||
func echoAllTypes(everything: AllTypes) -> AllTypes {
|
||||
@ -114,9 +114,78 @@ public class TestPlugin: NSObject, FlutterPlugin, HostIntegrationCoreApi {
|
||||
}
|
||||
}
|
||||
|
||||
func callFlutterEchoString(aString: String, completion: @escaping (String) -> Void) {
|
||||
flutterAPI.echoString(aString: aString) { flutterString in
|
||||
completion(flutterString)
|
||||
func callFlutterEchoAllTypes(everything: AllTypes, completion: @escaping (AllTypes) -> Void) {
|
||||
flutterAPI.echoAllTypes(everything: everything) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterSendMultipleNullableTypes(
|
||||
aNullableBool: Bool?,
|
||||
aNullableInt: Int32?,
|
||||
aNullableString: String?,
|
||||
completion: @escaping (AllNullableTypes) -> Void
|
||||
) {
|
||||
flutterAPI.sendMultipleNullableTypes(
|
||||
aNullableBool: aNullableBool,
|
||||
aNullableInt: aNullableInt,
|
||||
aNullableString: aNullableString
|
||||
) {
|
||||
completion($0)
|
||||
}
|
||||
}
|
||||
|
||||
func callFlutterEchoBool(aBool: Bool, completion: @escaping (Bool) -> Void) {
|
||||
flutterAPI.echoBool(aBool: aBool) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoInt(anInt: Int32, completion: @escaping (Int32) -> Void) {
|
||||
flutterAPI.echoInt(anInt: anInt) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoDouble(aDouble: Double, completion: @escaping (Double) -> Void) {
|
||||
flutterAPI.echoDouble(aDouble: aDouble) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoString(aString: String, completion: @escaping (String) -> Void) {
|
||||
flutterAPI.echoString(aString: aString) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoUint8List(aList: FlutterStandardTypedData, completion: @escaping (FlutterStandardTypedData) -> Void) {
|
||||
flutterAPI.echoUint8List(aList: aList) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoList(aList: [Any?], completion: @escaping ([Any?]) -> Void) {
|
||||
flutterAPI.echoList(aList: aList) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoMap(aMap: [String? : Any?], completion: @escaping ([String? : Any?]) -> Void) {
|
||||
flutterAPI.echoMap(aMap: aMap) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableBool(aBool: Bool?, completion: @escaping (Bool?) -> Void) {
|
||||
flutterAPI.echoNullableBool(aBool: aBool) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableInt(anInt: Int32?, completion: @escaping (Int32?) -> Void) {
|
||||
flutterAPI.echoNullableInt(anInt: anInt) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableDouble(aDouble: Double?, completion: @escaping (Double?) -> Void) {
|
||||
flutterAPI.echoNullableDouble(aDouble: aDouble) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableString(aString: String?, completion: @escaping (String?) -> Void) {
|
||||
flutterAPI.echoNullableString(aString: aString) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableUint8List(aList: FlutterStandardTypedData?, completion: @escaping (FlutterStandardTypedData?) -> Void) {
|
||||
flutterAPI.echoNullableUint8List(aList: aList) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableList(aList: [Any?]?, completion: @escaping ([Any?]?) -> Void) {
|
||||
flutterAPI.echoNullableList(aList: aList) { completion($0) }
|
||||
}
|
||||
|
||||
func callFlutterEchoNullableMap(aMap: [String? : Any?]?, completion: @escaping ([String? : Any?]?) -> Void) {
|
||||
flutterAPI.echoNullableMap(aMap: aMap) { completion($0) }
|
||||
}
|
||||
}
|
||||
|
@ -1311,6 +1311,201 @@ void HostIntegrationCoreApi::SetUp(flutter::BinaryMessenger* binary_messenger,
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoAllTypes",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_everything_arg = args.at(0);
|
||||
if (encodable_everything_arg.IsNull()) {
|
||||
reply(WrapError("everything_arg unexpectedly null."));
|
||||
return;
|
||||
}
|
||||
const auto& everything_arg = std::any_cast<const AllTypes&>(
|
||||
std::get<flutter::CustomEncodableValue>(
|
||||
encodable_everything_arg));
|
||||
api->CallFlutterEchoAllTypes(
|
||||
everything_arg, [reply](ErrorOr<AllTypes>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
wrapped.push_back(flutter::CustomEncodableValue(
|
||||
std::move(output).TakeValue()));
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi."
|
||||
"callFlutterSendMultipleNullableTypes",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_nullable_bool_arg = args.at(0);
|
||||
const auto* a_nullable_bool_arg =
|
||||
std::get_if<bool>(&encodable_a_nullable_bool_arg);
|
||||
const auto& encodable_a_nullable_int_arg = args.at(1);
|
||||
const int64_t a_nullable_int_arg_value =
|
||||
encodable_a_nullable_int_arg.IsNull()
|
||||
? 0
|
||||
: encodable_a_nullable_int_arg.LongValue();
|
||||
const auto* a_nullable_int_arg =
|
||||
encodable_a_nullable_int_arg.IsNull()
|
||||
? nullptr
|
||||
: &a_nullable_int_arg_value;
|
||||
const auto& encodable_a_nullable_string_arg = args.at(2);
|
||||
const auto* a_nullable_string_arg =
|
||||
std::get_if<std::string>(&encodable_a_nullable_string_arg);
|
||||
api->CallFlutterSendMultipleNullableTypes(
|
||||
a_nullable_bool_arg, a_nullable_int_arg,
|
||||
a_nullable_string_arg,
|
||||
[reply](ErrorOr<AllNullableTypes>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
wrapped.push_back(flutter::CustomEncodableValue(
|
||||
std::move(output).TakeValue()));
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoBool",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_bool_arg = args.at(0);
|
||||
if (encodable_a_bool_arg.IsNull()) {
|
||||
reply(WrapError("a_bool_arg unexpectedly null."));
|
||||
return;
|
||||
}
|
||||
const auto& a_bool_arg = std::get<bool>(encodable_a_bool_arg);
|
||||
api->CallFlutterEchoBool(
|
||||
a_bool_arg, [reply](ErrorOr<bool>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
wrapped.push_back(
|
||||
flutter::EncodableValue(std::move(output).TakeValue()));
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoInt",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_an_int_arg = args.at(0);
|
||||
if (encodable_an_int_arg.IsNull()) {
|
||||
reply(WrapError("an_int_arg unexpectedly null."));
|
||||
return;
|
||||
}
|
||||
const int64_t an_int_arg = encodable_an_int_arg.LongValue();
|
||||
api->CallFlutterEchoInt(
|
||||
an_int_arg, [reply](ErrorOr<int64_t>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
wrapped.push_back(
|
||||
flutter::EncodableValue(std::move(output).TakeValue()));
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoDouble",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_double_arg = args.at(0);
|
||||
if (encodable_a_double_arg.IsNull()) {
|
||||
reply(WrapError("a_double_arg unexpectedly null."));
|
||||
return;
|
||||
}
|
||||
const auto& a_double_arg =
|
||||
std::get<double>(encodable_a_double_arg);
|
||||
api->CallFlutterEchoDouble(
|
||||
a_double_arg, [reply](ErrorOr<double>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
wrapped.push_back(
|
||||
flutter::EncodableValue(std::move(output).TakeValue()));
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
@ -1348,6 +1543,399 @@ void HostIntegrationCoreApi::SetUp(flutter::BinaryMessenger* binary_messenger,
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoUint8List",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_list_arg = args.at(0);
|
||||
if (encodable_a_list_arg.IsNull()) {
|
||||
reply(WrapError("a_list_arg unexpectedly null."));
|
||||
return;
|
||||
}
|
||||
const auto& a_list_arg =
|
||||
std::get<std::vector<uint8_t>>(encodable_a_list_arg);
|
||||
api->CallFlutterEchoUint8List(
|
||||
a_list_arg, [reply](ErrorOr<std::vector<uint8_t>>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
wrapped.push_back(
|
||||
flutter::EncodableValue(std::move(output).TakeValue()));
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoList",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_list_arg = args.at(0);
|
||||
if (encodable_a_list_arg.IsNull()) {
|
||||
reply(WrapError("a_list_arg unexpectedly null."));
|
||||
return;
|
||||
}
|
||||
const auto& a_list_arg =
|
||||
std::get<flutter::EncodableList>(encodable_a_list_arg);
|
||||
api->CallFlutterEchoList(
|
||||
a_list_arg,
|
||||
[reply](ErrorOr<flutter::EncodableList>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
wrapped.push_back(
|
||||
flutter::EncodableValue(std::move(output).TakeValue()));
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoMap",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_map_arg = args.at(0);
|
||||
if (encodable_a_map_arg.IsNull()) {
|
||||
reply(WrapError("a_map_arg unexpectedly null."));
|
||||
return;
|
||||
}
|
||||
const auto& a_map_arg =
|
||||
std::get<flutter::EncodableMap>(encodable_a_map_arg);
|
||||
api->CallFlutterEchoMap(
|
||||
a_map_arg, [reply](ErrorOr<flutter::EncodableMap>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
wrapped.push_back(
|
||||
flutter::EncodableValue(std::move(output).TakeValue()));
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableBool",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_bool_arg = args.at(0);
|
||||
const auto* a_bool_arg = std::get_if<bool>(&encodable_a_bool_arg);
|
||||
api->CallFlutterEchoNullableBool(
|
||||
a_bool_arg, [reply](ErrorOr<std::optional<bool>>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
auto output_optional = std::move(output).TakeValue();
|
||||
if (output_optional) {
|
||||
wrapped.push_back(flutter::EncodableValue(
|
||||
std::move(output_optional).value()));
|
||||
} else {
|
||||
wrapped.push_back(flutter::EncodableValue());
|
||||
}
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableInt",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_an_int_arg = args.at(0);
|
||||
const int64_t an_int_arg_value =
|
||||
encodable_an_int_arg.IsNull()
|
||||
? 0
|
||||
: encodable_an_int_arg.LongValue();
|
||||
const auto* an_int_arg =
|
||||
encodable_an_int_arg.IsNull() ? nullptr : &an_int_arg_value;
|
||||
api->CallFlutterEchoNullableInt(
|
||||
an_int_arg,
|
||||
[reply](ErrorOr<std::optional<int64_t>>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
auto output_optional = std::move(output).TakeValue();
|
||||
if (output_optional) {
|
||||
wrapped.push_back(flutter::EncodableValue(
|
||||
std::move(output_optional).value()));
|
||||
} else {
|
||||
wrapped.push_back(flutter::EncodableValue());
|
||||
}
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi."
|
||||
"callFlutterEchoNullableDouble",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_double_arg = args.at(0);
|
||||
const auto* a_double_arg =
|
||||
std::get_if<double>(&encodable_a_double_arg);
|
||||
api->CallFlutterEchoNullableDouble(
|
||||
a_double_arg,
|
||||
[reply](ErrorOr<std::optional<double>>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
auto output_optional = std::move(output).TakeValue();
|
||||
if (output_optional) {
|
||||
wrapped.push_back(flutter::EncodableValue(
|
||||
std::move(output_optional).value()));
|
||||
} else {
|
||||
wrapped.push_back(flutter::EncodableValue());
|
||||
}
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi."
|
||||
"callFlutterEchoNullableString",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_string_arg = args.at(0);
|
||||
const auto* a_string_arg =
|
||||
std::get_if<std::string>(&encodable_a_string_arg);
|
||||
api->CallFlutterEchoNullableString(
|
||||
a_string_arg,
|
||||
[reply](ErrorOr<std::optional<std::string>>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
auto output_optional = std::move(output).TakeValue();
|
||||
if (output_optional) {
|
||||
wrapped.push_back(flutter::EncodableValue(
|
||||
std::move(output_optional).value()));
|
||||
} else {
|
||||
wrapped.push_back(flutter::EncodableValue());
|
||||
}
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi."
|
||||
"callFlutterEchoNullableUint8List",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_list_arg = args.at(0);
|
||||
const auto* a_list_arg =
|
||||
std::get_if<std::vector<uint8_t>>(&encodable_a_list_arg);
|
||||
api->CallFlutterEchoNullableUint8List(
|
||||
a_list_arg,
|
||||
[reply](
|
||||
ErrorOr<std::optional<std::vector<uint8_t>>>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
auto output_optional = std::move(output).TakeValue();
|
||||
if (output_optional) {
|
||||
wrapped.push_back(flutter::EncodableValue(
|
||||
std::move(output_optional).value()));
|
||||
} else {
|
||||
wrapped.push_back(flutter::EncodableValue());
|
||||
}
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableList",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_list_arg = args.at(0);
|
||||
const auto* a_list_arg =
|
||||
std::get_if<flutter::EncodableList>(&encodable_a_list_arg);
|
||||
api->CallFlutterEchoNullableList(
|
||||
a_list_arg,
|
||||
[reply](
|
||||
ErrorOr<std::optional<flutter::EncodableList>>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
auto output_optional = std::move(output).TakeValue();
|
||||
if (output_optional) {
|
||||
wrapped.push_back(flutter::EncodableValue(
|
||||
std::move(output_optional).value()));
|
||||
} else {
|
||||
wrapped.push_back(flutter::EncodableValue());
|
||||
}
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
{
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger,
|
||||
"dev.flutter.pigeon.HostIntegrationCoreApi.callFlutterEchoNullableMap",
|
||||
&GetCodec());
|
||||
if (api != nullptr) {
|
||||
channel->SetMessageHandler(
|
||||
[api](const flutter::EncodableValue& message,
|
||||
const flutter::MessageReply<flutter::EncodableValue>& reply) {
|
||||
try {
|
||||
const auto& args = std::get<flutter::EncodableList>(message);
|
||||
const auto& encodable_a_map_arg = args.at(0);
|
||||
const auto* a_map_arg =
|
||||
std::get_if<flutter::EncodableMap>(&encodable_a_map_arg);
|
||||
api->CallFlutterEchoNullableMap(
|
||||
a_map_arg,
|
||||
[reply](
|
||||
ErrorOr<std::optional<flutter::EncodableMap>>&& output) {
|
||||
if (output.has_error()) {
|
||||
reply(WrapError(output.error()));
|
||||
return;
|
||||
}
|
||||
flutter::EncodableList wrapped;
|
||||
auto output_optional = std::move(output).TakeValue();
|
||||
if (output_optional) {
|
||||
wrapped.push_back(flutter::EncodableValue(
|
||||
std::move(output_optional).value()));
|
||||
} else {
|
||||
wrapped.push_back(flutter::EncodableValue());
|
||||
}
|
||||
reply(flutter::EncodableValue(std::move(wrapped)));
|
||||
});
|
||||
} catch (const std::exception& exception) {
|
||||
reply(WrapError(exception.what()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
channel->SetMessageHandler(nullptr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
flutter::EncodableValue HostIntegrationCoreApi::WrapError(
|
||||
@ -1826,8 +2414,8 @@ void FlutterIntegrationCoreApi::EchoNullableList(
|
||||
});
|
||||
}
|
||||
void FlutterIntegrationCoreApi::EchoNullableMap(
|
||||
const flutter::EncodableMap& a_map_arg,
|
||||
std::function<void(const flutter::EncodableMap&)>&& on_success,
|
||||
const flutter::EncodableMap* a_map_arg,
|
||||
std::function<void(const flutter::EncodableMap*)>&& on_success,
|
||||
std::function<void(const FlutterError&)>&& on_error) {
|
||||
auto channel = std::make_unique<flutter::BasicMessageChannel<>>(
|
||||
binary_messenger_,
|
||||
@ -1835,7 +2423,8 @@ void FlutterIntegrationCoreApi::EchoNullableMap(
|
||||
&GetCodec());
|
||||
flutter::EncodableValue encoded_api_arguments =
|
||||
flutter::EncodableValue(flutter::EncodableList{
|
||||
flutter::EncodableValue(a_map_arg),
|
||||
a_map_arg ? flutter::EncodableValue(*a_map_arg)
|
||||
: flutter::EncodableValue(),
|
||||
});
|
||||
channel->Send(
|
||||
encoded_api_arguments,
|
||||
@ -1844,8 +2433,8 @@ void FlutterIntegrationCoreApi::EchoNullableMap(
|
||||
std::unique_ptr<flutter::EncodableValue> response =
|
||||
GetCodec().DecodeMessage(reply, reply_size);
|
||||
const auto& encodable_return_value = *response;
|
||||
const auto& return_value =
|
||||
std::get<flutter::EncodableMap>(encodable_return_value);
|
||||
const auto* return_value =
|
||||
std::get_if<flutter::EncodableMap>(&encodable_return_value);
|
||||
on_success(return_value);
|
||||
});
|
||||
}
|
||||
|
@ -327,9 +327,56 @@ class HostIntegrationCoreApi {
|
||||
std::function<void(ErrorOr<std::string> reply)> result) = 0;
|
||||
virtual void CallFlutterNoop(
|
||||
std::function<void(std::optional<FlutterError> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoAllTypes(
|
||||
const AllTypes& everything,
|
||||
std::function<void(ErrorOr<AllTypes> reply)> result) = 0;
|
||||
virtual void CallFlutterSendMultipleNullableTypes(
|
||||
const bool* a_nullable_bool, const int64_t* a_nullable_int,
|
||||
const std::string* a_nullable_string,
|
||||
std::function<void(ErrorOr<AllNullableTypes> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoBool(
|
||||
bool a_bool, std::function<void(ErrorOr<bool> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoInt(
|
||||
int64_t an_int, std::function<void(ErrorOr<int64_t> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoDouble(
|
||||
double a_double, std::function<void(ErrorOr<double> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoString(
|
||||
const std::string& a_string,
|
||||
std::function<void(ErrorOr<std::string> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoUint8List(
|
||||
const std::vector<uint8_t>& a_list,
|
||||
std::function<void(ErrorOr<std::vector<uint8_t>> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoList(
|
||||
const flutter::EncodableList& a_list,
|
||||
std::function<void(ErrorOr<flutter::EncodableList> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoMap(
|
||||
const flutter::EncodableMap& a_map,
|
||||
std::function<void(ErrorOr<flutter::EncodableMap> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoNullableBool(
|
||||
const bool* a_bool,
|
||||
std::function<void(ErrorOr<std::optional<bool>> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoNullableInt(
|
||||
const int64_t* an_int,
|
||||
std::function<void(ErrorOr<std::optional<int64_t>> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoNullableDouble(
|
||||
const double* a_double,
|
||||
std::function<void(ErrorOr<std::optional<double>> reply)> result) = 0;
|
||||
virtual void CallFlutterEchoNullableString(
|
||||
const std::string* a_string,
|
||||
std::function<void(ErrorOr<std::optional<std::string>> reply)>
|
||||
result) = 0;
|
||||
virtual void CallFlutterEchoNullableUint8List(
|
||||
const std::vector<uint8_t>* a_list,
|
||||
std::function<void(ErrorOr<std::optional<std::vector<uint8_t>>> reply)>
|
||||
result) = 0;
|
||||
virtual void CallFlutterEchoNullableList(
|
||||
const flutter::EncodableList* a_list,
|
||||
std::function<void(ErrorOr<std::optional<flutter::EncodableList>> reply)>
|
||||
result) = 0;
|
||||
virtual void CallFlutterEchoNullableMap(
|
||||
const flutter::EncodableMap* a_map,
|
||||
std::function<void(ErrorOr<std::optional<flutter::EncodableMap>> reply)>
|
||||
result) = 0;
|
||||
|
||||
// The codec used by HostIntegrationCoreApi.
|
||||
static const flutter::StandardMessageCodec& GetCodec();
|
||||
@ -449,8 +496,8 @@ class FlutterIntegrationCoreApi {
|
||||
std::function<void(const FlutterError&)>&& on_error);
|
||||
// Returns the passed map, to test serialization and deserialization.
|
||||
void EchoNullableMap(
|
||||
const flutter::EncodableMap& a_map,
|
||||
std::function<void(const flutter::EncodableMap&)>&& on_success,
|
||||
const flutter::EncodableMap* a_map,
|
||||
std::function<void(const flutter::EncodableMap*)>&& on_success,
|
||||
std::function<void(const FlutterError&)>&& on_error);
|
||||
};
|
||||
|
||||
|
@ -23,6 +23,9 @@ using core_tests_pigeontest::ErrorOr;
|
||||
using core_tests_pigeontest::FlutterError;
|
||||
using core_tests_pigeontest::FlutterIntegrationCoreApi;
|
||||
using core_tests_pigeontest::HostIntegrationCoreApi;
|
||||
using flutter::EncodableList;
|
||||
using flutter::EncodableMap;
|
||||
using flutter::EncodableValue;
|
||||
|
||||
// static
|
||||
void TestPlugin::RegisterWithRegistrar(
|
||||
@ -73,8 +76,8 @@ ErrorOr<std::vector<uint8_t>> TestPlugin::EchoUint8List(
|
||||
return a_uint8_list;
|
||||
}
|
||||
|
||||
ErrorOr<flutter::EncodableValue> TestPlugin::EchoObject(
|
||||
const flutter::EncodableValue& an_object) {
|
||||
ErrorOr<EncodableValue> TestPlugin::EchoObject(
|
||||
const EncodableValue& an_object) {
|
||||
return an_object;
|
||||
}
|
||||
|
||||
@ -158,8 +161,8 @@ ErrorOr<std::optional<std::vector<uint8_t>>> TestPlugin::EchoNullableUint8List(
|
||||
return *a_nullable_uint8_list;
|
||||
};
|
||||
|
||||
ErrorOr<std::optional<flutter::EncodableValue>> TestPlugin::EchoNullableObject(
|
||||
const flutter::EncodableValue* a_nullable_object) {
|
||||
ErrorOr<std::optional<EncodableValue>> TestPlugin::EchoNullableObject(
|
||||
const EncodableValue* a_nullable_object) {
|
||||
if (!a_nullable_object) {
|
||||
return std::nullopt;
|
||||
}
|
||||
@ -183,12 +186,153 @@ void TestPlugin::CallFlutterNoop(
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoAllTypes(
|
||||
const AllTypes& everything,
|
||||
std::function<void(ErrorOr<AllTypes> reply)> result) {
|
||||
flutter_api_->EchoAllTypes(
|
||||
everything, [result](const AllTypes& echo) { result(echo); },
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterSendMultipleNullableTypes(
|
||||
const bool* a_nullable_bool, const int64_t* a_nullable_int,
|
||||
const std::string* a_nullable_string,
|
||||
std::function<void(ErrorOr<AllNullableTypes> reply)> result) {
|
||||
flutter_api_->SendMultipleNullableTypes(
|
||||
a_nullable_bool, a_nullable_int, a_nullable_string,
|
||||
[result](const AllNullableTypes& echo) { result(echo); },
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoBool(
|
||||
bool a_bool, std::function<void(ErrorOr<bool> reply)> result) {
|
||||
flutter_api_->EchoBool(
|
||||
a_bool, [result](bool echo) { result(echo); },
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoInt(
|
||||
int64_t an_int, std::function<void(ErrorOr<int64_t> reply)> result) {
|
||||
flutter_api_->EchoInt(
|
||||
an_int, [result](int64_t echo) { result(echo); },
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoDouble(
|
||||
double a_double, std::function<void(ErrorOr<double> reply)> result) {
|
||||
flutter_api_->EchoDouble(
|
||||
a_double, [result](double echo) { result(echo); },
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoString(
|
||||
const std::string& a_string,
|
||||
std::function<void(ErrorOr<std::string> reply)> result) {
|
||||
flutter_api_->EchoString(
|
||||
a_string, [result](const std::string& echo) { result(echo); },
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoUint8List(
|
||||
const std::vector<uint8_t>& a_list,
|
||||
std::function<void(ErrorOr<std::vector<uint8_t>> reply)> result) {
|
||||
flutter_api_->EchoUint8List(
|
||||
a_list, [result](const std::vector<uint8_t>& echo) { result(echo); },
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoList(
|
||||
const EncodableList& a_list,
|
||||
std::function<void(ErrorOr<EncodableList> reply)> result) {
|
||||
flutter_api_->EchoList(
|
||||
a_list, [result](const EncodableList& echo) { result(echo); },
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoMap(
|
||||
const EncodableMap& a_map,
|
||||
std::function<void(ErrorOr<EncodableMap> reply)> result) {
|
||||
flutter_api_->EchoMap(
|
||||
a_map, [result](const EncodableMap& echo) { result(echo); },
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoNullableBool(
|
||||
const bool* a_bool,
|
||||
std::function<void(ErrorOr<std::optional<bool>> reply)> result) {
|
||||
flutter_api_->EchoNullableBool(
|
||||
a_bool,
|
||||
[result](const bool* echo) {
|
||||
result(echo ? std::optional<bool>(*echo) : std::nullopt);
|
||||
},
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoNullableInt(
|
||||
const int64_t* an_int,
|
||||
std::function<void(ErrorOr<std::optional<int64_t>> reply)> result) {
|
||||
flutter_api_->EchoNullableInt(
|
||||
an_int,
|
||||
[result](const int64_t* echo) {
|
||||
result(echo ? std::optional<int64_t>(*echo) : std::nullopt);
|
||||
},
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoNullableDouble(
|
||||
const double* a_double,
|
||||
std::function<void(ErrorOr<std::optional<double>> reply)> result) {
|
||||
flutter_api_->EchoNullableDouble(
|
||||
a_double,
|
||||
[result](const double* echo) {
|
||||
result(echo ? std::optional<double>(*echo) : std::nullopt);
|
||||
},
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoNullableString(
|
||||
const std::string* a_string,
|
||||
std::function<void(ErrorOr<std::optional<std::string>> reply)> result) {
|
||||
flutter_api_->EchoNullableString(
|
||||
a_string,
|
||||
[result](const std::string& flutter_string) { result(flutter_string); },
|
||||
[result](const std::string* echo) {
|
||||
result(echo ? std::optional<std::string>(*echo) : std::nullopt);
|
||||
},
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoNullableUint8List(
|
||||
const std::vector<uint8_t>* a_list,
|
||||
std::function<void(ErrorOr<std::optional<std::vector<uint8_t>>> reply)>
|
||||
result) {
|
||||
flutter_api_->EchoNullableUint8List(
|
||||
a_list,
|
||||
[result](const std::vector<uint8_t>* echo) {
|
||||
result(echo ? std::optional<std::vector<uint8_t>>(*echo)
|
||||
: std::nullopt);
|
||||
},
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoNullableList(
|
||||
const EncodableList* a_list,
|
||||
std::function<void(ErrorOr<std::optional<EncodableList>> reply)> result) {
|
||||
flutter_api_->EchoNullableList(
|
||||
a_list,
|
||||
[result](const EncodableList* echo) {
|
||||
result(echo ? std::optional<EncodableList>(*echo) : std::nullopt);
|
||||
},
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
void TestPlugin::CallFlutterEchoNullableMap(
|
||||
const EncodableMap* a_map,
|
||||
std::function<void(ErrorOr<std::optional<EncodableMap>> reply)> result) {
|
||||
flutter_api_->EchoNullableMap(
|
||||
a_map,
|
||||
[result](const EncodableMap* echo) {
|
||||
result(echo ? std::optional<EncodableMap>(*echo) : std::nullopt);
|
||||
},
|
||||
[result](const FlutterError& error) { result(error); });
|
||||
}
|
||||
|
||||
|
@ -82,10 +82,88 @@ class TestPlugin : public flutter::Plugin,
|
||||
std::function<
|
||||
void(std::optional<core_tests_pigeontest::FlutterError> reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoAllTypes(
|
||||
const core_tests_pigeontest::AllTypes& everything,
|
||||
std::function<
|
||||
void(core_tests_pigeontest::ErrorOr<core_tests_pigeontest::AllTypes>
|
||||
reply)>
|
||||
result) override;
|
||||
void CallFlutterSendMultipleNullableTypes(
|
||||
const bool* a_nullable_bool, const int64_t* a_nullable_int,
|
||||
const std::string* a_nullable_string,
|
||||
std::function<void(core_tests_pigeontest::ErrorOr<
|
||||
core_tests_pigeontest::AllNullableTypes>
|
||||
reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoBool(
|
||||
bool a_bool,
|
||||
std::function<void(core_tests_pigeontest::ErrorOr<bool> reply)> result)
|
||||
override;
|
||||
void CallFlutterEchoInt(
|
||||
int64_t an_int,
|
||||
std::function<void(core_tests_pigeontest::ErrorOr<int64_t> reply)> result)
|
||||
override;
|
||||
void CallFlutterEchoDouble(
|
||||
double a_double,
|
||||
std::function<void(core_tests_pigeontest::ErrorOr<double> reply)> result)
|
||||
override;
|
||||
void CallFlutterEchoString(
|
||||
const std::string& a_string,
|
||||
std::function<void(core_tests_pigeontest::ErrorOr<std::string> reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoUint8List(
|
||||
const std::vector<uint8_t>& a_list,
|
||||
std::function<
|
||||
void(core_tests_pigeontest::ErrorOr<std::vector<uint8_t>> reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoList(
|
||||
const flutter::EncodableList& a_list,
|
||||
std::function<
|
||||
void(core_tests_pigeontest::ErrorOr<flutter::EncodableList> reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoMap(
|
||||
const flutter::EncodableMap& a_map,
|
||||
std::function<
|
||||
void(core_tests_pigeontest::ErrorOr<flutter::EncodableMap> reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoNullableBool(
|
||||
const bool* a_bool,
|
||||
std::function<
|
||||
void(core_tests_pigeontest::ErrorOr<std::optional<bool>> reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoNullableInt(
|
||||
const int64_t* an_int,
|
||||
std::function<
|
||||
void(core_tests_pigeontest::ErrorOr<std::optional<int64_t>> reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoNullableDouble(
|
||||
const double* a_double,
|
||||
std::function<
|
||||
void(core_tests_pigeontest::ErrorOr<std::optional<double>> reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoNullableString(
|
||||
const std::string* a_string,
|
||||
std::function<void(
|
||||
core_tests_pigeontest::ErrorOr<std::optional<std::string>> reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoNullableUint8List(
|
||||
const std::vector<uint8_t>* a_list,
|
||||
std::function<void(
|
||||
core_tests_pigeontest::ErrorOr<std::optional<std::vector<uint8_t>>>
|
||||
reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoNullableList(
|
||||
const flutter::EncodableList* a_list,
|
||||
std::function<void(
|
||||
core_tests_pigeontest::ErrorOr<std::optional<flutter::EncodableList>>
|
||||
reply)>
|
||||
result) override;
|
||||
void CallFlutterEchoNullableMap(
|
||||
const flutter::EncodableMap* a_map,
|
||||
std::function<void(
|
||||
core_tests_pigeontest::ErrorOr<std::optional<flutter::EncodableMap>>
|
||||
reply)>
|
||||
result) override;
|
||||
|
||||
private:
|
||||
std::unique_ptr<core_tests_pigeontest::FlutterIntegrationCoreApi>
|
||||
|
Reference in New Issue
Block a user