Author: tomwhite
Date: Tue Nov  4 15:49:30 2014
New Revision: 1636616

URL: http://svn.apache.org/r1636616
Log:
Compatibility fix for AVRO-1502. Contributed by cutting.

Modified:
    
avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java

Modified: 
avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java
URL: 
http://svn.apache.org/viewvc/avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java?rev=1636616&r1=1636615&r2=1636616&view=diff
==============================================================================
--- 
avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java
 (original)
+++ 
avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java
 Tue Nov  4 15:49:30 2014
@@ -67,8 +67,17 @@ public abstract class SpecificRecordBase
     return SpecificData.get().toString(this);
   }
 
-  @Override public abstract void writeExternal(ObjectOutput out)
-    throws IOException;
-  @Override public abstract void readExternal(ObjectInput in)
-    throws IOException;
+  @Override
+  public void writeExternal(ObjectOutput out)
+    throws IOException {
+    new SpecificDatumWriter(getSchema())
+      .write(this, SpecificData.getEncoder(out));
+  }
+
+  @Override
+  public void readExternal(ObjectInput in)
+    throws IOException {
+    new SpecificDatumReader(getSchema())
+      .read(this, SpecificData.getDecoder(in));
+  }
 }


Reply via email to