1 /* 2 * #%L 3 * Nuiton Utils 4 * %% 5 * Copyright (C) 2004 - 2010 CodeLutin 6 * %% 7 * This program is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU Lesser General Public License as 9 * published by the Free Software Foundation, either version 3 of the 10 * License, or (at your option) any later version. 11 * 12 * This program 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 15 * GNU General Lesser Public License for more details. 16 * 17 * You should have received a copy of the GNU General Lesser Public 18 * License along with this program. If not, see 19 * <http://www.gnu.org/licenses/lgpl-3.0.html>. 20 * #L% 21 */ 22 23 package org.nuiton.util; 24 25 import java.io.OutputStream; 26 import java.security.DigestOutputStream; 27 import java.security.MessageDigest; 28 29 /** 30 * 31 * 32 */ 33 34 public class MD5OutputStream extends DigestOutputStream { 35 36 /** 37 * Creates MD5OutputStream 38 * 39 * @param out The output stream 40 */ 41 42 public MD5OutputStream(OutputStream out) { 43 super(out, MD5InputStream.getMD5Digest()); 44 } 45 46 /** 47 * @return array of bytes representing hash of the stream as finalized for 48 * the current state. 49 * @see MessageDigest#digest() 50 */ 51 52 public byte[] hash() { 53 return getMessageDigest().digest(); 54 } 55 56 } 57