diff options
Diffstat (limited to 'chrome/browser/extensions/convert_web_app.h')
-rw-r--r-- | chrome/browser/extensions/convert_web_app.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/chrome/browser/extensions/convert_web_app.h b/chrome/browser/extensions/convert_web_app.h new file mode 100644 index 0000000..4037265 --- /dev/null +++ b/chrome/browser/extensions/convert_web_app.h @@ -0,0 +1,43 @@ +// Copyright (c) 2010 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 CHROME_BROWSER_EXTENSIONS_CONVERT_WEB_APP_H_ +#define CHROME_BROWSER_EXTENSIONS_CONVERT_WEB_APP_H_ +#pragma once + +#include <string> + +#include "base/ref_counted.h" + +class Extension; + +namespace base { +class Time; +} + +struct WebApplicationInfo; + +// Generates a version number for an extension from a time. The goal is to make +// use of the version number to communicate the date in a human readable form, +// while maintaining high enough resolution to change each time an app is +// reinstalled. The version that is returned has the format: +// +// <year>.<month>.<day>.<fraction> +// +// fraction is represented as a number between 0 and 2^16-1. Each unit is +// ~1.32 seconds. +std::string ConvertTimeToExtensionVersion(const base::Time& time); + +// Wraps the specified web app in an extension. The extension is created +// unpacked in the system temp dir. Returns a valid extension that the caller +// should take ownership on success, or NULL and |error| on failure. +// +// NOTE: This function does file IO and should not be called on the UI thread. +// NOTE: The caller takes ownership of the directory at extension->path() on the +// returned object. +scoped_refptr<Extension> ConvertWebAppToExtension( + const WebApplicationInfo& web_app_info, + const base::Time& create_time); + +#endif // CHROME_BROWSER_EXTENSIONS_CONVERT_WEB_APP_H_ |