001 package railo.runtime.functions.system; 002 003 import java.io.InputStream; 004 import java.util.zip.ZipEntry; 005 import java.util.zip.ZipInputStream; 006 007 import railo.commons.io.IOUtil; 008 import railo.commons.io.res.util.ResourceUtil; 009 import railo.runtime.PageContext; 010 011 public class IsZipFile { 012 013 public static boolean call(PageContext pc, String path) { 014 InputStream is=null; 015 boolean hasEntries=false; 016 try { 017 ZipEntry ze; 018 ZipInputStream zis = new ZipInputStream(is=ResourceUtil.toResourceExisting(pc, path).getInputStream()); 019 while ((ze=zis.getNextEntry()) != null ) { 020 zis.closeEntry(); 021 hasEntries=true; 022 } 023 } catch (Exception e) { 024 return false; 025 } 026 finally { 027 IOUtil.closeEL(is); 028 } 029 return hasEntries; 030 } 031 }