本文整理汇总了TypeScript中@maxxton/microdocs-core/helpers.ProblemReporter.getRootObject方法的典型用法代码示例。如果您正苦于以下问题:TypeScript ProblemReporter.getRootObject方法的具体用法?TypeScript ProblemReporter.getRootObject怎么用?TypeScript ProblemReporter.getRootObject使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@maxxton/microdocs-core/helpers.ProblemReporter
的用法示例。
在下文中一共展示了ProblemReporter.getRootObject方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: ProblemReporter
clientViews.forEach(clientView => {
let reporter = new ProblemReporter(problemReport.getRootObject());
problemReporters.push(reporter);
let producerProperties = producerView.properties;
let clientProperties = clientView.properties;
// Check each producer properties
if (producerProperties) {
for (let key in producerProperties) {
// Find client Property by name
let producerProperty = producerProperties[key];
if (!isProducerIgnored(producerProperty)) {
let propertyName = getProducerPropertyMappingName(key, producerProperty);
let clientProperty = findClientPropertyByName(propertyName, clientProperties);
checkSchema(endpoint, clientProperty, producerProperty, clientProject, producerProject, reporter, path + (path == '' ? '' : '.') + key, placing);
}
}
}
// Check unknown client properties
if (clientProperties) {
for (let key in clientProperties) {
let clientProperty = clientProperties[key];
if (!isClientIgnored(clientProperty)) {
let name = getClientPropertyMappingName(key, clientProperty);
let producerProperty:Schema = null;
if(producerProperties) {
producerProperty = findProducerPropertyByName(name, producerProperties);
}
if (!producerProperty) {
let keyPath = path + (path ? '.' : '') + key;
reporter.report(ProblemLevels.WARNING, `Unknown property '${keyPath}' in ${placing} body`, endpoint.controller, endpoint.method);
}
}
}
}
// Decorate problems with view info
if(producerViews.length > 1 || clientViews.length > 1) {
reporter.getRawProblems().forEach(problem => {
problem.message = "[" + clientView.name + " > " + producerView.name + "] " + problem.message;
});
}
});