mirror of
https://github.com/timokz/flutter-vienna-hackathon-25.git
synced 2025-11-08 21:24:20 +01:00
add auth module
This commit is contained in:
parent
6e78ac2665
commit
c952f17e30
7 changed files with 195 additions and 73 deletions
|
|
@ -12,7 +12,8 @@
|
||||||
import 'package:serverpod_client/serverpod_client.dart' as _i1;
|
import 'package:serverpod_client/serverpod_client.dart' as _i1;
|
||||||
import 'dart:async' as _i2;
|
import 'dart:async' as _i2;
|
||||||
import 'package:wien_talks_client/src/protocol/greeting.dart' as _i3;
|
import 'package:wien_talks_client/src/protocol/greeting.dart' as _i3;
|
||||||
import 'protocol.dart' as _i4;
|
import 'package:serverpod_auth_client/serverpod_auth_client.dart' as _i4;
|
||||||
|
import 'protocol.dart' as _i5;
|
||||||
|
|
||||||
/// This is an example endpoint that returns a greeting message through
|
/// This is an example endpoint that returns a greeting message through
|
||||||
/// its [hello] method.
|
/// its [hello] method.
|
||||||
|
|
@ -32,19 +33,12 @@ class EndpointGreeting extends _i1.EndpointRef {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// {@category Endpoint}
|
class Modules {
|
||||||
class EndpointRecipe extends _i1.EndpointRef {
|
Modules(Client client) {
|
||||||
EndpointRecipe(_i1.EndpointCaller caller) : super(caller);
|
auth = _i4.Caller(client);
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
late final _i4.Caller auth;
|
||||||
String get name => 'recipe';
|
|
||||||
|
|
||||||
_i2.Future<String> postQuote(String quote) =>
|
|
||||||
caller.callServerEndpoint<String>(
|
|
||||||
'recipe',
|
|
||||||
'postQuote',
|
|
||||||
{'quote': quote},
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class Client extends _i1.ServerpodClientShared {
|
class Client extends _i1.ServerpodClientShared {
|
||||||
|
|
@ -63,7 +57,7 @@ class Client extends _i1.ServerpodClientShared {
|
||||||
bool? disconnectStreamsOnLostInternetConnection,
|
bool? disconnectStreamsOnLostInternetConnection,
|
||||||
}) : super(
|
}) : super(
|
||||||
host,
|
host,
|
||||||
_i4.Protocol(),
|
_i5.Protocol(),
|
||||||
securityContext: securityContext,
|
securityContext: securityContext,
|
||||||
authenticationKeyManager: authenticationKeyManager,
|
authenticationKeyManager: authenticationKeyManager,
|
||||||
streamingConnectionTimeout: streamingConnectionTimeout,
|
streamingConnectionTimeout: streamingConnectionTimeout,
|
||||||
|
|
@ -74,19 +68,17 @@ class Client extends _i1.ServerpodClientShared {
|
||||||
disconnectStreamsOnLostInternetConnection,
|
disconnectStreamsOnLostInternetConnection,
|
||||||
) {
|
) {
|
||||||
greeting = EndpointGreeting(this);
|
greeting = EndpointGreeting(this);
|
||||||
recipe = EndpointRecipe(this);
|
modules = Modules(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
late final EndpointGreeting greeting;
|
late final EndpointGreeting greeting;
|
||||||
|
|
||||||
late final EndpointRecipe recipe;
|
late final Modules modules;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Map<String, _i1.EndpointRef> get endpointRefLookup => {
|
Map<String, _i1.EndpointRef> get endpointRefLookup => {'greeting': greeting};
|
||||||
'greeting': greeting,
|
|
||||||
'recipe': recipe,
|
|
||||||
};
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Map<String, _i1.ModuleEndpointCaller> get moduleLookup => {};
|
Map<String, _i1.ModuleEndpointCaller> get moduleLookup =>
|
||||||
|
{'auth': modules.auth};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ import 'package:serverpod_client/serverpod_client.dart' as _i1;
|
||||||
import 'greeting.dart' as _i2;
|
import 'greeting.dart' as _i2;
|
||||||
import 'quotes/create_quote.dart' as _i3;
|
import 'quotes/create_quote.dart' as _i3;
|
||||||
import 'quotes/quote.dart' as _i4;
|
import 'quotes/quote.dart' as _i4;
|
||||||
|
import 'package:serverpod_auth_client/serverpod_auth_client.dart' as _i5;
|
||||||
export 'greeting.dart';
|
export 'greeting.dart';
|
||||||
export 'quotes/create_quote.dart';
|
export 'quotes/create_quote.dart';
|
||||||
export 'quotes/quote.dart';
|
export 'quotes/quote.dart';
|
||||||
|
|
@ -59,6 +60,9 @@ class Protocol extends _i1.SerializationManager {
|
||||||
? (data as List).map((e) => deserialize<String>(e)).toList()
|
? (data as List).map((e) => deserialize<String>(e)).toList()
|
||||||
: null) as T;
|
: null) as T;
|
||||||
}
|
}
|
||||||
|
try {
|
||||||
|
return _i5.Protocol().deserialize<T>(data, t);
|
||||||
|
} on _i1.DeserializationTypeNotFoundException catch (_) {}
|
||||||
return super.deserialize<T>(data, t);
|
return super.deserialize<T>(data, t);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -75,6 +79,10 @@ class Protocol extends _i1.SerializationManager {
|
||||||
if (data is _i4.Quote) {
|
if (data is _i4.Quote) {
|
||||||
return 'Quote';
|
return 'Quote';
|
||||||
}
|
}
|
||||||
|
className = _i5.Protocol().getClassNameForObject(data);
|
||||||
|
if (className != null) {
|
||||||
|
return 'serverpod_auth.$className';
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -93,6 +101,10 @@ class Protocol extends _i1.SerializationManager {
|
||||||
if (dataClassName == 'Quote') {
|
if (dataClassName == 'Quote') {
|
||||||
return deserialize<_i4.Quote>(data['data']);
|
return deserialize<_i4.Quote>(data['data']);
|
||||||
}
|
}
|
||||||
|
if (dataClassName.startsWith('serverpod_auth.')) {
|
||||||
|
data['className'] = dataClassName.substring(15);
|
||||||
|
return _i5.Protocol().deserializeByClassName(data);
|
||||||
|
}
|
||||||
return super.deserializeByClassName(data);
|
return super.deserializeByClassName(data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
import 'package:wien_talks_server/src/birthday_reminder.dart';
|
|
||||||
import 'package:serverpod/serverpod.dart';
|
import 'package:serverpod/serverpod.dart';
|
||||||
|
import 'package:serverpod_auth_server/serverpod_auth_server.dart' as auth;
|
||||||
|
import 'package:wien_talks_server/src/birthday_reminder.dart';
|
||||||
import 'package:wien_talks_server/src/web/routes/root.dart';
|
import 'package:wien_talks_server/src/web/routes/root.dart';
|
||||||
|
|
||||||
import 'src/generated/protocol.dart';
|
|
||||||
import 'src/generated/endpoints.dart';
|
import 'src/generated/endpoints.dart';
|
||||||
|
import 'src/generated/protocol.dart';
|
||||||
|
|
||||||
// This is the starting point of your Serverpod server. In most cases, you will
|
// This is the starting point of your Serverpod server. In most cases, you will
|
||||||
// only need to make additions to this file if you add future calls, are
|
// only need to make additions to this file if you add future calls, are
|
||||||
|
|
@ -12,7 +12,12 @@ import 'src/generated/endpoints.dart';
|
||||||
|
|
||||||
void run(List<String> args) async {
|
void run(List<String> args) async {
|
||||||
// Initialize Serverpod and connect it with your generated code.
|
// Initialize Serverpod and connect it with your generated code.
|
||||||
final pod = Serverpod(args, Protocol(), Endpoints());
|
final pod = Serverpod(
|
||||||
|
args,
|
||||||
|
Protocol(),
|
||||||
|
Endpoints(),
|
||||||
|
authenticationHandler: auth.authenticationHandler,
|
||||||
|
);
|
||||||
|
|
||||||
// Setup a default page at the web root.
|
// Setup a default page at the web root.
|
||||||
pod.webServer.addRoute(RouteRoot(), '/');
|
pod.webServer.addRoute(RouteRoot(), '/');
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,2 @@
|
||||||
greeting:
|
greeting:
|
||||||
- hello:
|
- hello:
|
||||||
recipe:
|
|
||||||
- postQuote:
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,14 @@
|
||||||
# Generated by pub
|
# Generated by pub
|
||||||
# See https://dart.dev/tools/pub/glossary#lockfile
|
# See https://dart.dev/tools/pub/glossary#lockfile
|
||||||
packages:
|
packages:
|
||||||
|
_discoveryapis_commons:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: _discoveryapis_commons
|
||||||
|
sha256: "113c4100b90a5b70a983541782431b82168b3cae166ab130649c36eb3559d498"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "1.0.7"
|
||||||
_fe_analyzer_shared:
|
_fe_analyzer_shared:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -17,6 +25,14 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "8.1.1"
|
version: "8.1.1"
|
||||||
|
archive:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: archive
|
||||||
|
sha256: "2fde1607386ab523f7a36bb3e7edb43bd58e6edaf2ffb29d8a6d578b297fdbbd"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "4.0.7"
|
||||||
args:
|
args:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -25,6 +41,14 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.7.0"
|
version: "2.7.0"
|
||||||
|
asn1lib:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: asn1lib
|
||||||
|
sha256: "9a8f69025044eb466b9b60ef3bc3ac99b4dc6c158ae9c56d25eeccf5bc56d024"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "1.6.5"
|
||||||
async:
|
async:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -65,6 +89,14 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.2.0"
|
version: "0.2.0"
|
||||||
|
clock:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: clock
|
||||||
|
sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "1.1.2"
|
||||||
collection:
|
collection:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -97,6 +129,30 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.0.6"
|
version: "3.0.6"
|
||||||
|
crypto_keys:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: crypto_keys
|
||||||
|
sha256: acc19abf34623d990a0e8aec69463d74a824c31f137128f42e2810befc509ad0
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "0.3.0+1"
|
||||||
|
email_validator:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: email_validator
|
||||||
|
sha256: b19aa5d92fdd76fbc65112060c94d45ba855105a28bb6e462de7ff03b12fa1fb
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "3.0.0"
|
||||||
|
ffi:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: ffi
|
||||||
|
sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "2.1.4"
|
||||||
file:
|
file:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -137,6 +193,30 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.1.3"
|
version: "2.1.3"
|
||||||
|
google_identity_services_web:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: google_identity_services_web
|
||||||
|
sha256: "5d187c46dc59e02646e10fe82665fc3884a9b71bc1c90c2b8b749316d33ee454"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "0.3.3+1"
|
||||||
|
googleapis:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: googleapis
|
||||||
|
sha256: "5c9e0f25be1dec13d8d2158263141104c51b5ba83487537c17a2330581e505ee"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "14.0.0"
|
||||||
|
googleapis_auth:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: googleapis_auth
|
||||||
|
sha256: b81fe352cc4a330b3710d2b7ad258d9bcef6f909bb759b306bf42973a7d046db
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "2.0.0"
|
||||||
http:
|
http:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -161,6 +241,14 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "4.1.2"
|
version: "4.1.2"
|
||||||
|
image:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: image
|
||||||
|
sha256: "4e973fcf4caae1a4be2fa0a13157aa38a8f9cb049db6529aa00b4d71abc4d928"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "4.5.4"
|
||||||
io:
|
io:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -169,6 +257,14 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.0.5"
|
version: "1.0.5"
|
||||||
|
jose:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: jose
|
||||||
|
sha256: "7955ec5d131960104e81fbf151abacb9d835c16c9e793ed394b2809f28b2198d"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "0.3.4"
|
||||||
js:
|
js:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -233,6 +329,14 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.0.2"
|
version: "2.0.2"
|
||||||
|
openid_client:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: openid_client
|
||||||
|
sha256: "1d39a829dc770947bf8ec8684a3456743ef0205a777371efe16773a44163eb6a"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "0.4.9"
|
||||||
package_config:
|
package_config:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -249,6 +353,22 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.9.1"
|
version: "1.9.1"
|
||||||
|
petitparser:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: petitparser
|
||||||
|
sha256: "1a97266a94f7350d30ae522c0af07890c70b8e62c71e8e3920d1db4d23c057d1"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "7.0.1"
|
||||||
|
pointycastle:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: pointycastle
|
||||||
|
sha256: "4be0097fcf3fd3e8449e53730c631200ebc7b88016acecab2b0da2f0149222fe"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "3.9.1"
|
||||||
pool:
|
pool:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -257,6 +377,14 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.5.1"
|
version: "1.5.1"
|
||||||
|
posix:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: posix
|
||||||
|
sha256: "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "6.0.3"
|
||||||
postgres:
|
postgres:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -273,6 +401,14 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.2.0"
|
version: "2.2.0"
|
||||||
|
quiver:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: quiver
|
||||||
|
sha256: ea0b925899e64ecdfbf9c7becb60d5b50e706ade44a85b2363be2a22d88117d2
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "3.2.2"
|
||||||
redis:
|
redis:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -313,6 +449,14 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.9.1"
|
version: "2.9.1"
|
||||||
|
serverpod_auth_server:
|
||||||
|
dependency: "direct main"
|
||||||
|
description:
|
||||||
|
name: serverpod_auth_server
|
||||||
|
sha256: ad393f09b5ed82b624c9d299b61d945fb07729a0a704faa67795588200168369
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "2.9.1"
|
||||||
serverpod_lints:
|
serverpod_lints:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -561,6 +705,22 @@ packages:
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.2.1"
|
version: "1.2.1"
|
||||||
|
x509:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: x509
|
||||||
|
sha256: cbd1a63846884afd273cda247b0365284c8d85a365ca98e110413f93d105b935
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "0.2.4+3"
|
||||||
|
xml:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: xml
|
||||||
|
sha256: "3202a47961c1a0af6097c9f8c1b492d705248ba309e6f7a72410422c05046851"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "6.6.0"
|
||||||
yaml:
|
yaml:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ environment:
|
||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
serverpod: 2.9.1
|
serverpod: 2.9.1
|
||||||
|
serverpod_auth_server: ^2.9.1
|
||||||
|
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
lints: '>=3.0.0 <7.0.0'
|
lints: '>=3.0.0 <7.0.0'
|
||||||
|
|
|
||||||
|
|
@ -102,8 +102,6 @@ void withServerpod(
|
||||||
|
|
||||||
class TestEndpoints {
|
class TestEndpoints {
|
||||||
late final _GreetingEndpoint greeting;
|
late final _GreetingEndpoint greeting;
|
||||||
|
|
||||||
late final _RecipeEndpoint recipe;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class _InternalTestEndpoints extends TestEndpoints
|
class _InternalTestEndpoints extends TestEndpoints
|
||||||
|
|
@ -117,10 +115,6 @@ class _InternalTestEndpoints extends TestEndpoints
|
||||||
endpoints,
|
endpoints,
|
||||||
serializationManager,
|
serializationManager,
|
||||||
);
|
);
|
||||||
recipe = _RecipeEndpoint(
|
|
||||||
endpoints,
|
|
||||||
serializationManager,
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -163,43 +157,3 @@ class _GreetingEndpoint {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class _RecipeEndpoint {
|
|
||||||
_RecipeEndpoint(
|
|
||||||
this._endpointDispatch,
|
|
||||||
this._serializationManager,
|
|
||||||
);
|
|
||||||
|
|
||||||
final _i2.EndpointDispatch _endpointDispatch;
|
|
||||||
|
|
||||||
final _i2.SerializationManager _serializationManager;
|
|
||||||
|
|
||||||
_i3.Future<String> postQuote(
|
|
||||||
_i1.TestSessionBuilder sessionBuilder,
|
|
||||||
String quote,
|
|
||||||
) async {
|
|
||||||
return _i1.callAwaitableFunctionAndHandleExceptions(() async {
|
|
||||||
var _localUniqueSession =
|
|
||||||
(sessionBuilder as _i1.InternalTestSessionBuilder).internalBuild(
|
|
||||||
endpoint: 'recipe',
|
|
||||||
method: 'postQuote',
|
|
||||||
);
|
|
||||||
try {
|
|
||||||
var _localCallContext = await _endpointDispatch.getMethodCallContext(
|
|
||||||
createSessionCallback: (_) => _localUniqueSession,
|
|
||||||
endpointPath: 'recipe',
|
|
||||||
methodName: 'postQuote',
|
|
||||||
parameters: _i1.testObjectToJson({'quote': quote}),
|
|
||||||
serializationManager: _serializationManager,
|
|
||||||
);
|
|
||||||
var _localReturnValue = await (_localCallContext.method.call(
|
|
||||||
_localUniqueSession,
|
|
||||||
_localCallContext.arguments,
|
|
||||||
) as _i3.Future<String>);
|
|
||||||
return _localReturnValue;
|
|
||||||
} finally {
|
|
||||||
await _localUniqueSession.close();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue