/// <inheritdoc/> public IActionResult BuildOutput(object result, OpenApiOperation operation) { if (this.logger.IsEnabled(LogLevel.Debug)) { this.logger.LogDebug( "Building output for [{operation}] using result [{@result}]", operation.OperationId, result); } // This must have been called after CanBuildOutput(), so we know these casts // and lookups will succeed var actionResult = OpenApiActionResult.FromPoco(result, operation, this.converters, this.logger); if (this.logger.IsEnabled(LogLevel.Debug)) { this.logger.LogDebug( "Built output [{actionResult}] for [{operation}] using result [{@result}]", actionResult, operation.OperationId, result); } return(actionResult); }
/// <inheritdoc/> public bool CanBuildOutput(object result, OpenApiOperation operation) { // Are we an OpenApi Result? if (!(result is OpenApiResult openApiResult)) { return(false); } return(OpenApiActionResult.CanConstructFrom(openApiResult, operation)); }
/// <inheritdoc/> public bool CanBuildOutput(object result, OpenApiOperation operation) { return(!(result is OpenApiResult) && OpenApiActionResult.CanConstructFrom(result, operation, this.logger)); }