package uk.co.pembo.e2stream.server;
import java.io.File;
import java.io.IOException;
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import uk.co.pembo.utils.FileUtils;
public class AlternateDirectory
{
public AlternateDirectory()
{
}
public static List getFiles()
{
return files;
}
public static void setFiles(List files)
{
files = files;
}
public static List getFilenames()
{
return filenames;
}
public static void setFilenames(List filenames)
{
filenames = filenames;
}
public static void loadFilesInDirectory(String dir)
throws Exception
{
files = new ArrayList();
filenames = new ArrayList();
File filelist[] = (new File(dir)).listFiles();
if(files == null)
return;
File afile[];
int j = (afile = filelist).length;
for(int i = 0; i < j; i++)
{
File file = afile[i];
if(file.isFile() && checkZipFileIsApp(file.getAbsolutePath()))
{
filenames.add(file.getName());
byte loadedFile[] = FileUtils.loadFile(file.getAbsolutePath());
files.add(loadedFile);
}
}
}
public static boolean checkZipFileIsApp(String zipname) throws Exception
{
boolean valid = false;
if(!zipname.toLowerCase().endsWith(".zip"))return false;
ZipFile zipFile = new ZipFile(zipname);
Enumeration zipEntries = zipFile.entries();
String fname;
while (zipEntries.hasMoreElements()) {
fname = ((ZipEntry)zipEntries.nextElement()).getName();
if(fname.toLowerCase().equals("config.xml"))valid=true;
}
return valid;
}
public static void main(String args[])
{
System.out.println("ALT DIRs");
try
{
loadFilesInDirectory("D:\\altdir\\");
}
catch(Exception e)
{
e.printStackTrace();
}
}
public static List files = null;
public static List filenames = null;
}