Package org.apache.commons.codec.digest
Class PureJavaCrc32
- java.lang.Object
-
- org.apache.commons.codec.digest.PureJavaCrc32
-
- All Implemented Interfaces:
java.util.zip.Checksum
public class PureJavaCrc32 extends java.lang.Object implements java.util.zip.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=2120de588b92b9f22b1cc4188761d6a8c61aa778This class is Not ThreadSafe
- Since:
- 1.11
- See Also:
CRC32
-
-
Constructor Summary
Constructors Constructor Description PureJavaCrc32()
Create a new PureJavaCrc32 object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long
getValue()
void
reset()
void
update(byte[] b, int offset, int len)
void
update(int b)
-
-
-
Method Detail
-
getValue
public long getValue()
- Specified by:
getValue
in interfacejava.util.zip.Checksum
-
reset
public void reset()
- Specified by:
reset
in interfacejava.util.zip.Checksum
-
update
public void update(byte[] b, int offset, int len)
- Specified by:
update
in interfacejava.util.zip.Checksum
-
update
public final void update(int b)
- Specified by:
update
in interfacejava.util.zip.Checksum
-
-