*[<Null safety>](https://dart.dev/null-safety)*
- @override
void open (dynamic flags, int mode, String path, InterfaceRequest request, [dynamic parentFlags])
override
This function is called from fidl_fuchsia_io.Directory#open
.
This function parses path and opens correct node.
Vnode provides a simplified implementation for non-directory types.
Behavior:
For directory types, it will throw UnimplementedError error.
For non empty path it will fail with ERR_NOT_DIR
.
Implementation
@override
void open(
OpenFlags flags, int mode, String path, InterfaceRequest<Node> request,
[OpenFlags? parentFlags]) {
if (_isClosed) {
sendErrorEvent(flags, ZX.ERR_NOT_SUPPORTED, request);
return;
}
final status = _validateFlags(flags);
if (status != ZX.OK) {
sendErrorEvent(flags, status, request);
return;
}
// Forward the reqeuest on to the remote directory
_proxy.open(flags, mode, path, request);
}