fastman
Version:
快速api测试及文档生成
133 lines • 4.62 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 Responses object. The Responses object can have any number of child
* responses, where the field names are either 'default' or an HTTP status code.
*/
var OasResponses = /** @class */ (function (_super) {
__extends(OasResponses, _super);
function OasResponses() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.__instanceof_IOasIndexedNode = true;
return _this;
}
/**
* Accepts the given OAS node visitor and calls the appropriate method on it to visit this node.
* @param visitor
*/
OasResponses.prototype.accept = function (visitor) {
visitor.visitResponses(this);
};
/**
* Returns a single response by status code.
* @param statusCode
* @return {OasResponse}
*/
OasResponses.prototype.response = function (statusCode) {
if (this._responses) {
return this._responses[statusCode];
}
else {
return null;
}
};
/**
* Returns an array of all the responses.
*/
OasResponses.prototype.responses = function () {
var names = this.responseStatusCodes();
var rval = [];
for (var _i = 0, names_1 = names; _i < names_1.length; _i++) {
var name = names_1[_i];
rval.push(this.response(name));
}
if (this.default !== undefined && this.default !== null) {
rval.push(this.default);
}
return rval;
};
/**
* Adds a response.
* @param name
* @param response
*/
OasResponses.prototype.addResponse = function (statusCode, response) {
if (this._responses == null) {
this._responses = new OasResponseItems();
}
this._responses[statusCode] = response;
return response;
};
/**
* Removes a single response child model.
* @param statusCode
*/
OasResponses.prototype.removeResponse = function (statusCode) {
var rval = this._responses[statusCode];
if (this._responses && rval) {
delete this._responses[statusCode];
}
return rval;
};
/**
* Gets a list of all the response status codes.
*/
OasResponses.prototype.responseStatusCodes = function () {
var rval = [];
for (var pname in this._responses) {
rval.push(pname);
}
return rval;
};
OasResponses.prototype.getItem = function (name) {
return this.response(name);
};
OasResponses.prototype.getItems = function () {
return this.responses();
};
OasResponses.prototype.getItemNames = function () {
return this.responseStatusCodes();
};
OasResponses.prototype.addItem = function (name, item) {
this.addResponse(name, item);
};
OasResponses.prototype.deleteItem = function (name) {
return this.removeResponse(name);
};
return OasResponses;
}(enode_model_1.OasExtensibleNode));
exports.OasResponses = OasResponses;
var OasResponseItems = /** @class */ (function () {
function OasResponseItems() {
}
return OasResponseItems;
}());
exports.OasResponseItems = OasResponseItems;
//# sourceMappingURL=responses.model.js.map