Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -46,115 +46,6 @@ public Field(String name, Type type) {
this(name, type, null, false, null);
}

public static class Int8 extends Field {
public Int8(String name, String docString) {
super(name, Type.INT8, docString, false, null);
}
public Int8(String name, String docString, byte defaultValue) {
super(name, Type.INT8, docString, true, defaultValue);
}
}

public static class Int32 extends Field {
public Int32(String name, String docString) {
super(name, Type.INT32, docString, false, null);
}

public Int32(String name, String docString, int defaultValue) {
super(name, Type.INT32, docString, true, defaultValue);
}
}

public static class Int64 extends Field {
public Int64(String name, String docString) {
super(name, Type.INT64, docString, false, null);
}

public Int64(String name, String docString, long defaultValue) {
super(name, Type.INT64, docString, true, defaultValue);
}
}

public static class UUID extends Field {
public UUID(String name, String docString) {
super(name, Type.UUID, docString, false, null);
}

public UUID(String name, String docString, UUID defaultValue) {
super(name, Type.UUID, docString, true, defaultValue);
}
}

public static class Int16 extends Field {
public Int16(String name, String docString) {
super(name, Type.INT16, docString, false, null);
}
}

public static class Uint16 extends Field {
public Uint16(String name, String docString) {
super(name, Type.UINT16, docString, false, null);
}
}

public static class Uint32 extends Field {
public Uint32(String name, String docString) {
super(name, Type.UNSIGNED_INT32, docString, false, null);
}
}

public static class Float64 extends Field {
public Float64(String name, String docString) {
super(name, Type.FLOAT64, docString, false, null);
}

public Float64(String name, String docString, double defaultValue) {
super(name, Type.FLOAT64, docString, true, defaultValue);
}
}

public static class Str extends Field {
public Str(String name, String docString) {
super(name, Type.STRING, docString, false, null);
}
}

public static class CompactStr extends Field {
public CompactStr(String name, String docString) {
super(name, Type.COMPACT_STRING, docString, false, null);
}
}

public static class NullableStr extends Field {
public NullableStr(String name, String docString) {
super(name, Type.NULLABLE_STRING, docString, false, null);
}
}

public static class CompactNullableStr extends Field {
public CompactNullableStr(String name, String docString) {
super(name, Type.COMPACT_NULLABLE_STRING, docString, false, null);
}
}

public static class Bool extends Field {
public Bool(String name, String docString) {
super(name, Type.BOOLEAN, docString, false, null);
}
}

public static class Array extends Field {
public Array(String name, Type elementType, String docString) {
super(name, new ArrayOf(elementType), docString, false, null);
}
}

public static class CompactArray extends Field {
public CompactArray(String name, Type elementType, String docString) {
super(name, new CompactArrayOf(elementType), docString, false, null);
}
}

public static class TaggedFieldsSection extends Field {
private static final String NAME = "_tagged_fields";
private static final String DOC_STRING = "The tagged fields";
Expand All @@ -174,29 +65,4 @@ public TaggedFieldsSection(Type type) {
super(NAME, type, DOC_STRING, false, null);
}
}

