Files
nats-python/openapi_templete/node_modules/@asyncapi/parser/lib/models/base.js
T
2026-06-01 13:17:37 +02:00

27 lines
640 B
JavaScript

const ParserError = require('../errors/parser-error');
/**
* Implements common functionality for all the models.
* @class
* @alias module:@asyncapi/parser#Base
* @returns {Base}
*/
class Base {
constructor(json) {
if (json === undefined || json === null) throw new ParserError(`Invalid JSON to instantiate the ${this.constructor.name} object.`);
this._json = json;
}
/**
* @param {string} [key] A key to retrieve from the JSON object.
* @returns {any}
*/
json(key) {
if (key === undefined) return this._json;
if (!this._json) return;
return this._json[String(key)];
}
}
module.exports = Base;