1// Copyright 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/** 6 * @fileoverview Class providing common dependencies for the extension's 7 * bottom half. 8 */ 9'use strict'; 10 11/** 12 * @param {!GnubbyFactory} gnubbyFactory A Gnubby factory. 13 * @param {!CountdownFactory} countdownFactory A countdown timer factory. 14 * @param {!IndividualAttestation} individualAttestation An individual 15 * attestation implementation. 16 * @constructor 17 */ 18function DeviceFactoryRegistry(gnubbyFactory, countdownFactory, 19 individualAttestation) { 20 /** @private {!GnubbyFactory} */ 21 this.gnubbyFactory_ = gnubbyFactory; 22 /** @private {!CountdownFactory} */ 23 this.countdownFactory_ = countdownFactory; 24 /** @private {!IndividualAttestation} */ 25 this.individualAttestation_ = individualAttestation; 26} 27 28/** @return {!GnubbyFactory} A Gnubby factory. */ 29DeviceFactoryRegistry.prototype.getGnubbyFactory = function() { 30 return this.gnubbyFactory_; 31}; 32 33/** @return {!CountdownFactory} A countdown factory. */ 34DeviceFactoryRegistry.prototype.getCountdownFactory = function() { 35 return this.countdownFactory_; 36}; 37 38/** @return {!IndividualAttestation} An individual attestation implementation. 39 */ 40DeviceFactoryRegistry.prototype.getIndividualAttestation = function() { 41 return this.individualAttestation_; 42}; 43