summaryrefslogtreecommitdiff
path: root/cli/ops/permissions.rs
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2020-08-28 17:08:24 +0200
committerGitHub <noreply@github.com>2020-08-28 17:08:24 +0200
commit7e946858a4a0a03c1461590c6fc8a315738a627a (patch)
tree5a6a391fead573b85fb905bb5c4ea8287dc18d13 /cli/ops/permissions.rs
parent31f32ed8c4082d36ad2a4ea460366c0d57a5ddbc (diff)
refactor: migrate ops to new dispatch wrapper (#7118)
Diffstat (limited to 'cli/ops/permissions.rs')
-rw-r--r--cli/ops/permissions.rs32
1 files changed, 19 insertions, 13 deletions
diff --git a/cli/ops/permissions.rs b/cli/ops/permissions.rs
index 6ebabfa5c..1d19f91d4 100644
--- a/cli/ops/permissions.rs
+++ b/cli/ops/permissions.rs
@@ -1,24 +1,27 @@
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
-use super::dispatch_json::{Deserialize, JsonOp, Value};
+use super::dispatch_json::{Deserialize, Value};
use crate::state::State;
use deno_core::CoreIsolate;
use deno_core::ErrBox;
+use deno_core::ResourceTable;
use deno_core::ZeroCopyBuf;
use std::path::Path;
use std::rc::Rc;
pub fn init(i: &mut CoreIsolate, s: &Rc<State>) {
+ let t = &CoreIsolate::state(i).borrow().resource_table.clone();
+
i.register_op(
"op_query_permission",
- s.stateful_json_op(op_query_permission),
+ s.stateful_json_op_sync(t, op_query_permission),
);
i.register_op(
"op_revoke_permission",
- s.stateful_json_op(op_revoke_permission),
+ s.stateful_json_op_sync(t, op_revoke_permission),
);
i.register_op(
"op_request_permission",
- s.stateful_json_op(op_request_permission),
+ s.stateful_json_op_sync(t, op_request_permission),
);
}
@@ -30,10 +33,11 @@ struct PermissionArgs {
}
pub fn op_query_permission(
- state: &Rc<State>,
+ state: &State,
+ _resource_table: &mut ResourceTable,
args: Value,
_zero_copy: &mut [ZeroCopyBuf],
-) -> Result<JsonOp, ErrBox> {
+) -> Result<Value, ErrBox> {
let args: PermissionArgs = serde_json::from_value(args)?;
let permissions = state.permissions.borrow();
let path = args.path.as_deref();
@@ -52,14 +56,15 @@ pub fn op_query_permission(
))
}
};
- Ok(JsonOp::Sync(json!({ "state": perm.to_string() })))
+ Ok(json!({ "state": perm.to_string() }))
}
pub fn op_revoke_permission(
- state: &Rc<State>,
+ state: &State,
+ _resource_table: &mut ResourceTable,
args: Value,
_zero_copy: &mut [ZeroCopyBuf],
-) -> Result<JsonOp, ErrBox> {
+) -> Result<Value, ErrBox> {
let args: PermissionArgs = serde_json::from_value(args)?;
let mut permissions = state.permissions.borrow_mut();
let path = args.path.as_deref();
@@ -78,14 +83,15 @@ pub fn op_revoke_permission(
))
}
};
- Ok(JsonOp::Sync(json!({ "state": perm.to_string() })))
+ Ok(json!({ "state": perm.to_string() }))
}
pub fn op_request_permission(
- state: &Rc<State>,
+ state: &State,
+ _resource_table: &mut ResourceTable,
args: Value,
_zero_copy: &mut [ZeroCopyBuf],
-) -> Result<JsonOp, ErrBox> {
+) -> Result<Value, ErrBox> {
let args: PermissionArgs = serde_json::from_value(args)?;
let permissions = &mut state.permissions.borrow_mut();
let path = args.path.as_deref();
@@ -104,5 +110,5 @@ pub fn op_request_permission(
))
}
};
- Ok(JsonOp::Sync(json!({ "state": perm.to_string() })))
+ Ok(json!({ "state": perm.to_string() }))
}