Befor generating
This commit is contained in:
+63
@@ -0,0 +1,63 @@
|
||||
const { mix } = require('./utils');
|
||||
|
||||
const Base = require('./base');
|
||||
|
||||
const MixinDescription = require('../mixins/description');
|
||||
const MixinSpecificationExtensions = require('../mixins/specification-extensions');
|
||||
|
||||
/**
|
||||
* Implements functions to deal with a ServerVariable object.
|
||||
* @class
|
||||
* @alias module:@asyncapi/parser#ServerVariable
|
||||
* @extends Base
|
||||
* @mixes MixinDescription
|
||||
* @mixes MixinSpecificationExtensions
|
||||
* @returns {ServerVariable}
|
||||
*/
|
||||
class ServerVariable extends Base {
|
||||
/**
|
||||
* @returns {any[]}
|
||||
*/
|
||||
allowedValues() {
|
||||
return this._json.enum;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} name - Name of the variable.
|
||||
* @returns {boolean}
|
||||
*/
|
||||
allows(name) {
|
||||
if (this._json.enum === undefined) return true;
|
||||
return this._json.enum.includes(name);
|
||||
}
|
||||
|
||||
/**
|
||||
* @returns {boolean}
|
||||
*/
|
||||
hasAllowedValues() {
|
||||
return this._json.enum !== undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
* @returns {string}
|
||||
*/
|
||||
defaultValue() {
|
||||
return this._json.default;
|
||||
}
|
||||
|
||||
/**
|
||||
* @returns {boolean}
|
||||
*/
|
||||
hasDefaultValue() {
|
||||
return this._json.default !== undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
* @returns {string[]}
|
||||
*/
|
||||
examples() {
|
||||
return this._json.examples;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = mix(ServerVariable, MixinDescription, MixinSpecificationExtensions);
|
||||
Reference in New Issue
Block a user