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