diff options
Diffstat (limited to 'chromium/components/webdata/common/web_data_results.h')
-rw-r--r-- | chromium/components/webdata/common/web_data_results.h | 135 |
1 files changed, 0 insertions, 135 deletions
diff --git a/chromium/components/webdata/common/web_data_results.h b/chromium/components/webdata/common/web_data_results.h deleted file mode 100644 index 1878dc0cc18..00000000000 --- a/chromium/components/webdata/common/web_data_results.h +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef COMPONENTS_WEBDATA_COMMON_WEB_DATA_RESULTS_H_ -#define COMPONENTS_WEBDATA_COMMON_WEB_DATA_RESULTS_H_ - -#include "base/basictypes.h" -#include "base/callback.h" -#include "components/webdata/common/webdata_export.h" - -class WDTypedResult; - -// -// Result types for WebDataService. -// -typedef enum { - BOOL_RESULT = 1, // WDResult<bool> - KEYWORDS_RESULT, // WDResult<WDKeywordsResult> - INT64_RESULT, // WDResult<int64> -#if defined(OS_WIN) - PASSWORD_IE7_RESULT, // WDResult<IE7PasswordInfo> -#endif - WEB_APP_IMAGES, // WDResult<WDAppImagesResult> - TOKEN_RESULT, // WDResult<std::vector<std::string>> - AUTOFILL_VALUE_RESULT, // WDResult<std::vector<base::string16>> - AUTOFILL_CHANGES, // WDResult<std::vector<AutofillChange>> - AUTOFILL_PROFILE_RESULT, // WDResult<AutofillProfile> - AUTOFILL_PROFILES_RESULT, // WDResult<std::vector<AutofillProfile*>> - AUTOFILL_CREDITCARD_RESULT, // WDResult<CreditCard> - AUTOFILL_CREDITCARDS_RESULT, // WDResult<std::vector<CreditCard*>> - WEB_INTENTS_RESULT, // WDResult<std::vector<WebIntentServiceData>> - WEB_INTENTS_DEFAULTS_RESULT, // WDResult<std::vector<DefaultWebIntentService>> -} WDResultType; - - -typedef base::Callback<void(const WDTypedResult*)> DestroyCallback; - -// -// The top level class for a result. -// -class WEBDATA_EXPORT WDTypedResult { - public: - virtual ~WDTypedResult() { - } - - // Return the result type. - WDResultType GetType() const { - return type_; - } - - virtual void Destroy() { - } - - protected: - explicit WDTypedResult(WDResultType type) - : type_(type) { - } - - private: - WDResultType type_; - DISALLOW_COPY_AND_ASSIGN(WDTypedResult); -}; - -// A result containing one specific pointer or literal value. -template <class T> class WDResult : public WDTypedResult { - public: - WDResult(WDResultType type, const T& v) - : WDTypedResult(type), value_(v) { - } - - virtual ~WDResult() { - } - - // Return a single value result. - T GetValue() const { - return value_; - } - - private: - T value_; - - DISALLOW_COPY_AND_ASSIGN(WDResult); -}; - -template <class T> class WDDestroyableResult : public WDTypedResult { - public: - WDDestroyableResult( - WDResultType type, - const T& v, - const DestroyCallback& callback) - : WDTypedResult(type), - value_(v), - callback_(callback) { - } - - virtual ~WDDestroyableResult() { - } - - - virtual void Destroy() OVERRIDE { - if (!callback_.is_null()) { - callback_.Run(this); - } - } - - // Return a single value result. - T GetValue() const { - return value_; - } - - private: - T value_; - DestroyCallback callback_; - - DISALLOW_COPY_AND_ASSIGN(WDDestroyableResult); -}; - -template <class T> class WDObjectResult : public WDTypedResult { - public: - explicit WDObjectResult(WDResultType type) - : WDTypedResult(type) { - } - - T* GetValue() const { - return &value_; - } - - private: - // mutable to keep GetValue() const. - mutable T value_; - DISALLOW_COPY_AND_ASSIGN(WDObjectResult); -}; - -#endif // COMPONENTS_WEBDATA_COMMON_WEB_DATA_RESULTS_H_ |