java.lang.Object
edu.internet2.middleware.grouperClientExt.org.apache.commons.codec.digest.PureJavaCrc32
All Implemented Interfaces:
Checksum

public class PureJavaCrc32 extends Object implements Checksum
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

Since:
1.11
See Also:
  • Constructor Details

    • PureJavaCrc32

      public PureJavaCrc32()
      Create a new PureJavaCrc32 object.
  • Method Details

    • getValue

      public long getValue()
      Specified by:
      getValue in interface Checksum
    • reset

      public void reset()
      Specified by:
      reset in interface Checksum
    • update

      public void update(byte[] b, int offset, int len)
      Specified by:
      update in interface Checksum
    • update

      public final void update(int b)
      Specified by:
      update in interface Checksum