From 295eceece371b516e771de93b6127bf728999483 Mon Sep 17 00:00:00 2001 From: jeff Date: Sat, 26 Jul 2014 19:24:00 -0400 Subject: initial commit so far source analysis is working. =) --- src/cuchaz/enigma/Util.java | 65 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 src/cuchaz/enigma/Util.java (limited to 'src/cuchaz/enigma/Util.java') diff --git a/src/cuchaz/enigma/Util.java b/src/cuchaz/enigma/Util.java new file mode 100644 index 0000000..c51eb62 --- /dev/null +++ b/src/cuchaz/enigma/Util.java @@ -0,0 +1,65 @@ +/******************************************************************************* + * Copyright (c) 2014 Jeff Martin. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the GNU Public License v3.0 + * which accompanies this distribution, and is available at + * http://www.gnu.org/licenses/gpl.html + * + * Contributors: + * Jeff Martin - initial API and implementation + ******************************************************************************/ +package cuchaz.enigma; + +import java.io.Closeable; +import java.io.IOException; +import java.util.jar.JarFile; + + +public class Util +{ + public static int combineHashesOrdered( Object ... objs ) + { + final int prime = 67; + int result = 1; + for( Object obj : objs ) + { + result *= prime; + if( obj != null ) + { + result += obj.hashCode(); + } + } + return result; + } + + public static void closeQuietly( Closeable closeable ) + { + if( closeable != null ) + { + try + { + closeable.close(); + } + catch( IOException ex ) + { + // just ignore any further exceptions + } + } + } + + public static void closeQuietly( JarFile jarFile ) + { + // silly library should implement Closeable... + if( jarFile != null ) + { + try + { + jarFile.close(); + } + catch( IOException ex ) + { + // just ignore any further exceptions + } + } + } +} -- cgit v1.2.3