You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2018/11/12 15:15:36 UTC

svn commit: r1846434 - /uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/DataIO.java

Author: schor
Date: Mon Nov 12 15:15:36 2018
New Revision: 1846434

URL: http://svn.apache.org/viewvc?rev=1846434&view=rev
Log:
[UIMA-5904] fix Java > 8 issue with ByteBuffer class change, to allow building with > Java 8 and running with Java 8

Modified:
    uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/DataIO.java

Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/DataIO.java
URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/DataIO.java?rev=1846434&r1=1846433&r2=1846434&view=diff
==============================================================================
--- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/DataIO.java (original)
+++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/DataIO.java Mon Nov 12 15:15:36 2018
@@ -22,6 +22,7 @@ import java.io.DataInput;
 import java.io.DataOutput;
 import java.io.IOException;
 import java.io.UnsupportedEncodingException;
+import java.nio.Buffer;
 import java.nio.ByteBuffer;
 import java.nio.CharBuffer;
 import java.nio.charset.CharacterCodingException;
@@ -40,7 +41,6 @@ public class DataIO {
   private static final int SIGNED_INT_VALUE_0x80 = 0x80;
   private static final int MASK_LOW_7 = 0x7f;
   private static final long MASK_LOW_7_LONG = 0x7fL;
-  private static final long TOP_LONG_BIT = 0x8000000000000000L;
  
   private static ThreadLocal<CharsetDecoder> DECODER = new ThreadLocal<CharsetDecoder>();
   
@@ -65,7 +65,7 @@ public class DataIO {
           }
           sb.setCharAt(i, (char)b);
         }
-        in.position(in.position() + length);
+        ((Buffer)in).position(in.position() + length);
         return sb.toString();  // doesn't copy the string char array
       } 
     } while (false); // not a real do loop - do only once
@@ -78,7 +78,7 @@ public class DataIO {
       DECODER.set(decoder);       
     }
     ByteBuffer partToDecode = in.slice();
-    partToDecode.limit(length);
+    ((Buffer)partToDecode).limit(length);
     CharBuffer cb;
     try {
       cb = decoder.decode(partToDecode);