summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJon Moss <me@jonathanmoss.me>2018-07-11 13:53:05 -0400
committerJon Moss <me@jonathanmoss.me>2018-07-13 12:08:20 -0400
commit45732c7c19672869a7e517e252c83b371a863bee (patch)
tree14b333f5a45f53bec769cd0b60c2201b1ba46049 /src
parentd2ee7d64aa3afd593ec8c0b14f497244403c5589 (diff)
downloadandroid-node-v8-45732c7c19672869a7e517e252c83b371a863bee.tar.gz
android-node-v8-45732c7c19672869a7e517e252c83b371a863bee.tar.bz2
android-node-v8-45732c7c19672869a7e517e252c83b371a863bee.zip
src: add HandleWrap::AddWrapMethods
Extracts common setters to a single location PR-URL: https://github.com/nodejs/node/pull/21769 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Minwoo Jung <minwoo@nodesource.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/handle_wrap.cc10
-rw-r--r--src/handle_wrap.h3
-rw-r--r--src/node_messaging.cc5
-rw-r--r--src/node_stat_watcher.cc6
-rw-r--r--src/pipe_wrap.cc7
-rw-r--r--src/process_wrap.cc7
-rw-r--r--src/signal_wrap.cc6
-rw-r--r--src/tcp_wrap.cc8
-rw-r--r--src/timer_wrap.cc6
-rw-r--r--src/tty_wrap.cc7
-rw-r--r--src/udp_wrap.cc6
11 files changed, 24 insertions, 47 deletions
diff --git a/src/handle_wrap.cc b/src/handle_wrap.cc
index 4c2a33aa84..9281300146 100644
--- a/src/handle_wrap.cc
+++ b/src/handle_wrap.cc
@@ -29,6 +29,7 @@ namespace node {
using v8::Context;
using v8::FunctionCallbackInfo;
+using v8::FunctionTemplate;
using v8::HandleScope;
using v8::Local;
using v8::Object;
@@ -130,4 +131,13 @@ void HandleWrap::OnClose(uv_handle_t* handle) {
}
+void HandleWrap::AddWrapMethods(Environment* env,
+ Local<FunctionTemplate> t) {
+ env->SetProtoMethod(t, "close", HandleWrap::Close);
+ env->SetProtoMethodNoSideEffect(t, "hasRef", HandleWrap::HasRef);
+ env->SetProtoMethod(t, "ref", HandleWrap::Ref);
+ env->SetProtoMethod(t, "unref", HandleWrap::Unref);
+}
+
+
} // namespace node
diff --git a/src/handle_wrap.h b/src/handle_wrap.h
index bd7ef4000b..443d28bf52 100644
--- a/src/handle_wrap.h
+++ b/src/handle_wrap.h
@@ -73,6 +73,9 @@ class HandleWrap : public AsyncWrap {
virtual void Close(
v8::Local<v8::Value> close_callback = v8::Local<v8::Value>());
+ static void AddWrapMethods(Environment* env,
+ v8::Local<v8::FunctionTemplate> constructor);
+
protected:
HandleWrap(Environment* env,
v8::Local<v8::Object> object,
diff --git a/src/node_messaging.cc b/src/node_messaging.cc
index 712add06d3..24a99c8bc6 100644
--- a/src/node_messaging.cc
+++ b/src/node_messaging.cc
@@ -718,15 +718,12 @@ MaybeLocal<Function> GetMessagePortConstructor(
m->InstanceTemplate()->SetInternalFieldCount(1);
AsyncWrap::AddWrapMethods(env, m);
+ HandleWrap::AddWrapMethods(env, m);
env->SetProtoMethod(m, "postMessage", MessagePort::PostMessage);
env->SetProtoMethod(m, "start", MessagePort::Start);
env->SetProtoMethod(m, "stop", MessagePort::Stop);
env->SetProtoMethod(m, "drain", MessagePort::Drain);
- env->SetProtoMethod(m, "close", HandleWrap::Close);
- env->SetProtoMethod(m, "unref", HandleWrap::Unref);
- env->SetProtoMethod(m, "ref", HandleWrap::Ref);
- env->SetProtoMethod(m, "hasRef", HandleWrap::HasRef);
env->set_message_port_constructor_template(m);
}
diff --git a/src/node_stat_watcher.cc b/src/node_stat_watcher.cc
index 767bc024e4..5e47476fd9 100644
--- a/src/node_stat_watcher.cc
+++ b/src/node_stat_watcher.cc
@@ -52,11 +52,9 @@ void StatWatcher::Initialize(Environment* env, Local<Object> target) {
t->SetClassName(statWatcherString);
AsyncWrap::AddWrapMethods(env, t);
+ HandleWrap::AddWrapMethods(env, t);
+
env->SetProtoMethod(t, "start", StatWatcher::Start);
- env->SetProtoMethod(t, "close", HandleWrap::Close);
- env->SetProtoMethod(t, "ref", HandleWrap::Ref);
- env->SetProtoMethod(t, "unref", HandleWrap::Unref);
- env->SetProtoMethod(t, "hasRef", HandleWrap::HasRef);
target->Set(statWatcherString, t->GetFunction());
}
diff --git a/src/pipe_wrap.cc b/src/pipe_wrap.cc
index e2cc114479..a6044b6b26 100644
--- a/src/pipe_wrap.cc
+++ b/src/pipe_wrap.cc
@@ -77,12 +77,7 @@ void PipeWrap::Initialize(Local<Object> target,
t->InstanceTemplate()->SetInternalFieldCount(1);
AsyncWrap::AddWrapMethods(env, t);
-
- env->SetProtoMethod(t, "close", HandleWrap::Close);
- env->SetProtoMethod(t, "unref", HandleWrap::Unref);
- env->SetProtoMethod(t, "ref", HandleWrap::Ref);
- env->SetProtoMethod(t, "hasRef", HandleWrap::HasRef);
-
+ HandleWrap::AddWrapMethods(env, t);
LibuvStreamWrap::AddMethods(env, t);
env->SetProtoMethod(t, "bind", Bind);
diff --git a/src/process_wrap.cc b/src/process_wrap.cc
index 54345b231b..1931e8107f 100644
--- a/src/process_wrap.cc
+++ b/src/process_wrap.cc
@@ -58,16 +58,11 @@ class ProcessWrap : public HandleWrap {
constructor->SetClassName(processString);
AsyncWrap::AddWrapMethods(env, constructor);
-
- env->SetProtoMethod(constructor, "close", HandleWrap::Close);
+ HandleWrap::AddWrapMethods(env, constructor);
env->SetProtoMethod(constructor, "spawn", Spawn);
env->SetProtoMethod(constructor, "kill", Kill);
- env->SetProtoMethod(constructor, "ref", HandleWrap::Ref);
- env->SetProtoMethod(constructor, "unref", HandleWrap::Unref);
- env->SetProtoMethod(constructor, "hasRef", HandleWrap::HasRef);
-
target->Set(processString, constructor->GetFunction());
}
diff --git a/src/signal_wrap.cc b/src/signal_wrap.cc
index 5117d3ab1d..e245ad924c 100644
--- a/src/signal_wrap.cc
+++ b/src/signal_wrap.cc
@@ -52,10 +52,8 @@ class SignalWrap : public HandleWrap {
constructor->SetClassName(signalString);
AsyncWrap::AddWrapMethods(env, constructor);
- env->SetProtoMethod(constructor, "close", HandleWrap::Close);
- env->SetProtoMethod(constructor, "ref", HandleWrap::Ref);
- env->SetProtoMethod(constructor, "unref", HandleWrap::Unref);
- env->SetProtoMethod(constructor, "hasRef", HandleWrap::HasRef);
+ HandleWrap::AddWrapMethods(env, constructor);
+
env->SetProtoMethod(constructor, "start", Start);
env->SetProtoMethod(constructor, "stop", Stop);
diff --git a/src/tcp_wrap.cc b/src/tcp_wrap.cc
index aa130d22e0..805e566bfa 100644
--- a/src/tcp_wrap.cc
+++ b/src/tcp_wrap.cc
@@ -86,13 +86,7 @@ void TCPWrap::Initialize(Local<Object> target,
t->InstanceTemplate()->Set(env->onconnection_string(), Null(env->isolate()));
AsyncWrap::AddWrapMethods(env, t, AsyncWrap::kFlagHasReset);
-
- env->SetProtoMethod(t, "close", HandleWrap::Close);
-
- env->SetProtoMethod(t, "ref", HandleWrap::Ref);
- env->SetProtoMethod(t, "unref", HandleWrap::Unref);
- env->SetProtoMethod(t, "hasRef", HandleWrap::HasRef);
-
+ HandleWrap::AddWrapMethods(env, t);
LibuvStreamWrap::AddMethods(env, t);
env->SetProtoMethod(t, "open", Open);
diff --git a/src/timer_wrap.cc b/src/timer_wrap.cc
index b87430dad8..9da209bef4 100644
--- a/src/timer_wrap.cc
+++ b/src/timer_wrap.cc
@@ -55,11 +55,7 @@ class TimerWrap : public HandleWrap {
env->SetTemplateMethod(constructor, "now", Now);
AsyncWrap::AddWrapMethods(env, constructor);
-
- env->SetProtoMethod(constructor, "close", HandleWrap::Close);
- env->SetProtoMethod(constructor, "ref", HandleWrap::Ref);
- env->SetProtoMethod(constructor, "unref", HandleWrap::Unref);
- env->SetProtoMethod(constructor, "hasRef", HandleWrap::HasRef);
+ HandleWrap::AddWrapMethods(env, constructor);
env->SetProtoMethod(constructor, "start", Start);
diff --git a/src/tty_wrap.cc b/src/tty_wrap.cc
index 83b6e34d63..39d7ca1474 100644
--- a/src/tty_wrap.cc
+++ b/src/tty_wrap.cc
@@ -54,12 +54,7 @@ void TTYWrap::Initialize(Local<Object> target,
t->InstanceTemplate()->SetInternalFieldCount(1);
AsyncWrap::AddWrapMethods(env, t);
-
- env->SetProtoMethod(t, "close", HandleWrap::Close);
- env->SetProtoMethod(t, "unref", HandleWrap::Unref);
- env->SetProtoMethod(t, "ref", HandleWrap::Ref);
- env->SetProtoMethodNoSideEffect(t, "hasRef", HandleWrap::HasRef);
-
+ HandleWrap::AddWrapMethods(env, t);
LibuvStreamWrap::AddMethods(env, t);
env->SetProtoMethodNoSideEffect(t, "getWindowSize", TTYWrap::GetWindowSize);
diff --git a/src/udp_wrap.cc b/src/udp_wrap.cc
index 1d1ded449b..2ef6732213 100644
--- a/src/udp_wrap.cc
+++ b/src/udp_wrap.cc
@@ -115,7 +115,6 @@ void UDPWrap::Initialize(Local<Object> target,
env->SetProtoMethod(t, "send", Send);
env->SetProtoMethod(t, "bind6", Bind6);
env->SetProtoMethod(t, "send6", Send6);
- env->SetProtoMethod(t, "close", Close);
env->SetProtoMethod(t, "recvStart", RecvStart);
env->SetProtoMethod(t, "recvStop", RecvStop);
env->SetProtoMethod(t, "getsockname",
@@ -129,11 +128,8 @@ void UDPWrap::Initialize(Local<Object> target,
env->SetProtoMethod(t, "setTTL", SetTTL);
env->SetProtoMethod(t, "bufferSize", BufferSize);
- env->SetProtoMethod(t, "ref", HandleWrap::Ref);
- env->SetProtoMethod(t, "unref", HandleWrap::Unref);
- env->SetProtoMethod(t, "hasRef", HandleWrap::HasRef);
-
AsyncWrap::AddWrapMethods(env, t);
+ HandleWrap::AddWrapMethods(env, t);
target->Set(udpString, t->GetFunction());
env->set_udp_constructor_function(t->GetFunction());