Do not add JS wrapper for setFeedURL
When possible we should avoid adding wrappers in JS, it usually makes code more difficult to mantain
This commit is contained in:
parent
e2442fb052
commit
a3786f66c9
4 changed files with 10 additions and 6 deletions
|
@ -79,6 +79,12 @@ void AutoUpdater::OnWindowAllClosed() {
|
||||||
QuitAndInstall();
|
QuitAndInstall();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AutoUpdater::SetFeedURL(const std::string& url, mate::Arguments* args) {
|
||||||
|
auto_updater::AutoUpdater::HeaderMap headers;
|
||||||
|
args->GetNext(&headers);
|
||||||
|
auto_updater::AutoUpdater::SetFeedURL(url, headers);
|
||||||
|
}
|
||||||
|
|
||||||
void AutoUpdater::QuitAndInstall() {
|
void AutoUpdater::QuitAndInstall() {
|
||||||
// If we don't have any window then quitAndInstall immediately.
|
// If we don't have any window then quitAndInstall immediately.
|
||||||
WindowList* window_list = WindowList::GetInstance();
|
WindowList* window_list = WindowList::GetInstance();
|
||||||
|
@ -102,8 +108,8 @@ mate::Handle<AutoUpdater> AutoUpdater::Create(v8::Isolate* isolate) {
|
||||||
void AutoUpdater::BuildPrototype(
|
void AutoUpdater::BuildPrototype(
|
||||||
v8::Isolate* isolate, v8::Local<v8::ObjectTemplate> prototype) {
|
v8::Isolate* isolate, v8::Local<v8::ObjectTemplate> prototype) {
|
||||||
mate::ObjectTemplateBuilder(isolate, prototype)
|
mate::ObjectTemplateBuilder(isolate, prototype)
|
||||||
.SetMethod("_setFeedURL", &auto_updater::AutoUpdater::SetFeedURL)
|
|
||||||
.SetMethod("checkForUpdates", &auto_updater::AutoUpdater::CheckForUpdates)
|
.SetMethod("checkForUpdates", &auto_updater::AutoUpdater::CheckForUpdates)
|
||||||
|
.SetMethod("setFeedURL", &AutoUpdater::SetFeedURL)
|
||||||
.SetMethod("quitAndInstall", &AutoUpdater::QuitAndInstall);
|
.SetMethod("quitAndInstall", &AutoUpdater::QuitAndInstall);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
#include "atom/browser/api/event_emitter.h"
|
#include "atom/browser/api/event_emitter.h"
|
||||||
#include "atom/browser/auto_updater.h"
|
#include "atom/browser/auto_updater.h"
|
||||||
#include "atom/browser/window_list_observer.h"
|
#include "atom/browser/window_list_observer.h"
|
||||||
|
#include "native_mate/arguments.h"
|
||||||
#include "native_mate/handle.h"
|
#include "native_mate/handle.h"
|
||||||
|
|
||||||
namespace atom {
|
namespace atom {
|
||||||
|
@ -43,6 +44,7 @@ class AutoUpdater : public mate::EventEmitter<AutoUpdater>,
|
||||||
void OnWindowAllClosed() override;
|
void OnWindowAllClosed() override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
void SetFeedURL(const std::string& url, mate::Arguments* args);
|
||||||
void QuitAndInstall();
|
void QuitAndInstall();
|
||||||
|
|
||||||
DISALLOW_COPY_AND_ASSIGN(AutoUpdater);
|
DISALLOW_COPY_AND_ASSIGN(AutoUpdater);
|
||||||
|
|
|
@ -97,7 +97,7 @@ The `autoUpdater` object has the following methods:
|
||||||
### `autoUpdater.setFeedURL(url[, requestHeaders])`
|
### `autoUpdater.setFeedURL(url[, requestHeaders])`
|
||||||
|
|
||||||
* `url` String
|
* `url` String
|
||||||
* `requestHeaders` Object - HTTP request headers (_OS X_)
|
* `requestHeaders` Object _OS X_ - HTTP request headers.
|
||||||
|
|
||||||
Sets the `url` and initialize the auto updater.
|
Sets the `url` and initialize the auto updater.
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,4 @@ const autoUpdater = process.atomBinding('auto_updater').autoUpdater
|
||||||
|
|
||||||
Object.setPrototypeOf(autoUpdater, EventEmitter.prototype)
|
Object.setPrototypeOf(autoUpdater, EventEmitter.prototype)
|
||||||
|
|
||||||
autoUpdater.setFeedURL = function (url, headers) {
|
|
||||||
return autoUpdater._setFeedURL(url, headers || {})
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = autoUpdater
|
module.exports = autoUpdater
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue