Package org.apache.flink.formats.json
Class JsonRowDeserializationSchema
- java.lang.Object
-
- org.apache.flink.formats.json.JsonRowDeserializationSchema
-
- All Implemented Interfaces:
Serializable
,DeserializationSchema<Row>
,ResultTypeQueryable<Row>
@Internal public class JsonRowDeserializationSchema extends Object implements DeserializationSchema<Row>
Deserialization schema from JSON to Flink types.Deserializes a
byte[]
message as a JSON object and reads the specified fields.Failures during deserialization are forwarded as wrapped IOExceptions.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
JsonRowDeserializationSchema.Builder
Builder forJsonRowDeserializationSchema
.-
Nested classes/interfaces inherited from interface org.apache.flink.api.common.serialization.DeserializationSchema
DeserializationSchema.InitializationContext
-
-
Constructor Summary
Constructors Constructor Description JsonRowDeserializationSchema(String jsonSchema)
JsonRowDeserializationSchema(TypeInformation<Row> typeInfo)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Row
deserialize(byte[] message)
Deserializes the byte message.boolean
equals(Object o)
TypeInformation<Row>
getProducedType()
Gets the data type (as aTypeInformation
) produced by this function or input format.int
hashCode()
boolean
isEndOfStream(Row nextElement)
Method to decide whether the element signals the end of the stream.void
open(DeserializationSchema.InitializationContext context)
Initialization method for the schema.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.flink.api.common.serialization.DeserializationSchema
deserialize
-
-
-
-
Constructor Detail
-
JsonRowDeserializationSchema
public JsonRowDeserializationSchema(TypeInformation<Row> typeInfo)
-
JsonRowDeserializationSchema
public JsonRowDeserializationSchema(String jsonSchema)
-
-
Method Detail
-
open
public void open(DeserializationSchema.InitializationContext context) throws Exception
Description copied from interface:DeserializationSchema
Initialization method for the schema. It is called before the actual working methodsDeserializationSchema.deserialize(byte[])
and thus suitable for one time setup work.The provided
DeserializationSchema.InitializationContext
can be used to access additional features such as e.g. registering user metrics.- Specified by:
open
in interfaceDeserializationSchema<Row>
- Parameters:
context
- Contextual information that can be used during initialization.- Throws:
Exception
-
deserialize
public Row deserialize(byte[] message) throws IOException
Description copied from interface:DeserializationSchema
Deserializes the byte message.- Specified by:
deserialize
in interfaceDeserializationSchema<Row>
- Parameters:
message
- The message, as a byte array.- Returns:
- The deserialized message as an object (null if the message cannot be deserialized).
- Throws:
IOException
-
isEndOfStream
public boolean isEndOfStream(Row nextElement)
Description copied from interface:DeserializationSchema
Method to decide whether the element signals the end of the stream. If true is returned the element won't be emitted.- Specified by:
isEndOfStream
in interfaceDeserializationSchema<Row>
- Parameters:
nextElement
- The element to test for the end-of-stream signal.- Returns:
- True, if the element signals end of stream, false otherwise.
-
getProducedType
public TypeInformation<Row> getProducedType()
Description copied from interface:ResultTypeQueryable
Gets the data type (as aTypeInformation
) produced by this function or input format.- Specified by:
getProducedType
in interfaceResultTypeQueryable<Row>
- Returns:
- The data type produced by this function or input format.
-
-