001 package railo.runtime.functions.file; 002 003 import railo.commons.io.res.ResourceProvider; 004 import railo.runtime.PageContext; 005 import railo.runtime.type.Struct; 006 import railo.runtime.type.StructImpl; 007 008 public class GetVFSMetaData { 009 public static Struct call(PageContext pc, String scheme) { 010 ResourceProvider[] providers = pc.getConfig().getResourceProviders(); 011 ResourceProvider provider; 012 scheme=scheme.trim(); 013 Struct sct=new StructImpl(); 014 for(int i=0;i<providers.length;i++){ 015 provider=providers[i]; 016 if(provider.getScheme().equalsIgnoreCase(scheme)){ 017 //MUST sct=provider.getMetaData(); 018 sct.setEL("Scheme", provider.getScheme()); 019 sct.setEL("Attributes", provider.isAttributesSupported()); 020 sct.setEL("CaseSensitive", provider.isCaseSensitive()); 021 sct.setEL("Mode", provider.isModeSupported()); 022 023 sct.setEL("Enabled", Boolean.TRUE); 024 return sct; 025 } 026 } 027 sct.setEL("Enabled", Boolean.FALSE); 028 return sct; 029 } 030 031 }