| Index: chrome/browser/extensions/extension_function.h
|
| diff --git a/chrome/browser/extensions/extension_function.h b/chrome/browser/extensions/extension_function.h
|
| index 27bd37cf238bef40d35c88e08edd69d1b7a1704f..a13845c6c331cdc31def883644829eae36e8709d 100644
|
| --- a/chrome/browser/extensions/extension_function.h
|
| +++ b/chrome/browser/extensions/extension_function.h
|
| @@ -37,7 +37,7 @@ class QuotaLimitHeuristic;
|
| // knows how to dispatch to.
|
| class ExtensionFunction : public base::RefCountedThreadSafe<ExtensionFunction> {
|
| public:
|
| - ExtensionFunction() : request_id_(-1), name_(""), has_callback_(false) {}
|
| + ExtensionFunction();
|
|
|
| // Specifies the name of the function.
|
| void set_name(const std::string& name) { name_ = name; }
|
| @@ -97,7 +97,7 @@ class ExtensionFunction : public base::RefCountedThreadSafe<ExtensionFunction> {
|
| protected:
|
| friend class base::RefCountedThreadSafe<ExtensionFunction>;
|
|
|
| - virtual ~ExtensionFunction() {}
|
| + virtual ~ExtensionFunction();
|
|
|
| // Gets the extension that called this function. This can return NULL for
|
| // async functions, for example if the extension is unloaded while the
|
| @@ -120,9 +120,7 @@ class ExtensionFunction : public base::RefCountedThreadSafe<ExtensionFunction> {
|
| // This method can return NULL if there is no matching browser, which can
|
| // happen if only incognito windows are open, or early in startup or shutdown
|
| // shutdown when there are no active windows.
|
| - Browser* GetCurrentBrowser() {
|
| - return dispatcher()->GetCurrentBrowser(include_incognito_);
|
| - }
|
| + Browser* GetCurrentBrowser();
|
|
|
| // The peer to the dispatcher that will service this extension function call.
|
| scoped_refptr<ExtensionFunctionDispatcher::Peer> peer_;
|
| @@ -160,22 +158,19 @@ class ExtensionFunction : public base::RefCountedThreadSafe<ExtensionFunction> {
|
| // parsing JSON (and instead uses custom serialization of Value objects).
|
| class AsyncExtensionFunction : public ExtensionFunction {
|
| public:
|
| - AsyncExtensionFunction() : args_(NULL), bad_message_(false) {}
|
| + AsyncExtensionFunction();
|
|
|
| virtual void SetArgs(const ListValue* args);
|
| virtual const std::string GetResult();
|
| - virtual const std::string GetError() { return error_; }
|
| - virtual void Run() {
|
| - if (!RunImpl())
|
| - SendResponse(false);
|
| - }
|
| + virtual const std::string GetError();
|
| + virtual void Run();
|
|
|
| // Derived classes should implement this method to do their work and return
|
| // success/failure.
|
| virtual bool RunImpl() = 0;
|
|
|
| protected:
|
| - virtual ~AsyncExtensionFunction() {}
|
| + virtual ~AsyncExtensionFunction();
|
|
|
| void SendResponse(bool success);
|
|
|
| @@ -210,18 +205,16 @@ class AsyncExtensionFunction : public ExtensionFunction {
|
| // need to interact with things on the browser UI thread.
|
| class SyncExtensionFunction : public AsyncExtensionFunction {
|
| public:
|
| - SyncExtensionFunction() {}
|
| + SyncExtensionFunction();
|
|
|
| // Derived classes should implement this method to do their work and return
|
| // success/failure.
|
| virtual bool RunImpl() = 0;
|
|
|
| - virtual void Run() {
|
| - SendResponse(RunImpl());
|
| - }
|
| + virtual void Run();
|
|
|
| protected:
|
| - virtual ~SyncExtensionFunction() {}
|
| + virtual ~SyncExtensionFunction();
|
|
|
| private:
|
| DISALLOW_COPY_AND_ASSIGN(SyncExtensionFunction);
|
|
|