1 /* 2 * @(#)HashVerifier.java 0.3-2 18/06/1999 3 * 4 * This file is part of the HTTPClient package 5 * Copyright (C) 1996-1999 Ronald Tschalär 6 * 7 * This library is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU Lesser General Public 9 * License as published by the Free Software Foundation; either 10 * version 2 of the License, or (at your option) any later version. 11 * 12 * This library is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 * Lesser General Public License for more details. 16 * 17 * You should have received a copy of the GNU Lesser General Public 18 * License along with this library; if not, write to the Free 19 * Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, 20 * MA 02111-1307, USA 21 * 22 * For questions, suggestions, bug-reports, enhancement-requests etc. 23 * I may be contacted at: 24 * 25 * ronald@innovation.ch 26 * 27 */ 28 29 package HTTPClient; 30 31 32 /** 33 * This interface defines a hash verifier. 34 * 35 * @version 0.3-2 18/06/1999 36 * @author Ronald Tschalär 37 */ 38 39 interface HashVerifier 40 { 41 /** 42 * This method is invoked when a digest of a stream has been calculated. 43 * It must verify that the hash (or some function of it) is correct and 44 * throw an IOException if it is not. 45 * 46 * @param hash the calculated hash 47 * @param len the number of bytes read from the stream 48 * @exception IOException if the verification fails. 49 */ 50 public void verifyHash(byte[] hash, long len) throws java.io.IOException; 51 } 52 53