fun parse()

in opensearch-notebooks/src/main/kotlin/org/opensearch/notebooks/model/Notebook.kt [264:294]


            fun parse(parser: XContentParser): Output {
                var result: String? = null
                var outputType: String? = null
                var executionTime: String? = null
                XContentParserUtils.ensureExpectedToken(
                    XContentParser.Token.START_OBJECT,
                    parser.currentToken(),
                    parser
                )
                while (XContentParser.Token.END_OBJECT != parser.nextToken()) {
                    val fieldName = parser.currentName()
                    parser.nextToken()
                    when (fieldName) {
                        RESULT_TAG -> result = parser.text()
                        OUTPUT_TYPE_TAG -> outputType = parser.text()
                        EXECUTION_TIME_TAG -> executionTime = parser.text()
                        else -> {
                            parser.skipChildren()
                            log.info("$LOG_PREFIX:Format Skipping Unknown field $fieldName")
                        }
                    }
                }
                result ?: throw IllegalArgumentException("$RESULT_TAG field absent")
                outputType ?: throw IllegalArgumentException("$OUTPUT_TYPE_TAG field absent")
                executionTime ?: throw IllegalArgumentException("$EXECUTION_TIME_TAG field absent")
                return Output(
                    result,
                    outputType,
                    executionTime
                )
            }