logger.js 2.44 KB
/*
 * ADOBE CONFIDENTIAL
 *
 * Copyright 2016 Adobe Systems Incorporated
 * All Rights Reserved.
 *
 * NOTICE:  All information contained herein is, and remains
 * the property of Adobe Systems Incorporated and its suppliers,
 * if any.  The intellectual and technical concepts contained
 * herein are proprietary to Adobe Systems Incorporated and its
 * suppliers and may be covered by U.S. and Foreign Patents,
 * patents in process, and are protected by trade secret or copyright law.
 * Dissemination of this information or reproduction of this material
 * is strictly forbidden unless prior written permission is obtained
 * from Adobe Systems Incorporated.
 */
/* istanbul ignore next */
define('screens/player/firmware/log/logger', [], function() {
    'use strict';

    /**
     * Defines the logger API.
     *
     * @interface Logger
     */
    return Object.freeze({

        /**
         * The service name
         * @property serviceName
         * @memberof Logger
         * @constant
         */
        serviceName: 'com.adobe.cq.screens.player.log.logger',

        /**
         * Reads the list of existing log files
         * @returns {Promise} a promise that the log files get listed
         * @function Logger#listLogs
         */
        listLogs: function() {
            return Promise.reject();
        },

        /**
         * Gets the log writer
         * @returns {Logger} instance of the logging access
         * @function Logger#getWriter
         */
        getWriter: function() {
            return null;
        },

        /**
         * Sets the parameter for log rotation
         * @param {Object} options the log rotation options
         * @function Logger#setDefaultLogRotation
         */
        setDefaultLogRotation: function(options) {
        },

        /**
         * Reads the content of a file as a Blob
         * @param {String} name the file name
         * @returns {Promise} a promise that the log file got retrieved
         * @function Logger#getLogBlob
         */
        getLogBlob: function(name) {
            return Promise.reject();
        },

        /**
         * Deletes logs from the device
         * @param {String|String[]} [name] if given deletes the passed logs, otherwise all logs stored on the device
         * @returns {*|Promise} a promise that the logs are pruned
         * @function Logger#pruneLogs
         */
        pruneLogs: function(name) {
            return Promise.reject();
        }
    });

});