#ifndef CHROME_BROWSER_CHROMEOS_EXTENSIONS_FILE_MANAGER_PRIVATE_API_TASKS_H_
#define CHROME_BROWSER_CHROMEOS_EXTENSIONS_FILE_MANAGER_PRIVATE_API_TASKS_H_
#include "chrome/browser/chromeos/extensions/file_manager/private_api_base.h"
#include "chrome/common/extensions/api/file_browser_private.h"
namespace extensions {
class FileBrowserPrivateExecuteTaskFunction
: public LoggedAsyncExtensionFunction {
public:
DECLARE_EXTENSION_FUNCTION("fileBrowserPrivate.executeTask",
FILEBROWSERPRIVATE_EXECUTETASK)
protected:
virtual ~FileBrowserPrivateExecuteTaskFunction() {}
virtual bool RunImpl() OVERRIDE;
private:
void OnTaskExecuted(
extensions::api::file_browser_private::TaskResult success);
};
class FileBrowserPrivateGetFileTasksFunction
: public LoggedAsyncExtensionFunction {
public:
DECLARE_EXTENSION_FUNCTION("fileBrowserPrivate.getFileTasks",
FILEBROWSERPRIVATE_GETFILETASKS)
protected:
virtual ~FileBrowserPrivateGetFileTasksFunction() {}
virtual bool RunImpl() OVERRIDE;
};
class FileBrowserPrivateSetDefaultTaskFunction
: public ChromeSyncExtensionFunction {
public:
DECLARE_EXTENSION_FUNCTION("fileBrowserPrivate.setDefaultTask",
FILEBROWSERPRIVATE_SETDEFAULTTASK)
protected:
virtual ~FileBrowserPrivateSetDefaultTaskFunction() {}
virtual bool RunImpl() OVERRIDE;
};
}
#endif