A pure-java implementation of the CRC32 checksum that uses
the same polynomial as the built-in native CRC32.
This is to avoid the JNI overhead for certain uses of Checksumming
where many small pieces of data are checksummed in succession.
The current version is ~10x to 1.8x as fast as Sun's native
java.util.zip.CRC32 in Java 1.6
Copied from Hadoop 2.6.3.
The code agrees with the following file in the 2.6.3 tag:
https://git-wip-us.apache.org/repos/asf?p=hadoop.git;a=blob_plain;
f=hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/PureJavaCrc32.java;
hb=2120de588b92b9f22b1cc4188761d6a8c61aa778
This class is Not ThreadSafe