001    package railo.runtime;
002    
003    import java.io.Serializable;
004    
005    import railo.runtime.type.UDF;
006    
007    /**
008     * abstract Method for all generated Page Object
009     */
010    public abstract class Page implements Serializable{
011            
012        /**
013         * Field <code>FALSE</code>
014         */
015        public static boolean FALSE=false;
016        
017        /**
018         * Field <code>TRUE</code>
019         */
020        public static boolean TRUE=true;
021            private PageSource pageSource;
022        private byte loadType;
023            
024        
025        
026        
027            /**
028             * return version definition of the page
029             * @return version
030             */
031            public int getVersion() {return -1;}
032            
033            /**
034             * method to invoke a page
035             * @param pc PageContext 
036             * @throws Throwable
037             */
038            public abstract void call(PageContext pc) throws Throwable;
039    
040            
041            /**
042         * return when the source file last time was modified
043             * @return last modification of source file
044             */
045            public long getSourceLastModified() {return 0;}
046            
047            /**
048             * return the time when the file was compiled
049             */
050            public long getCompileTime() {return 0;}
051    
052            /**
053             * @param pageSource
054             */
055            public void setPageSource(PageSource pageSource) {
056                    this.pageSource=pageSource;
057            }
058            /**
059             * @return Returns the pageResource.
060             */
061            public PageSource getPageSource() {
062                    return pageSource;
063            }
064    
065        /**
066         * @return gets the load type
067         */
068        public byte getLoadType() {
069            return loadType;
070        }
071        
072        /**
073         * @param loadType sets the load type
074         */
075        public void setLoadType(byte loadType) {
076            this.loadType = loadType;
077        }
078    
079        public Object udfCall(PageContext pageContext, UDF udf,int functionIndex) throws Throwable {
080            return null;
081        }
082        
083        public void threadCall(PageContext pageContext, int threadIndex) throws Throwable {
084        }
085    
086            public Object udfDefaultValue(PageContext pc, int functionIndex, int argumentIndex) {
087                    return null;
088            }
089    
090    }