001    package railo.runtime;
002    
003    import railo.commons.io.res.Resource;
004    import railo.runtime.config.Config;
005    import railo.runtime.dump.Dumpable;
006    
007    
008    /**
009     * interface of the mapping definition
010     */
011    public interface Mapping  extends Dumpable{
012    
013        /**
014         * @return returns the archiveClassLoader
015         */
016        public abstract ClassLoader getClassLoaderForArchive();
017    
018        /**
019         * @return Returns the physical.
020         */
021        public abstract Resource getPhysical();
022    
023        /**
024         * @return Returns the virtual lower case.
025         */
026        public abstract String getVirtualLowerCase();
027    
028        /**
029         * @return Returns the virtual lower case with slash at the end.
030         */
031        public abstract String getVirtualLowerCaseWithSlash();
032    
033        /**
034         * @return return the archive file
035         */
036        public abstract Resource getArchive();
037    
038        /**
039         * @return returns if mapping has a archive
040         */
041        public abstract boolean hasArchive();
042    
043        /**
044         * @return return if mapping has a physical path
045         */
046        public abstract boolean hasPhysical();
047    
048        /**
049         * @return class root directory
050         */
051        public abstract Resource getClassRootDirectory();
052    
053        /**
054         * pagesoucre matching given realpath
055         * @param realPath
056         * @return matching pagesource
057         */
058        public abstract PageSource getPageSource(String realPath);
059        
060        
061        /**
062         * @param path
063         * @param isOut
064         * @return matching pagesoucre
065         */
066        public abstract PageSource getPageSource(String path, boolean isOut);
067    
068        /**
069         * checks the mapping
070         */
071        public abstract void check();
072    
073        /**
074         * @return Returns the hidden.
075         */
076        public abstract boolean isHidden();
077    
078        /**
079         * @return Returns the physicalFirst.
080         */
081        public abstract boolean isPhysicalFirst();
082    
083        /**
084         * @return Returns the readonly.
085         */
086        public abstract boolean isReadonly();
087    
088        /**
089         * @return Returns the strArchive.
090         */
091        public abstract String getStrArchive();
092    
093        /**
094         * @return Returns the strPhysical.
095         */
096        public abstract String getStrPhysical();
097    
098        /**
099         * @return Returns the trusted.
100         */
101        public abstract boolean isTrusted(); // FUTURE mark as deprecated; use instead <code>public short getInspectTemplate();</code>
102        // FUTURE public short getInspectTemplate();
103    
104        public abstract boolean isTopLevel();
105    
106        /**
107         * @return Returns the virtual.
108         */
109        public abstract String getVirtual();
110        
111    
112        /**
113         * returns config of the mapping
114         * @return config
115         */
116        public Config getConfig();
117    }