Interface RecordReadable
- All Known Subinterfaces:
TokenReadable
- All Known Implementing Classes:
BsonParser,BsonParser.Base64,BsonParser.SpacedHex,BsonParserSession,CborParser,CborParser.Base64,CborParser.SpacedHex,CborParserSession,CsvParser,CsvParserSession,HjsonParser,HjsonParserSession,HoconParser,HoconParserSession,HtmlParser,HtmlParserSession,IniParser,IniParserSession,Json5lParser,Json5lParserSession,Json5Parser,Json5ParserSession,JsonlParser,JsonlParserSession,JsonParser,JsonParserSession,MarkdownDocParser,MarkdownDocParserSession,MarkdownParser,MarkdownParserSession,MsgPackParser,MsgPackParser.Base64,MsgPackParser.SpacedHex,MsgPackParserSession,OpenApiParser,OpenApiParserSession,ParquetParser,ParquetParserSession,PlainTextParser,PlainTextParserSession,SseParser,SseParserSession,TomlParser,TomlParserSession,UonParser,UonParser.Decoding,UonParserSession,UrlEncodingParser,UrlEncodingParserSession,XmlParser,XmlParserSession,YamlParser,YamlParserSession
public interface RecordReadable
Capability role for objects that can open a whole-value
RecordReader cursor.
Implemented at both levels of the parser surface:
- the convenience
Parsersubclass (the object REST negotiation matches on) — a thin delegator that mirrorsread(...)by forwarding togetSession().readRecords(input); - the
ParserSessionsubclass (where the liveBeanSession/MarshallingContextis) — the real cursor creation.
Capability is detected via instanceof: a parser supports the record-streaming
surface exactly when it is an instance of this interface. There is no separate capability enum
or marker interface.
See Also:
TokenReadable— the structural-token extension (FULL formats).RecordWritable— the symmetric writer role.- Serializers and Parsers
-
Method Summary
Modifier and TypeMethodDescriptiondefault booleanStreaming-quality signal queryable before opening a cursor.readRecords(Object input) Opens a low-levelRecordReadercursor over the specified input.
-
Method Details
-
readRecords
Opens a low-levelRecordReadercursor over the specified input.When invoked on a convenience
Parserthe cursor is opened with default session args (mirroringread(...)). Callers that need request-derived configuration (locale, timezone, schema, swaps) should instead callcreateSession(args).build()and invoke this method on the resultingParserSession(which is also aRecordReadable).- Parameters:
input- The input. Subtypes define the supported types (typicallyReader/CharSequence/InputStream/byte[]/File).- Returns:
- A new
RecordReadercursor. - Throws:
IOException- If a problem occurred reading the underlying input.
-
isRecordStreaming
Streaming-quality signal queryable before opening a cursor.- Returns:
true ifreadRecords(Object)returns an O(1)-memory streaming cursor;false for buffered (whole-value) formats backed byRecordAdapter.
-