resolve darcs stupidity
[org.ibex.core.git] / src / org / bouncycastle / crypto / io / DigestInputStream.java
1 package org.bouncycastle.crypto.io;
2
3 import java.io.*;
4
5 import org.bouncycastle.crypto.Digest;
6
7 public class DigestInputStream
8     extends FilterInputStream
9 {
10     protected Digest digest;
11
12     public DigestInputStream(
13         InputStream stream,
14         Digest      digest)
15     {
16         super(stream);
17         this.digest = digest;
18     }
19
20     public int read()
21         throws IOException
22     {
23         int b = in.read();
24
25         if (b >= 0)
26         {
27             digest.update((byte)b);
28         }
29         return b;
30     }
31
32     public int read(
33         byte[] b,
34         int off,
35         int len)
36         throws IOException
37     {
38         int n = in.read(b, off, len);
39         if (n > 0)
40         {
41             digest.update(b, off, n);
42         }
43         return n;
44     }
45
46     public Digest getDigest()
47     {
48         return digest;
49     }
50 }