const char* kFuncNameGetDaemonVersion = "getDaemonVersion";
const char* kFuncNameGetPairedClients = "getPairedClients";
const char* kFuncNameGetUsageStatsConsent = "getUsageStatsConsent";
+const char* kFuncNameInstallHost = "installHost";
const char* kFuncNameStartDaemon = "startDaemon";
const char* kFuncNameStopDaemon = "stopDaemon";
method_name == kFuncNameGetDaemonVersion ||
method_name == kFuncNameGetPairedClients ||
method_name == kFuncNameGetUsageStatsConsent ||
+ method_name == kFuncNameInstallHost ||
method_name == kFuncNameStartDaemon ||
method_name == kFuncNameStopDaemon);
}
return GetPairedClients(args, arg_count, result);
} else if (method_name == kFuncNameGetUsageStatsConsent) {
return GetUsageStatsConsent(args, arg_count, result);
+ } else if (method_name == kFuncNameInstallHost) {
+ return InstallHost(args, arg_count, result);
} else if (method_name == kFuncNameStartDaemon) {
return StartDaemon(args, arg_count, result);
} else if (method_name == kFuncNameStopDaemon) {
kFuncNameGetDaemonVersion,
kFuncNameGetPairedClients,
kFuncNameGetUsageStatsConsent,
+ kFuncNameInstallHost,
kFuncNameStartDaemon,
kFuncNameStopDaemon
};
return true;
}
+bool HostNPScriptObject::InstallHost(const NPVariant* args,
+ uint32_t arg_count,
+ NPVariant* result) {
+ DCHECK(plugin_task_runner_->BelongsToCurrentThread());
+
+ if (arg_count != 1) {
+ SetException("installHost: bad number of arguments");
+ return false;
+ }
+
+ scoped_ptr<ScopedRefNPObject> callback_obj(
+ new ScopedRefNPObject(ObjectFromNPVariant(args[0])));
+ if (!callback_obj->get()) {
+ SetException("installHost: invalid callback parameter");
+ return false;
+ }
+
+ daemon_controller_->InstallHost(
+ base::Bind(&HostNPScriptObject::InvokeAsyncResultCallback, weak_ptr_,
+ base::Passed(&callback_obj)));
+ return true;
+}
+
bool HostNPScriptObject::StartDaemon(const NPVariant* args,
uint32_t arg_count,
NPVariant* result) {