implement static method
NSURLHandleClient
implement({
- required void URLHandle_resourceDataDidBecomeAvailable_(
- NSURLHandle,
- NSData
- required void URLHandleResourceDidBeginLoading_(
- NSURLHandle
- required void URLHandleResourceDidFinishLoading_(
- NSURLHandle
- required void URLHandleResourceDidCancelLoading_(
- NSURLHandle
- required void URLHandle_resourceDidFailLoadingWithReason_(
- NSURLHandle,
- NSString
- bool $keepIsolateAlive = true,
Builds an object that implements the NSURLHandleClient protocol. To implement
multiple protocols, use addToBuilder or objc.ObjCProtocolBuilder directly.
If $keepIsolateAlive is true, this protocol will keep this isolate
alive until it is garbage collected by both Dart and ObjC.
Implementation
static NSURLHandleClient implement({
required void Function(objc.NSURLHandle, objc.NSData)
URLHandle_resourceDataDidBecomeAvailable_,
required void Function(objc.NSURLHandle) URLHandleResourceDidBeginLoading_,
required void Function(objc.NSURLHandle) URLHandleResourceDidFinishLoading_,
required void Function(objc.NSURLHandle) URLHandleResourceDidCancelLoading_,
required void Function(objc.NSURLHandle, objc.NSString)
URLHandle_resourceDidFailLoadingWithReason_,
bool $keepIsolateAlive = true,
}) {
final builder = objc.ObjCProtocolBuilder(debugName: 'NSURLHandleClient');
NSURLHandleClient.URLHandle_resourceDataDidBecomeAvailable_.implement(
builder,
URLHandle_resourceDataDidBecomeAvailable_,
);
NSURLHandleClient.URLHandleResourceDidBeginLoading_.implement(
builder,
URLHandleResourceDidBeginLoading_,
);
NSURLHandleClient.URLHandleResourceDidFinishLoading_.implement(
builder,
URLHandleResourceDidFinishLoading_,
);
NSURLHandleClient.URLHandleResourceDidCancelLoading_.implement(
builder,
URLHandleResourceDidCancelLoading_,
);
NSURLHandleClient.URLHandle_resourceDidFailLoadingWithReason_.implement(
builder,
URLHandle_resourceDidFailLoadingWithReason_,
);
builder.addProtocol($protocol);
return NSURLHandleClient.castFrom(
builder.build(keepIsolateAlive: $keepIsolateAlive),
);
}