Home | History | Annotate | Download | only in common
      1 // Copyright (c) 2014 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 CONTENT_PUBLIC_COMMON_APPCACHE_INFO_H_
      6 #define CONTENT_PUBLIC_COMMON_APPCACHE_INFO_H_
      7 
      8 #include <vector>
      9 
     10 #include "base/time/time.h"
     11 #include "content/common/content_export.h"
     12 #include "url/gurl.h"
     13 
     14 namespace content {
     15 
     16 static const int kAppCacheNoHostId = 0;
     17 static const int64 kAppCacheNoCacheId = 0;
     18 static const int64 kAppCacheNoResponseId = 0;
     19 static const int64 kAppCacheUnknownCacheId = -1;
     20 
     21 enum AppCacheStatus {
     22   APPCACHE_STATUS_UNCACHED,
     23   APPCACHE_STATUS_IDLE,
     24   APPCACHE_STATUS_CHECKING,
     25   APPCACHE_STATUS_DOWNLOADING,
     26   APPCACHE_STATUS_UPDATE_READY,
     27   APPCACHE_STATUS_OBSOLETE,
     28   APPCACHE_STATUS_LAST = APPCACHE_STATUS_OBSOLETE
     29 };
     30 
     31 struct CONTENT_EXPORT AppCacheInfo {
     32   AppCacheInfo();
     33   ~AppCacheInfo();
     34 
     35   GURL manifest_url;
     36   base::Time creation_time;
     37   base::Time last_update_time;
     38   base::Time last_access_time;
     39   int64 cache_id;
     40   int64 group_id;
     41   AppCacheStatus status;
     42   int64 size;
     43   bool is_complete;
     44 };
     45 
     46 typedef std::vector<AppCacheInfo> AppCacheInfoVector;
     47 
     48 }  // namespace
     49 
     50 #endif  // CONTENT_PUBLIC_COMMON_APPCACHE_INFO_H_
     51