public static class ComplexArray {
public final String name;
public final String docString;

public ComplexArray(String name, String docString) {
this.name = name;
this.docString = docString;
}

public Field withFields(Field... fields) {
Schema elementType = new Schema(fields);
return new Field(name, new ArrayOf(elementType), docString, false, null);
}

public Field nullableWithFields(Field... fields) {
Schema elementType = new Schema(fields);
return new Field(name, ArrayOf.nullable(elementType), docString, false, null);
}

public Field withFields(String docStringOverride, Field... fields) {
Schema elementType = new Schema(fields);
return new Field(name, new ArrayOf(elementType), docStringOverride, false, null);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,6 @@
import java.util.Arrays;
import java.util.Objects;

import static org.apache.kafka.common.protocol.MessageUtil.UNSIGNED_INT_MAX;
import static org.apache.kafka.common.protocol.MessageUtil.UNSIGNED_SHORT_MAX;

/**
* A record that can be serialized and deserialized according to a pre-defined schema
*/
Expand Down Expand Up @@ -80,124 +77,6 @@ public Object get(BoundField field) {
return getFieldOrDefault(field);
}

public Byte get(Field.Int8 field) {
return getByte(field.name);
}

public Integer get(Field.Int32 field) {
return getInt(field.name);
}

public Long get(Field.Int64 field) {
return getLong(field.name);
}

public Uuid get(Field.UUID field) {
return getUuid(field.name);
}

public Integer get(Field.Uint16 field) {
return getInt(field.name);
}

public Long get(Field.Uint32 field) {
return getLong(field.name);
}

public Short get(Field.Int16 field) {
return getShort(field.name);
}

public Double get(Field.Float64 field) {
return getDouble(field.name);
}

public String get(Field.Str field) {
return getString(field.name);
}

public String get(Field.NullableStr field) {
return getString(field.name);
}

public Boolean get(Field.Bool field) {
return getBoolean(field.name);
}

public Object[] get(Field.Array field) {
return getArray(field.name);
}

public Object[] get(Field.ComplexArray field) {
return getArray(field.name);
}

public Long getOrElse(Field.Int64 field, long alternative) {
if (hasField(field.name))
return getLong(field.name);
return alternative;
}

public Uuid getOrElse(Field.UUID field, Uuid alternative) {
if (hasField(field.name))
return getUuid(field.name);
return alternative;
}

public Short getOrElse(Field.Int16 field, short alternative) {
if (hasField(field.name))
return getShort(field.name);
return alternative;
}

public Byte getOrElse(Field.Int8 field, byte alternative) {
if (hasField(field.name))
return getByte(field.name);
return alternative;
}

public Integer getOrElse(Field.Int32 field, int alternative) {
if (hasField(field.name))
return getInt(field.name);
return alternative;
}

public Double getOrElse(Field.Float64 field, double alternative) {
if (hasField(field.name))
return getDouble(field.name);
return alternative;
}

public String getOrElse(Field.NullableStr field, String alternative) {
if (hasField(field.name))
return getString(field.name);
return alternative;
}

public String getOrElse(Field.Str field, String alternative) {
if (hasField(field.name))
return getString(field.name);
return alternative;
}

public boolean getOrElse(Field.Bool field, boolean alternative) {
if (hasField(field.name))
return getBoolean(field.name);
return alternative;
}

public Object[] getOrEmpty(Field.Array field) {
if (hasField(field.name))
return getArray(field.name);
return new Object[0];
}

public Object[] getOrEmpty(Field.ComplexArray field) {
if (hasField(field.name))
return getArray(field.name);
return new Object[0];
}

/**
* Get the record value for the field with the given name by doing a hash table lookup (slower!)
*
Expand Down Expand Up @@ -225,10 +104,6 @@ public boolean hasField(Field def) {
return schema.get(def.name) != null;
}

public boolean hasField(Field.ComplexArray def) {
return schema.get(def.name) != null;
}

public Struct getStruct(BoundField field) {
return (Struct) get(field);
}
Expand Down Expand Up @@ -382,79 +257,6 @@ public Struct set(String name, Object value) {
return this;
}

public Struct set(Field.Str def, String value) {
return set(def.name, value);
}

public Struct set(Field.NullableStr def, String value) {
return set(def.name, value);
}

public Struct set(Field.Int8 def, byte value) {
return set(def.name, value);
}

public Struct set(Field.Int32 def, int value) {
return set(def.name, value);
}

public Struct set(Field.Int64 def, long value) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you cleanup the setters as well?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

return set(def.name, value);
}

public Struct set(Field.UUID def, Uuid value) {
return set(def.name, value);
}

public Struct set(Field.Int16 def, short value) {
return set(def.name, value);
}

public Struct set(Field.Uint16 def, int value) {
if (value < 0 || value > UNSIGNED_SHORT_MAX) {
throw new RuntimeException("Invalid value for unsigned short for " +
def.name + ": " + value);
}
return set(def.name, value);
}

public Struct set(Field.Uint32 def, long value) {
if (value < 0 || value > UNSIGNED_INT_MAX) {
throw new RuntimeException("Invalid value for unsigned int for " +
def.name + ": " + value);
}
return set(def.name, value);
}

public Struct set(Field.Float64 def, double value) {
return set(def.name, value);
}

public Struct set(Field.Bool def, boolean value) {
return set(def.name, value);
}

public Struct set(Field.Array def, Object[] value) {
return set(def.name, value);
}

public Struct set(Field.ComplexArray def, Object[] value) {
return set(def.name, value);
}

public Struct setByteArray(String name, byte[] value) {
ByteBuffer buf = value == null ? null : ByteBuffer.wrap(value);
return set(name, buf);
}

public Struct setIfExists(Field.Array def, Object[] value) {
return setIfExists(def.name, value);
}

public Struct setIfExists(Field.ComplexArray def, Object[] value) {
return setIfExists(def.name, value);
}

public Struct setIfExists(Field def, Object value) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this could be removed as well

return setIfExists(def.name, value);
}
Expand Down Expand Up @@ -501,10 +303,6 @@ public Struct instance(Field field) {
return instance(schema.get(field.name));
}

public Struct instance(Field.ComplexArray field) {
return instance(schema.get(field.name));
}

/**
* Empty all the values from this record
*/
Expand Down
Loading