/* 
   Licensed to the Apache Software Foundation (ASF) under one 
   or more contributor license agreements.  See the NOTICE file 
   distributed with this work for additional information 
   regarding copyright ownership.  The ASF licenses this file 
   to you under the Apache License, Version 2.0 (the 
   "License"); you may not use this file except in compliance 
   with the License.  You may obtain a copy of the License at 
 
     http://www.apache.org/licenses/LICENSE-2.0 
 
   Unless required by applicable law or agreed to in writing, 
   software distributed under the License is distributed on an 
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
   KIND, either express or implied.  See the License for the 
   specific language governing permissions and limitations 
   under the License.     
 */ 
 
//package org.opentides.util; 
 
import java.io.IOException; 
import java.security.MessageDigest; 
import java.security.NoSuchAlgorithmException; 
import java.text.ParseException; 
import java.text.SimpleDateFormat; 
import java.util.ArrayList; 
import java.util.Date; 
import java.util.List; 
import java.util.Random; 
 
 
import sun.misc.BASE64Decoder; 
import sun.misc.BASE64Encoder; 
 
public class StringUtil { 
 
  private static Random random = new Random((new Date()).getTime()); 
   
    /** 
     * Generates a hash code for a given source code.  
     * This method ignores whitespace in generating the hash code. 
     * @param source 
     * @return 
     */ 
  public static String hashSourceCode(String source) {   
    MessageDigest md; 
    try { 
      md = MessageDigest.getInstance("MD5"); 
      md.update(source.getBytes()); 
      return new sun.misc.BASE64Encoder().encode(md.digest()); 
    } catch (NoSuchAlgorithmException e) { 
      //_log.error("Failed to generate hashcode.", e); 
    }    
    return null; 
  } 
     
} 
 
    
     
     
     
     
     
  
  |