UNPKG

shaka-player

Version:
50 lines (41 loc) 1.18 kB
/*! @license * Shaka Player * Copyright 2016 Google LLC * SPDX-License-Identifier: Apache-2.0 */ goog.provide('shaka.offline.indexeddb.V5StorageCell'); goog.require('shaka.offline.indexeddb.BaseStorageCell'); /** * The V5StorageCell is for all stores that follow the shaka.externs V5 offline * types introduced in v3.0. * * @implements {shaka.extern.StorageCell} */ shaka.offline.indexeddb.V5StorageCell = class extends shaka.offline.indexeddb.BaseStorageCell { /** @override */ hasFixedKeySpace() { // This makes the cell read-write. return false; } /** @override */ addSegments(segments) { return this.add(this.segmentStore_, segments); } /** @override */ addManifests(manifests) { return this.add(this.manifestStore_, manifests); } /** @override */ updateManifest(key, manifest) { return this.updateManifestImplementation(key, manifest); } /** @override */ convertManifest(old) { // JSON serialization turns Infinity into null, so turn it back now. if (old.expiration == null) { old.expiration = Infinity; } return Promise.resolve(/** @type {shaka.extern.ManifestDB} */(old)); } };