Home | History | Annotate | Download | only in extensions
      1 // Copyright 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef CHROME_BROWSER_EXTENSIONS_WEBSTORE_DATA_FETCHER_DELEGATE_H_
      6 #define CHROME_BROWSER_EXTENSIONS_WEBSTORE_DATA_FETCHER_DELEGATE_H_
      7 
      8 #include <string>
      9 
     10 #include "base/memory/scoped_ptr.h"
     11 
     12 namespace base {
     13 class DictionaryValue;
     14 }
     15 
     16 namespace extensions {
     17 
     18 class WebstoreDataFetcherDelegate {
     19  public:
     20   // Invoked when the web store data request failed.
     21   virtual void OnWebstoreRequestFailure() = 0;
     22 
     23   // Invoked when the web store response parsing is successful. Delegate takes
     24   // ownership of |webstore_data|.
     25   virtual void OnWebstoreResponseParseSuccess(
     26       scoped_ptr<base::DictionaryValue> webstore_data) = 0;
     27 
     28   // Invoked when the web store response parsing is failed.
     29   virtual void OnWebstoreResponseParseFailure(const std::string& error) = 0;
     30 
     31   // Keys for indexing the returned webstore data.
     32   static const char kAverageRatingKey[];
     33   static const char kIconUrlKey[];
     34   static const char kIdKey[];
     35   static const char kInlineInstallNotSupportedKey[];
     36   static const char kLocalizedDescriptionKey[];
     37   static const char kLocalizedNameKey[];
     38   static const char kManifestKey[];
     39   static const char kRatingCountKey[];
     40   static const char kRedirectUrlKey[];
     41   static const char kShowUserCountKey[];
     42   static const char kUsersKey[];
     43   static const char kVerifiedSiteKey[];
     44   static const char kVerifiedSitesKey[];
     45 
     46  protected:
     47   virtual ~WebstoreDataFetcherDelegate() {}
     48 };
     49 
     50 }  // namespace extensions
     51 
     52 #endif  // CHROME_BROWSER_EXTENSIONS_WEBSTORE_DATA_FETCHER_DELEGATE_H_
     53