'use strict'; function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } /* *+------------------------------------------------------------------------+ *| Licensed Materials - Property of IBM *| IBM Cognos Products: Dashboard *| (C) Copyright IBM Corp. 2017, 2020 *| *| US Government Users Restricted Rights - Use, duplication or disclosure *| restricted by GSA ADP Schedule Contract with IBM Corp. *+------------------------------------------------------------------------+ */ define(['./modelmanagers/SourceModelManager'], function (SourceModelManager) { 'use strict'; /** * INTENT: SourcesModelAPI provides a UI-Oriented interface to the SourceModel * It hides the implementation of the underlying model. */ return ( /** * Contructor * @param {Object} options.dashboardApi The dashboard API * @param {Object} options.sourceModel The collection object from the boardModel */ function SourcesModelAPI(options) { _classCallCheck(this, SourcesModelAPI); var sourceModelManager = new SourceModelManager(options); var sourceModel = options.sourceModel; var sourcesCollectionManager = options.sourcesCollectionManager; // event APIa this.on = sourceModel.on.bind(sourceModel); this.off = sourceModel.off.bind(sourceModel); //DEFINE THE API.... this.getId = sourceModel.get.bind(sourceModel, 'id'); this.getLocalizedName = sourceModelManager.getLocalizedName.bind(sourceModelManager); this.getSearchPath = sourceModelManager.getSearchPath.bind(sourceModelManager); this.getModificationTime = sourceModelManager.getModificationTime.bind(sourceModelManager); this.exists = sourceModelManager.exists.bind(sourceModelManager); this.getType = sourceModelManager.getType.bind(sourceModelManager); this.getModule = sourceModelManager.getModule.bind(sourceModelManager); this.getModuleAPI = function () { return sourceModelManager._moduleAPI; }; this.relink = sourceModelManager.relink.bind(sourceModelManager); this.getState = sourceModelManager.getState.bind(sourceModelManager); this.setState = sourceModelManager.setState.bind(sourceModelManager); this.getAssetId = sourceModel.get.bind(sourceModel, 'assetId'); this.reloadMetadata = sourceModelManager.reloadMetadata.bind(sourceModelManager); this.getSourceIdsFromAssetId = sourcesCollectionManager && sourcesCollectionManager.getSourceIdsFromAssetId.bind(sourcesCollectionManager); this.getDeploymentReference = sourceModel.getDeploymentReference.bind(sourceModel); this.getIsOlapPackage = sourceModel.getIsOlapPackage.bind(sourceModel); this.getName = sourceModel.get.bind(sourceModel, 'name'); this.getCustomGroupColumns = sourceModel.get.bind(sourceModel, 'customGroupColumns'); this.setCustomGroupColumns = function (customGroupColumns, options) { return sourceModel.set({ customGroupColumns: customGroupColumns }, options); }; } ); }); //# sourceMappingURL=SourceModelAPI.js.map