public static File buildConfigZip(final String configName,final File parentDir){
  if (!parentDir.isDirectory()) {
    throw new RuntimeException(MSGS.format(Messages.CONFIG_NOT_DIR_1,parentDir.toString()));
  }
  final File zipFile=createEmptyZipFile(configName);
  final ZipOutputStream out;
  try {
    out=new ZipOutputStream(new FileOutputStream(zipFile));
  }
 catch (  final FileNotFoundException e) {
    throw new RuntimeException(MSGS.format(Messages.ERROR_ZIPPING_1,parentDir.toString()),e);
  }
  try {
    addFilesToZip(parentDir,out,parentDir);
    return zipFile;
  }
 catch (  final IOException e) {
    throw new RuntimeException(MSGS.format(Messages.ERROR_ZIPPING_1,parentDir.toString()),e);
  }
 finally {
    try {
      out.close();
    }
 catch (    final IOException e) {
    }
  }
}

public static File buildConfigZip ( final String configName , final File parentDir ) { if ( ! parentDir . isDirectory ( ) ) { throw new RuntimeException ( MSGS . format ( Messages . CONFIG_NOT_DIR_1 , parentDir . toString ( ) ) ) ; } final File zipFile = createEmptyZipFile ( configName ) ; final ZipOutputStream out ; try { out = new ZipOutputStream ( new FileOutputStream ( zipFile ) ) ; } catch ( final FileNotFoundException e ) { throw new RuntimeException ( MSGS . format ( Messages . ERROR_ZIPPING_1 , parentDir . toString ( ) ) , e ) ; } try { addFilesToZip ( parentDir , out , parentDir ) ; return zipFile ; } catch ( final IOException e ) { throw new RuntimeException ( MSGS . format ( Messages . ERROR_ZIPPING_1 , parentDir . toString ( ) ) , e ) ; } finally { try { out . close ( ) ; } catch ( final IOException e ) { } } }
builds the configuration zip file .
