Add the getFeedURL API for macOS and Windows
authorSamuel Attard <samuel.r.attard@gmail.com>
Thu, 14 Jul 2016 12:04:48 +0000 (00:04 +1200)
committerSamuel Attard <samuel.attard@orionhealth.com>
Thu, 14 Jul 2016 12:04:48 +0000 (00:04 +1200)
atom/browser/api/atom_api_auto_updater.cc
atom/browser/api/atom_api_auto_updater.h
atom/browser/auto_updater.cc
atom/browser/auto_updater.h
atom/browser/auto_updater_mac.mm
lib/browser/api/auto-updater/auto-updater-win.js

index 54e2bd9..3b493d4 100644 (file)
@@ -79,6 +79,10 @@ void AutoUpdater::OnWindowAllClosed() {
   QuitAndInstall();
 }
 
+std::string AutoUpdater::GetFeedURL() {
+  return "";
+}
+
 void AutoUpdater::SetFeedURL(const std::string& url, mate::Arguments* args) {
   auto_updater::AutoUpdater::HeaderMap headers;
   args->GetNext(&headers);
@@ -109,6 +113,7 @@ void AutoUpdater::BuildPrototype(
     v8::Isolate* isolate, v8::Local<v8::ObjectTemplate> prototype) {
   mate::ObjectTemplateBuilder(isolate, prototype)
       .SetMethod("checkForUpdates", &auto_updater::AutoUpdater::CheckForUpdates)
+      .SetMethod("getFeedURL", &auto_updater::AutoUpdater::GetFeedURL)
       .SetMethod("setFeedURL", &AutoUpdater::SetFeedURL)
       .SetMethod("quitAndInstall", &AutoUpdater::QuitAndInstall);
 }
index e8c135f..4c73f7c 100644 (file)
@@ -44,6 +44,7 @@ class AutoUpdater : public mate::EventEmitter<AutoUpdater>,
   void OnWindowAllClosed() override;
 
  private:
+  std::string GetFeedURL();
   void SetFeedURL(const std::string& url, mate::Arguments* args);
   void QuitAndInstall();
 
index 5a14eda..8ada3ff 100644 (file)
@@ -17,6 +17,10 @@ void AutoUpdater::SetDelegate(Delegate* delegate) {
 }
 
 #if !defined(OS_MACOSX) || defined(MAS_BUILD)
+std::string AutoUpdater::GetFeedURL() {
+  return "";
+}
+
 void AutoUpdater::SetFeedURL(const std::string& url,
                              const HeaderMap& requestHeaders) {
 }
index ad0b2cc..aa4ca19 100644 (file)
@@ -49,6 +49,7 @@ class AutoUpdater {
   static Delegate* GetDelegate();
   static void SetDelegate(Delegate* delegate);
 
+  static std::string GetFeedURL();
   static void SetFeedURL(const std::string& url,
                          const HeaderMap& requestHeaders);
   static void CheckForUpdates();
index 005627e..1987f33 100644 (file)
@@ -25,9 +25,14 @@ SQRLUpdater* g_updater = nil;
 namespace {
 
 bool g_update_available = false;
+std::string update_url_ = "";
 
 }
 
+std::string AutoUpdater::GetFeedURL() {
+  return update_url_;
+}
+
 // static
 void AutoUpdater::SetFeedURL(const std::string& feed,
                              const HeaderMap& requestHeaders) {
@@ -35,6 +40,8 @@ void AutoUpdater::SetFeedURL(const std::string& feed,
   if (!delegate)
     return;
 
+  update_url_ = feed;
+
   NSURL* url = [NSURL URLWithString:base::SysUTF8ToNSString(feed)];
   NSMutableURLRequest* urlRequest = [NSMutableURLRequest requestWithURL:url];
 
index 8775534..6c8f5d2 100644 (file)
@@ -19,6 +19,10 @@ AutoUpdater.prototype.quitAndInstall = function () {
   return app.quit()
 }
 
+AutoUpdater.prototype.GetFeedURL = function () {
+  return this.updateURL;
+}
+
 AutoUpdater.prototype.setFeedURL = function (updateURL, headers) {
   this.updateURL = updateURL
 }