diff --git a/apache-avro/README.md b/apache-avro/README.md
deleted file mode 100644
index b338e8e565..0000000000
--- a/apache-avro/README.md
+++ /dev/null
@@ -1,6 +0,0 @@
-## Apache Avro
-
-This module contains articles about Apache Avro
-
-### Relevant Articles:
-- [Guide to Apache Avro](https://www.baeldung.com/java-apache-avro)
diff --git a/apache-avro/pom.xml b/apache-avro/pom.xml
deleted file mode 100644
index ad32ebb702..0000000000
--- a/apache-avro/pom.xml
+++ /dev/null
@@ -1,72 +0,0 @@
-
-
- 4.0.0
- apache-avro
- 0.0.1-SNAPSHOT
- apache-avro
-
-
- com.baeldung
- parent-modules
- 1.0.0-SNAPSHOT
-
-
-
-
- org.slf4j
- slf4j-simple
- ${slf4j.version}
- compile
-
-
- org.apache.avro
- avro
- ${avro.version}
-
-
- org.apache.avro
- avro-compiler
- ${avro.version}
-
-
-
- org.apache.avro
- avro-maven-plugin
- ${avro.version}
-
-
-
-
-
-
- org.apache.avro
- avro-maven-plugin
- ${avro.version}
-
-
- schemas
- generate-sources
-
- schema
- protocol
- idl-protocol
-
-
- ${project.basedir}/src/main/resources/
- ${project.basedir}/src/main/java/
-
-
-
-
-
-
-
-
- 1.8.2
- 1.7.25
-
-
-
diff --git a/apache-avro/src/main/java/com/baeldung/avro/util/AvroClassGenerator.java b/apache-avro/src/main/java/com/baeldung/avro/util/AvroClassGenerator.java
deleted file mode 100644
index 718b62a752..0000000000
--- a/apache-avro/src/main/java/com/baeldung/avro/util/AvroClassGenerator.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package com.baeldung.avro.util;
-
-import org.apache.avro.Schema;
-import org.apache.avro.compiler.specific.SpecificCompiler;
-
-import java.io.File;
-import java.io.IOException;
-
-public class AvroClassGenerator {
- public void generateAvroClasses() throws IOException {
- SpecificCompiler compiler = new SpecificCompiler(new Schema.Parser().parse(new File("src/main/resources/avroHttpRequest-schema.avsc")));
- compiler.compileToDestination(new File("src/main/resources"), new File("src/main/java"));
- }
-}
diff --git a/apache-avro/src/main/java/com/baeldung/avro/util/AvroSchemaBuilder.java b/apache-avro/src/main/java/com/baeldung/avro/util/AvroSchemaBuilder.java
deleted file mode 100644
index 4a1314cd00..0000000000
--- a/apache-avro/src/main/java/com/baeldung/avro/util/AvroSchemaBuilder.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.baeldung.avro.util;
-
-
-import org.apache.avro.Schema;
-import org.apache.avro.SchemaBuilder;
-
-public class AvroSchemaBuilder {
-
- public Schema createAvroHttpRequestSchema(){
-
- Schema clientIdentifier = SchemaBuilder.record("ClientIdentifier").namespace("com.baeldung.avro.model")
- .fields().requiredString("hostName").requiredString("ipAddress").endRecord();
-
- Schema avroHttpRequest = SchemaBuilder.record("AvroHttpRequest").namespace("com.baeldung.avro.model").fields()
- .requiredLong("requestTime")
- .name("clientIdentifier").type(clientIdentifier).noDefault()
- .name("employeeNames").type().array().items().stringType().arrayDefault(null)
- .name("active").type().enumeration("Active").symbols("YES", "NO").noDefault()
- .endRecord();
- return avroHttpRequest;
- }
-}
-
-
diff --git a/apache-avro/src/main/java/com/baeldung/avro/util/model/Active.java b/apache-avro/src/main/java/com/baeldung/avro/util/model/Active.java
deleted file mode 100644
index 3ae0508394..0000000000
--- a/apache-avro/src/main/java/com/baeldung/avro/util/model/Active.java
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * Autogenerated by Avro
- *
- * DO NOT EDIT DIRECTLY
- */
-package com.baeldung.avro.util.model;
-@SuppressWarnings("all")
-@org.apache.avro.specific.AvroGenerated
-public enum Active {
- YES, NO ;
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"enum\",\"name\":\"Active\",\"namespace\":\"com.baeldung.avro.model\",\"symbols\":[\"YES\",\"NO\"]}");
- public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
-}
diff --git a/apache-avro/src/main/java/com/baeldung/avro/util/model/AvroHttpRequest.java b/apache-avro/src/main/java/com/baeldung/avro/util/model/AvroHttpRequest.java
deleted file mode 100644
index 56b36050a5..0000000000
--- a/apache-avro/src/main/java/com/baeldung/avro/util/model/AvroHttpRequest.java
+++ /dev/null
@@ -1,491 +0,0 @@
-/**
- * Autogenerated by Avro
- *
- * DO NOT EDIT DIRECTLY
- */
-package com.baeldung.avro.util.model;
-
-import org.apache.avro.specific.SpecificData;
-import org.apache.avro.message.BinaryMessageEncoder;
-import org.apache.avro.message.BinaryMessageDecoder;
-import org.apache.avro.message.SchemaStore;
-
-@SuppressWarnings("all")
-@org.apache.avro.specific.AvroGenerated
-public class AvroHttpRequest extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord {
- private static final long serialVersionUID = -8649010116827875312L;
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"AvroHttpRequest\",\"namespace\":\"com.baeldung.avro.model\",\"fields\":[{\"name\":\"requestTime\",\"type\":\"long\"},{\"name\":\"clientIdentifier\",\"type\":{\"type\":\"record\",\"name\":\"ClientIdentifier\",\"fields\":[{\"name\":\"hostName\",\"type\":\"string\"},{\"name\":\"ipAddress\",\"type\":\"string\"}]}},{\"name\":\"employeeNames\",\"type\":{\"type\":\"array\",\"items\":\"string\"},\"default\":null},{\"name\":\"active\",\"type\":{\"type\":\"enum\",\"name\":\"Active\",\"symbols\":[\"YES\",\"NO\"]}}]}");
- public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
-
- private static SpecificData MODEL$ = new SpecificData();
-
- private static final BinaryMessageEncoder ENCODER =
- new BinaryMessageEncoder(MODEL$, SCHEMA$);
-
- private static final BinaryMessageDecoder DECODER =
- new BinaryMessageDecoder(MODEL$, SCHEMA$);
-
- /**
- * Return the BinaryMessageDecoder instance used by this class.
- */
- public static BinaryMessageDecoder getDecoder() {
- return DECODER;
- }
-
- /**
- * Create a new BinaryMessageDecoder instance for this class that uses the specified {@link SchemaStore}.
- * @param resolver a {@link SchemaStore} used to find schemas by fingerprint
- */
- public static BinaryMessageDecoder createDecoder(SchemaStore resolver) {
- return new BinaryMessageDecoder(MODEL$, SCHEMA$, resolver);
- }
-
- /** Serializes this AvroHttpRequest to a ByteBuffer. */
- public java.nio.ByteBuffer toByteBuffer() throws java.io.IOException {
- return ENCODER.encode(this);
- }
-
- /** Deserializes a AvroHttpRequest from a ByteBuffer. */
- public static AvroHttpRequest fromByteBuffer(
- java.nio.ByteBuffer b) throws java.io.IOException {
- return DECODER.decode(b);
- }
-
- @Deprecated public long requestTime;
- @Deprecated public ClientIdentifier clientIdentifier;
- @Deprecated public java.util.List employeeNames;
- @Deprecated public Active active;
-
- /**
- * Default constructor. Note that this does not initialize fields
- * to their default values from the schema. If that is desired then
- * one should use newBuilder().
- */
- public AvroHttpRequest() {}
-
- /**
- * All-args constructor.
- * @param requestTime The new value for requestTime
- * @param clientIdentifier The new value for clientIdentifier
- * @param employeeNames The new value for employeeNames
- * @param active The new value for active
- */
- public AvroHttpRequest(java.lang.Long requestTime, ClientIdentifier clientIdentifier, java.util.List employeeNames, Active active) {
- this.requestTime = requestTime;
- this.clientIdentifier = clientIdentifier;
- this.employeeNames = employeeNames;
- this.active = active;
- }
-
- public org.apache.avro.Schema getSchema() { return SCHEMA$; }
- // Used by DatumWriter. Applications should not call.
- public java.lang.Object get(int field$) {
- switch (field$) {
- case 0: return requestTime;
- case 1: return clientIdentifier;
- case 2: return employeeNames;
- case 3: return active;
- default: throw new org.apache.avro.AvroRuntimeException("Bad index");
- }
- }
-
- // Used by DatumReader. Applications should not call.
- @SuppressWarnings(value="unchecked")
- public void put(int field$, java.lang.Object value$) {
- switch (field$) {
- case 0: requestTime = (java.lang.Long)value$; break;
- case 1: clientIdentifier = (ClientIdentifier)value$; break;
- case 2: employeeNames = (java.util.List)value$; break;
- case 3: active = (Active)value$; break;
- default: throw new org.apache.avro.AvroRuntimeException("Bad index");
- }
- }
-
- /**
- * Gets the value of the 'requestTime' field.
- * @return The value of the 'requestTime' field.
- */
- public java.lang.Long getRequestTime() {
- return requestTime;
- }
-
- /**
- * Sets the value of the 'requestTime' field.
- * @param value the value to set.
- */
- public void setRequestTime(java.lang.Long value) {
- this.requestTime = value;
- }
-
- /**
- * Gets the value of the 'clientIdentifier' field.
- * @return The value of the 'clientIdentifier' field.
- */
- public ClientIdentifier getClientIdentifier() {
- return clientIdentifier;
- }
-
- /**
- * Sets the value of the 'clientIdentifier' field.
- * @param value the value to set.
- */
- public void setClientIdentifier(ClientIdentifier value) {
- this.clientIdentifier = value;
- }
-
- /**
- * Gets the value of the 'employeeNames' field.
- * @return The value of the 'employeeNames' field.
- */
- public java.util.List getEmployeeNames() {
- return employeeNames;
- }
-
- /**
- * Sets the value of the 'employeeNames' field.
- * @param value the value to set.
- */
- public void setEmployeeNames(java.util.List value) {
- this.employeeNames = value;
- }
-
- /**
- * Gets the value of the 'active' field.
- * @return The value of the 'active' field.
- */
- public Active getActive() {
- return active;
- }
-
- /**
- * Sets the value of the 'active' field.
- * @param value the value to set.
- */
- public void setActive(Active value) {
- this.active = value;
- }
-
- /**
- * Creates a new AvroHttpRequest RecordBuilder.
- * @return A new AvroHttpRequest RecordBuilder
- */
- public static AvroHttpRequest.Builder newBuilder() {
- return new AvroHttpRequest.Builder();
- }
-
- /**
- * Creates a new AvroHttpRequest RecordBuilder by copying an existing Builder.
- * @param other The existing builder to copy.
- * @return A new AvroHttpRequest RecordBuilder
- */
- public static AvroHttpRequest.Builder newBuilder(AvroHttpRequest.Builder other) {
- return new AvroHttpRequest.Builder(other);
- }
-
- /**
- * Creates a new AvroHttpRequest RecordBuilder by copying an existing AvroHttpRequest instance.
- * @param other The existing instance to copy.
- * @return A new AvroHttpRequest RecordBuilder
- */
- public static AvroHttpRequest.Builder newBuilder(AvroHttpRequest other) {
- return new AvroHttpRequest.Builder(other);
- }
-
- /**
- * RecordBuilder for AvroHttpRequest instances.
- */
- public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBase
- implements org.apache.avro.data.RecordBuilder {
-
- private long requestTime;
- private ClientIdentifier clientIdentifier;
- private ClientIdentifier.Builder clientIdentifierBuilder;
- private java.util.List employeeNames;
- private Active active;
-
- /** Creates a new Builder */
- private Builder() {
- super(SCHEMA$);
- }
-
- /**
- * Creates a Builder by copying an existing Builder.
- * @param other The existing Builder to copy.
- */
- private Builder(AvroHttpRequest.Builder other) {
- super(other);
- if (isValidValue(fields()[0], other.requestTime)) {
- this.requestTime = data().deepCopy(fields()[0].schema(), other.requestTime);
- fieldSetFlags()[0] = true;
- }
- if (isValidValue(fields()[1], other.clientIdentifier)) {
- this.clientIdentifier = data().deepCopy(fields()[1].schema(), other.clientIdentifier);
- fieldSetFlags()[1] = true;
- }
- if (other.hasClientIdentifierBuilder()) {
- this.clientIdentifierBuilder = ClientIdentifier.newBuilder(other.getClientIdentifierBuilder());
- }
- if (isValidValue(fields()[2], other.employeeNames)) {
- this.employeeNames = data().deepCopy(fields()[2].schema(), other.employeeNames);
- fieldSetFlags()[2] = true;
- }
- if (isValidValue(fields()[3], other.active)) {
- this.active = data().deepCopy(fields()[3].schema(), other.active);
- fieldSetFlags()[3] = true;
- }
- }
-
- /**
- * Creates a Builder by copying an existing AvroHttpRequest instance
- * @param other The existing instance to copy.
- */
- private Builder(AvroHttpRequest other) {
- super(SCHEMA$);
- if (isValidValue(fields()[0], other.requestTime)) {
- this.requestTime = data().deepCopy(fields()[0].schema(), other.requestTime);
- fieldSetFlags()[0] = true;
- }
- if (isValidValue(fields()[1], other.clientIdentifier)) {
- this.clientIdentifier = data().deepCopy(fields()[1].schema(), other.clientIdentifier);
- fieldSetFlags()[1] = true;
- }
- this.clientIdentifierBuilder = null;
- if (isValidValue(fields()[2], other.employeeNames)) {
- this.employeeNames = data().deepCopy(fields()[2].schema(), other.employeeNames);
- fieldSetFlags()[2] = true;
- }
- if (isValidValue(fields()[3], other.active)) {
- this.active = data().deepCopy(fields()[3].schema(), other.active);
- fieldSetFlags()[3] = true;
- }
- }
-
- /**
- * Gets the value of the 'requestTime' field.
- * @return The value.
- */
- public java.lang.Long getRequestTime() {
- return requestTime;
- }
-
- /**
- * Sets the value of the 'requestTime' field.
- * @param value The value of 'requestTime'.
- * @return This builder.
- */
- public AvroHttpRequest.Builder setRequestTime(long value) {
- validate(fields()[0], value);
- this.requestTime = value;
- fieldSetFlags()[0] = true;
- return this;
- }
-
- /**
- * Checks whether the 'requestTime' field has been set.
- * @return True if the 'requestTime' field has been set, false otherwise.
- */
- public boolean hasRequestTime() {
- return fieldSetFlags()[0];
- }
-
-
- /**
- * Clears the value of the 'requestTime' field.
- * @return This builder.
- */
- public AvroHttpRequest.Builder clearRequestTime() {
- fieldSetFlags()[0] = false;
- return this;
- }
-
- /**
- * Gets the value of the 'clientIdentifier' field.
- * @return The value.
- */
- public ClientIdentifier getClientIdentifier() {
- return clientIdentifier;
- }
-
- /**
- * Sets the value of the 'clientIdentifier' field.
- * @param value The value of 'clientIdentifier'.
- * @return This builder.
- */
- public AvroHttpRequest.Builder setClientIdentifier(ClientIdentifier value) {
- validate(fields()[1], value);
- this.clientIdentifierBuilder = null;
- this.clientIdentifier = value;
- fieldSetFlags()[1] = true;
- return this;
- }
-
- /**
- * Checks whether the 'clientIdentifier' field has been set.
- * @return True if the 'clientIdentifier' field has been set, false otherwise.
- */
- public boolean hasClientIdentifier() {
- return fieldSetFlags()[1];
- }
-
- /**
- * Gets the Builder instance for the 'clientIdentifier' field and creates one if it doesn't exist yet.
- * @return This builder.
- */
- public ClientIdentifier.Builder getClientIdentifierBuilder() {
- if (clientIdentifierBuilder == null) {
- if (hasClientIdentifier()) {
- setClientIdentifierBuilder(ClientIdentifier.newBuilder(clientIdentifier));
- } else {
- setClientIdentifierBuilder(ClientIdentifier.newBuilder());
- }
- }
- return clientIdentifierBuilder;
- }
-
- /**
- * Sets the Builder instance for the 'clientIdentifier' field
- * @param value The builder instance that must be set.
- * @return This builder.
- */
- public AvroHttpRequest.Builder setClientIdentifierBuilder(ClientIdentifier.Builder value) {
- clearClientIdentifier();
- clientIdentifierBuilder = value;
- return this;
- }
-
- /**
- * Checks whether the 'clientIdentifier' field has an active Builder instance
- * @return True if the 'clientIdentifier' field has an active Builder instance
- */
- public boolean hasClientIdentifierBuilder() {
- return clientIdentifierBuilder != null;
- }
-
- /**
- * Clears the value of the 'clientIdentifier' field.
- * @return This builder.
- */
- public AvroHttpRequest.Builder clearClientIdentifier() {
- clientIdentifier = null;
- clientIdentifierBuilder = null;
- fieldSetFlags()[1] = false;
- return this;
- }
-
- /**
- * Gets the value of the 'employeeNames' field.
- * @return The value.
- */
- public java.util.List getEmployeeNames() {
- return employeeNames;
- }
-
- /**
- * Sets the value of the 'employeeNames' field.
- * @param value The value of 'employeeNames'.
- * @return This builder.
- */
- public AvroHttpRequest.Builder setEmployeeNames(java.util.List value) {
- validate(fields()[2], value);
- this.employeeNames = value;
- fieldSetFlags()[2] = true;
- return this;
- }
-
- /**
- * Checks whether the 'employeeNames' field has been set.
- * @return True if the 'employeeNames' field has been set, false otherwise.
- */
- public boolean hasEmployeeNames() {
- return fieldSetFlags()[2];
- }
-
-
- /**
- * Clears the value of the 'employeeNames' field.
- * @return This builder.
- */
- public AvroHttpRequest.Builder clearEmployeeNames() {
- employeeNames = null;
- fieldSetFlags()[2] = false;
- return this;
- }
-
- /**
- * Gets the value of the 'active' field.
- * @return The value.
- */
- public Active getActive() {
- return active;
- }
-
- /**
- * Sets the value of the 'active' field.
- * @param value The value of 'active'.
- * @return This builder.
- */
- public AvroHttpRequest.Builder setActive(Active value) {
- validate(fields()[3], value);
- this.active = value;
- fieldSetFlags()[3] = true;
- return this;
- }
-
- /**
- * Checks whether the 'active' field has been set.
- * @return True if the 'active' field has been set, false otherwise.
- */
- public boolean hasActive() {
- return fieldSetFlags()[3];
- }
-
-
- /**
- * Clears the value of the 'active' field.
- * @return This builder.
- */
- public AvroHttpRequest.Builder clearActive() {
- active = null;
- fieldSetFlags()[3] = false;
- return this;
- }
-
- @Override
- @SuppressWarnings("unchecked")
- public AvroHttpRequest build() {
- try {
- AvroHttpRequest record = new AvroHttpRequest();
- record.requestTime = fieldSetFlags()[0] ? this.requestTime : (java.lang.Long) defaultValue(fields()[0]);
- if (clientIdentifierBuilder != null) {
- record.clientIdentifier = this.clientIdentifierBuilder.build();
- } else {
- record.clientIdentifier = fieldSetFlags()[1] ? this.clientIdentifier : (ClientIdentifier) defaultValue(fields()[1]);
- }
- record.employeeNames = fieldSetFlags()[2] ? this.employeeNames : (java.util.List) defaultValue(fields()[2]);
- record.active = fieldSetFlags()[3] ? this.active : (Active) defaultValue(fields()[3]);
- return record;
- } catch (java.lang.Exception e) {
- throw new org.apache.avro.AvroRuntimeException(e);
- }
- }
- }
-
- @SuppressWarnings("unchecked")
- private static final org.apache.avro.io.DatumWriter
- WRITER$ = (org.apache.avro.io.DatumWriter)MODEL$.createDatumWriter(SCHEMA$);
-
- @Override public void writeExternal(java.io.ObjectOutput out)
- throws java.io.IOException {
- WRITER$.write(this, SpecificData.getEncoder(out));
- }
-
- @SuppressWarnings("unchecked")
- private static final org.apache.avro.io.DatumReader
- READER$ = (org.apache.avro.io.DatumReader)MODEL$.createDatumReader(SCHEMA$);
-
- @Override public void readExternal(java.io.ObjectInput in)
- throws java.io.IOException {
- READER$.read(this, SpecificData.getDecoder(in));
- }
-
-}
diff --git a/apache-avro/src/main/java/com/baeldung/avro/util/model/ClientIdentifier.java b/apache-avro/src/main/java/com/baeldung/avro/util/model/ClientIdentifier.java
deleted file mode 100644
index 503dde40df..0000000000
--- a/apache-avro/src/main/java/com/baeldung/avro/util/model/ClientIdentifier.java
+++ /dev/null
@@ -1,308 +0,0 @@
-/**
- * Autogenerated by Avro
- *
- * DO NOT EDIT DIRECTLY
- */
-package com.baeldung.avro.util.model;
-
-import org.apache.avro.specific.SpecificData;
-import org.apache.avro.message.BinaryMessageEncoder;
-import org.apache.avro.message.BinaryMessageDecoder;
-import org.apache.avro.message.SchemaStore;
-
-@SuppressWarnings("all")
-@org.apache.avro.specific.AvroGenerated
-public class ClientIdentifier extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord {
- private static final long serialVersionUID = 8754570983127295424L;
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"ClientIdentifier\",\"namespace\":\"com.baeldung.avro.model\",\"fields\":[{\"name\":\"hostName\",\"type\":\"string\"},{\"name\":\"ipAddress\",\"type\":\"string\"}]}");
- public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
-
- private static SpecificData MODEL$ = new SpecificData();
-
- private static final BinaryMessageEncoder ENCODER =
- new BinaryMessageEncoder(MODEL$, SCHEMA$);
-
- private static final BinaryMessageDecoder DECODER =
- new BinaryMessageDecoder(MODEL$, SCHEMA$);
-
- /**
- * Return the BinaryMessageDecoder instance used by this class.
- */
- public static BinaryMessageDecoder getDecoder() {
- return DECODER;
- }
-
- /**
- * Create a new BinaryMessageDecoder instance for this class that uses the specified {@link SchemaStore}.
- * @param resolver a {@link SchemaStore} used to find schemas by fingerprint
- */
- public static BinaryMessageDecoder createDecoder(SchemaStore resolver) {
- return new BinaryMessageDecoder(MODEL$, SCHEMA$, resolver);
- }
-
- /** Serializes this ClientIdentifier to a ByteBuffer. */
- public java.nio.ByteBuffer toByteBuffer() throws java.io.IOException {
- return ENCODER.encode(this);
- }
-
- /** Deserializes a ClientIdentifier from a ByteBuffer. */
- public static ClientIdentifier fromByteBuffer(
- java.nio.ByteBuffer b) throws java.io.IOException {
- return DECODER.decode(b);
- }
-
- @Deprecated public java.lang.CharSequence hostName;
- @Deprecated public java.lang.CharSequence ipAddress;
-
- /**
- * Default constructor. Note that this does not initialize fields
- * to their default values from the schema. If that is desired then
- * one should use newBuilder().
- */
- public ClientIdentifier() {}
-
- /**
- * All-args constructor.
- * @param hostName The new value for hostName
- * @param ipAddress The new value for ipAddress
- */
- public ClientIdentifier(java.lang.CharSequence hostName, java.lang.CharSequence ipAddress) {
- this.hostName = hostName;
- this.ipAddress = ipAddress;
- }
-
- public org.apache.avro.Schema getSchema() { return SCHEMA$; }
- // Used by DatumWriter. Applications should not call.
- public java.lang.Object get(int field$) {
- switch (field$) {
- case 0: return hostName;
- case 1: return ipAddress;
- default: throw new org.apache.avro.AvroRuntimeException("Bad index");
- }
- }
-
- // Used by DatumReader. Applications should not call.
- @SuppressWarnings(value="unchecked")
- public void put(int field$, java.lang.Object value$) {
- switch (field$) {
- case 0: hostName = (java.lang.CharSequence)value$; break;
- case 1: ipAddress = (java.lang.CharSequence)value$; break;
- default: throw new org.apache.avro.AvroRuntimeException("Bad index");
- }
- }
-
- /**
- * Gets the value of the 'hostName' field.
- * @return The value of the 'hostName' field.
- */
- public java.lang.CharSequence getHostName() {
- return hostName;
- }
-
- /**
- * Sets the value of the 'hostName' field.
- * @param value the value to set.
- */
- public void setHostName(java.lang.CharSequence value) {
- this.hostName = value;
- }
-
- /**
- * Gets the value of the 'ipAddress' field.
- * @return The value of the 'ipAddress' field.
- */
- public java.lang.CharSequence getIpAddress() {
- return ipAddress;
- }
-
- /**
- * Sets the value of the 'ipAddress' field.
- * @param value the value to set.
- */
- public void setIpAddress(java.lang.CharSequence value) {
- this.ipAddress = value;
- }
-
- /**
- * Creates a new ClientIdentifier RecordBuilder.
- * @return A new ClientIdentifier RecordBuilder
- */
- public static ClientIdentifier.Builder newBuilder() {
- return new ClientIdentifier.Builder();
- }
-
- /**
- * Creates a new ClientIdentifier RecordBuilder by copying an existing Builder.
- * @param other The existing builder to copy.
- * @return A new ClientIdentifier RecordBuilder
- */
- public static ClientIdentifier.Builder newBuilder(ClientIdentifier.Builder other) {
- return new ClientIdentifier.Builder(other);
- }
-
- /**
- * Creates a new ClientIdentifier RecordBuilder by copying an existing ClientIdentifier instance.
- * @param other The existing instance to copy.
- * @return A new ClientIdentifier RecordBuilder
- */
- public static ClientIdentifier.Builder newBuilder(ClientIdentifier other) {
- return new ClientIdentifier.Builder(other);
- }
-
- /**
- * RecordBuilder for ClientIdentifier instances.
- */
- public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBase
- implements org.apache.avro.data.RecordBuilder {
-
- private java.lang.CharSequence hostName;
- private java.lang.CharSequence ipAddress;
-
- /** Creates a new Builder */
- private Builder() {
- super(SCHEMA$);
- }
-
- /**
- * Creates a Builder by copying an existing Builder.
- * @param other The existing Builder to copy.
- */
- private Builder(ClientIdentifier.Builder other) {
- super(other);
- if (isValidValue(fields()[0], other.hostName)) {
- this.hostName = data().deepCopy(fields()[0].schema(), other.hostName);
- fieldSetFlags()[0] = true;
- }
- if (isValidValue(fields()[1], other.ipAddress)) {
- this.ipAddress = data().deepCopy(fields()[1].schema(), other.ipAddress);
- fieldSetFlags()[1] = true;
- }
- }
-
- /**
- * Creates a Builder by copying an existing ClientIdentifier instance
- * @param other The existing instance to copy.
- */
- private Builder(ClientIdentifier other) {
- super(SCHEMA$);
- if (isValidValue(fields()[0], other.hostName)) {
- this.hostName = data().deepCopy(fields()[0].schema(), other.hostName);
- fieldSetFlags()[0] = true;
- }
- if (isValidValue(fields()[1], other.ipAddress)) {
- this.ipAddress = data().deepCopy(fields()[1].schema(), other.ipAddress);
- fieldSetFlags()[1] = true;
- }
- }
-
- /**
- * Gets the value of the 'hostName' field.
- * @return The value.
- */
- public java.lang.CharSequence getHostName() {
- return hostName;
- }
-
- /**
- * Sets the value of the 'hostName' field.
- * @param value The value of 'hostName'.
- * @return This builder.
- */
- public ClientIdentifier.Builder setHostName(java.lang.CharSequence value) {
- validate(fields()[0], value);
- this.hostName = value;
- fieldSetFlags()[0] = true;
- return this;
- }
-
- /**
- * Checks whether the 'hostName' field has been set.
- * @return True if the 'hostName' field has been set, false otherwise.
- */
- public boolean hasHostName() {
- return fieldSetFlags()[0];
- }
-
-
- /**
- * Clears the value of the 'hostName' field.
- * @return This builder.
- */
- public ClientIdentifier.Builder clearHostName() {
- hostName = null;
- fieldSetFlags()[0] = false;
- return this;
- }
-
- /**
- * Gets the value of the 'ipAddress' field.
- * @return The value.
- */
- public java.lang.CharSequence getIpAddress() {
- return ipAddress;
- }
-
- /**
- * Sets the value of the 'ipAddress' field.
- * @param value The value of 'ipAddress'.
- * @return This builder.
- */
- public ClientIdentifier.Builder setIpAddress(java.lang.CharSequence value) {
- validate(fields()[1], value);
- this.ipAddress = value;
- fieldSetFlags()[1] = true;
- return this;
- }
-
- /**
- * Checks whether the 'ipAddress' field has been set.
- * @return True if the 'ipAddress' field has been set, false otherwise.
- */
- public boolean hasIpAddress() {
- return fieldSetFlags()[1];
- }
-
-
- /**
- * Clears the value of the 'ipAddress' field.
- * @return This builder.
- */
- public ClientIdentifier.Builder clearIpAddress() {
- ipAddress = null;
- fieldSetFlags()[1] = false;
- return this;
- }
-
- @Override
- @SuppressWarnings("unchecked")
- public ClientIdentifier build() {
- try {
- ClientIdentifier record = new ClientIdentifier();
- record.hostName = fieldSetFlags()[0] ? this.hostName : (java.lang.CharSequence) defaultValue(fields()[0]);
- record.ipAddress = fieldSetFlags()[1] ? this.ipAddress : (java.lang.CharSequence) defaultValue(fields()[1]);
- return record;
- } catch (java.lang.Exception e) {
- throw new org.apache.avro.AvroRuntimeException(e);
- }
- }
- }
-
- @SuppressWarnings("unchecked")
- private static final org.apache.avro.io.DatumWriter
- WRITER$ = (org.apache.avro.io.DatumWriter)MODEL$.createDatumWriter(SCHEMA$);
-
- @Override public void writeExternal(java.io.ObjectOutput out)
- throws java.io.IOException {
- WRITER$.write(this, SpecificData.getEncoder(out));
- }
-
- @SuppressWarnings("unchecked")
- private static final org.apache.avro.io.DatumReader
- READER$ = (org.apache.avro.io.DatumReader)MODEL$.createDatumReader(SCHEMA$);
-
- @Override public void readExternal(java.io.ObjectInput in)
- throws java.io.IOException {
- READER$.read(this, SpecificData.getDecoder(in));
- }
-
-}
diff --git a/apache-avro/src/main/java/com/baeldung/avro/util/serealization/AvroDeSerealizer.java b/apache-avro/src/main/java/com/baeldung/avro/util/serealization/AvroDeSerealizer.java
deleted file mode 100644
index 7d30c3d1ee..0000000000
--- a/apache-avro/src/main/java/com/baeldung/avro/util/serealization/AvroDeSerealizer.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.baeldung.avro.util.serealization;
-
-import com.baeldung.avro.util.model.AvroHttpRequest;
-import org.apache.avro.io.DatumReader;
-import org.apache.avro.io.Decoder;
-import org.apache.avro.io.DecoderFactory;
-import org.apache.avro.specific.SpecificDatumReader;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.IOException;
-
-public class AvroDeSerealizer {
-
- private static Logger logger = LoggerFactory.getLogger(AvroDeSerealizer.class);
-
- public AvroHttpRequest deSerealizeAvroHttpRequestJSON(byte[] data) {
- DatumReader reader = new SpecificDatumReader<>(AvroHttpRequest.class);
- Decoder decoder = null;
- try {
- decoder = DecoderFactory.get()
- .jsonDecoder(AvroHttpRequest.getClassSchema(), new String(data));
- return reader.read(null, decoder);
- } catch (IOException e) {
- logger.error("Deserialization error" + e.getMessage());
- }
- return null;
- }
-
- public AvroHttpRequest deSerealizeAvroHttpRequestBinary(byte[] data) {
- DatumReader employeeReader = new SpecificDatumReader<>(AvroHttpRequest.class);
- Decoder decoder = DecoderFactory.get()
- .binaryDecoder(data, null);
- try {
- return employeeReader.read(null, decoder);
- } catch (IOException e) {
- logger.error("Deserialization error" + e.getMessage());
- }
- return null;
- }
-}
diff --git a/apache-avro/src/main/java/com/baeldung/avro/util/serealization/AvroSerealizer.java b/apache-avro/src/main/java/com/baeldung/avro/util/serealization/AvroSerealizer.java
deleted file mode 100644
index 767b688dea..0000000000
--- a/apache-avro/src/main/java/com/baeldung/avro/util/serealization/AvroSerealizer.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package com.baeldung.avro.util.serealization;
-
-import com.baeldung.avro.util.model.AvroHttpRequest;
-import org.apache.avro.io.*;
-import org.apache.avro.specific.SpecificDatumWriter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-
-public class AvroSerealizer {
-
- private static final Logger logger = LoggerFactory.getLogger(AvroSerealizer.class);
-
- public byte[] serealizeAvroHttpRequestJSON(AvroHttpRequest request) {
- DatumWriter writer = new SpecificDatumWriter<>(AvroHttpRequest.class);
- byte[] data = new byte[0];
- ByteArrayOutputStream stream = new ByteArrayOutputStream();
- Encoder jsonEncoder = null;
- try {
- jsonEncoder = EncoderFactory.get()
- .jsonEncoder(AvroHttpRequest.getClassSchema(), stream);
- writer.write(request, jsonEncoder);
- jsonEncoder.flush();
- data = stream.toByteArray();
- } catch (IOException e) {
- logger.error("Serialization error " + e.getMessage());
- }
- return data;
- }
-
- public byte[] serealizeAvroHttpRequestBinary(AvroHttpRequest request) {
- DatumWriter writer = new SpecificDatumWriter<>(AvroHttpRequest.class);
- byte[] data = new byte[0];
- ByteArrayOutputStream stream = new ByteArrayOutputStream();
- Encoder jsonEncoder = EncoderFactory.get()
- .binaryEncoder(stream, null);
- try {
- writer.write(request, jsonEncoder);
- jsonEncoder.flush();
- data = stream.toByteArray();
- } catch (IOException e) {
- logger.error("Serialization error " + e.getMessage());
- }
-
- return data;
- }
-
-}
diff --git a/apache-avro/src/main/resources/avroHttpRequest-schema.avsc b/apache-avro/src/main/resources/avroHttpRequest-schema.avsc
deleted file mode 100644
index 18179a9cde..0000000000
--- a/apache-avro/src/main/resources/avroHttpRequest-schema.avsc
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "type":"record",
- "name":"AvroHttpRequest",
- "namespace":"com.baeldung.avro.model",
- "fields":[
- {
- "name":"requestTime",
- "type":"long"
- },
- {
- "name":"clientIdentifier",
- "type":{
- "type":"record",
- "name":"ClientIdentifier",
- "fields":[
- {
- "name":"hostName",
- "type":"string"
- },
- {
- "name":"ipAddress",
- "type":"string"
- }
- ]
- }
- },
- {
- "name":"employeeNames",
- "type":{
- "type":"array",
- "items":"string"
- },
- "default":null
- },
- {
- "name":"active",
- "type":{
- "type":"enum",
- "name":"Active",
- "symbols":[
- "YES",
- "NO"
- ]
- }
- }
- ]
-}
\ No newline at end of file
diff --git a/apache-avro/src/main/resources/logback.xml b/apache-avro/src/main/resources/logback.xml
deleted file mode 100644
index 7d900d8ea8..0000000000
--- a/apache-avro/src/main/resources/logback.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
- %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/apache-avro/src/test/java/com/baeldung/avro/util/serealization/AvroSerealizerDeSerealizerUnitTest.java b/apache-avro/src/test/java/com/baeldung/avro/util/serealization/AvroSerealizerDeSerealizerUnitTest.java
deleted file mode 100644
index 992ea806c3..0000000000
--- a/apache-avro/src/test/java/com/baeldung/avro/util/serealization/AvroSerealizerDeSerealizerUnitTest.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package com.baeldung.avro.util.serealization;
-
-import com.baeldung.avro.util.model.Active;
-import com.baeldung.avro.util.model.AvroHttpRequest;
-import com.baeldung.avro.util.model.ClientIdentifier;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Objects;
-
-import static org.junit.Assert.*;
-
-public class AvroSerealizerDeSerealizerUnitTest {
-
- AvroSerealizer serealizer;
- AvroDeSerealizer deSerealizer;
- AvroHttpRequest request;
-
- @Before
- public void setUp() throws Exception {
- serealizer = new AvroSerealizer();
- deSerealizer = new AvroDeSerealizer();
-
- ClientIdentifier clientIdentifier = ClientIdentifier.newBuilder()
- .setHostName("localhost")
- .setIpAddress("255.255.255.0")
- .build();
-
- List employees = new ArrayList();
- employees.add("James");
- employees.add("Alice");
- employees.add("David");
- employees.add("Han");
-
- request = AvroHttpRequest.newBuilder()
- .setRequestTime(01l)
- .setActive(Active.YES)
- .setClientIdentifier(clientIdentifier)
- .setEmployeeNames(employees)
- .build();
- }
-
- @After
- public void tearDown() throws Exception {
- }
-
- @Test
- public void WhenSerializedUsingJSONEncoder_thenObjectGetsSerialized() {
- byte[] data = serealizer.serealizeAvroHttpRequestJSON(request);
- assertTrue(Objects.nonNull(data));
- assertTrue(data.length > 0);
- }
-
- @Test
- public void WhenSerializedUsingBinaryEncoder_thenObjectGetsSerialized() {
- byte[] data = serealizer.serealizeAvroHttpRequestBinary(request);
- assertTrue(Objects.nonNull(data));
- assertTrue(data.length > 0);
- }
-
- @Test
- public void WhenDeserializeUsingJSONDecoder_thenActualAndExpectedObjectsAreEqual() {
- byte[] data = serealizer.serealizeAvroHttpRequestJSON(request);
- AvroHttpRequest actualRequest = deSerealizer.deSerealizeAvroHttpRequestJSON(data);
- assertEquals(actualRequest, request);
- assertTrue(actualRequest.getRequestTime()
- .equals(request.getRequestTime()));
- }
-
- @Test
- public void WhenDeserializeUsingBinaryecoder_thenActualAndExpectedObjectsAreEqual() {
- byte[] data = serealizer.serealizeAvroHttpRequestBinary(request);
- AvroHttpRequest actualRequest = deSerealizer.deSerealizeAvroHttpRequestBinary(data);
- assertEquals(actualRequest, request);
- assertTrue(actualRequest.getRequestTime()
- .equals(request.getRequestTime()));
- }
-
-}
-