fastman
Version:
快速api测试及文档生成
117 lines • 3.86 kB
JavaScript
;
/**
* @license
* Copyright 2017 Red Hat
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var __extends = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
var enode_model_1 = require("../enode.model");
/**
* Models an OAS Schema object.
*/
var OasSchema = /** @class */ (function (_super) {
__extends(OasSchema, _super);
function OasSchema() {
return _super !== null && _super.apply(this, arguments) || this;
}
/**
* Accepts the given OAS node visitor and calls the appropriate method on it to visit this node.
* @param visitor
*/
OasSchema.prototype.accept = function (visitor) {
visitor.visitSchema(this);
};
/**
* Gets a list of all property names.
* @return {string[]}
*/
OasSchema.prototype.propertyNames = function () {
var rval = [];
for (var name in this.properties) {
rval.push(name);
}
return rval;
};
/**
* Gets a list of all the properties.
* @return {OasPropertySchema[]}
*/
OasSchema.prototype.getProperties = function () {
var names = this.propertyNames();
var rval = [];
for (var _i = 0, names_1 = names; _i < names_1.length; _i++) {
var name = names_1[_i];
rval.push(this.property(name));
}
return rval;
};
/**
* Add a property.
* @param propertyName
* @param schema
*/
OasSchema.prototype.addProperty = function (propertyName, schema) {
if (this.properties == null) {
this.properties = new OasSchemaProperties();
}
this.properties[propertyName] = schema;
return schema;
};
/**
* Removes a property by name.
* @param propertyName
*/
OasSchema.prototype.removeProperty = function (propertyName) {
var rval = undefined;
if (this.properties) {
rval = this.properties[propertyName];
if (rval) {
delete this.properties[propertyName];
}
}
return rval;
};
/**
* Gets a single property.
* @param propertyName
* @return {null}
*/
OasSchema.prototype.property = function (propertyName) {
if (this.properties && this.properties[propertyName]) {
return this.properties[propertyName];
}
else {
return null;
}
};
return OasSchema;
}(enode_model_1.OasExtensibleNode));
exports.OasSchema = OasSchema;
var OasSchemaProperties = /** @class */ (function () {
function OasSchemaProperties() {
}
return OasSchemaProperties;
}());
exports.OasSchemaProperties = OasSchemaProperties;
//# sourceMappingURL=schema.model.js.map