import Subscription from './Subscription'; import * as types from '../types'; export default class EventLogFile extends Subscription { /** * Get the query attributes. * * @returns {Array} */ getAttributes(): Array { return ['Id', 'LogDate', 'LogFile', 'EventType', 'IsDeleted', 'ApiVersion', 'CreatedById', 'CreatedDate', 'LogFileLength', 'SystemModstamp', 'LastModifiedById', 'LastModifiedDate', 'LogFileFieldNames', 'LogFileFieldTypes', 'LogFileContentType']; } /** * Get the subscription context. * * @returns {types.Context} */ getContext(): types.Context { return { name: 'salesforce', subscription: 'eventLogFile', }; } /** * Get the subscription name. * * @returns {String} */ getName(): String { return 'EventLogFile'; } /** * Get the subscription query. * * @returns {String} */ getQuery(): String { const attributes = this.getAttributes().join(', '); const time = this.getLastQueryTime(); return `SELECT ${attributes} FROM EventLogFile WHERE LastModifiedDate >= ${time}`; } }