createLmsApiClient function
LmsApi
createLmsApiClient({
- required String bffCookie,
- String baseUrl = defaultBaseUrl,
- Client? httpClient,
- Authenticator? authenticator,
- ErrorConverter? errorConverter,
- Converter? converter,
- List<
Interceptor> ? interceptors, - DebugResponseOptions? debugResponseOptions,
Implementation
LmsApi createLmsApiClient({
required String bffCookie,
String baseUrl = defaultBaseUrl,
http.Client? httpClient,
Authenticator? authenticator,
ErrorConverter? errorConverter,
Converter? converter,
List<Interceptor>? interceptors,
DebugResponseOptions? debugResponseOptions,
}) {
if (bffCookie.isEmpty) {
throw const BffCookieIsEmptyError();
}
final resolvedConverter = converter ?? $JsonSerializableConverter();
final resolvedDebugResponses = DebugResponses(
client: defaultUserAgent,
sdkVersion: sdkVersion,
specVersion: specVersion,
options: debugResponseOptions ?? DebugResponseOptions.defaults,
);
final resolvedInterceptors = <Interceptor>[
_BffCookieInterceptor(bffCookie),
if (isDartVmRuntime) _UserAgentInterceptor(defaultUserAgent),
...?interceptors,
];
return LmsApi.create(
httpClient: httpClient,
authenticator: authenticator,
errorConverter: DebugResponseErrorConverter(
delegate: errorConverter ?? _LmsApiErrorConverter(resolvedConverter),
debugResponses: resolvedDebugResponses,
),
converter: DebugResponseConverter(
delegate: resolvedConverter,
debugResponses: resolvedDebugResponses,
),
baseUrl: Uri.parse(baseUrl),
interceptors: resolvedInterceptors,
);
}