001 package railo.runtime.listener; 002 003 import java.io.Serializable; 004 005 import railo.commons.io.res.Resource; 006 import railo.runtime.Mapping; 007 import railo.runtime.PageContext; 008 import railo.runtime.exp.PageException; 009 import railo.runtime.net.s3.Properties; 010 import railo.runtime.orm.ORMConfiguration; 011 import railo.runtime.rest.RestSettings; 012 import railo.runtime.type.dt.TimeSpan; 013 014 /** 015 * DTO Interface for Application Context data (defined by tag application) 016 */ 017 public interface ApplicationContext extends Serializable { 018 019 public static final int SCRIPT_PROTECT_NONE = 0; 020 public static final int SCRIPT_PROTECT_FORM = 1; 021 public static final int SCRIPT_PROTECT_URL = 2; 022 public static final int SCRIPT_PROTECT_CGI = 4; 023 public static final int SCRIPT_PROTECT_COOKIE = 8; 024 public static final int SCRIPT_PROTECT_ALL = SCRIPT_PROTECT_CGI+SCRIPT_PROTECT_COOKIE+SCRIPT_PROTECT_FORM+SCRIPT_PROTECT_URL; 025 026 /** 027 * @return Returns the applicationTimeout. 028 */ 029 public abstract TimeSpan getApplicationTimeout(); 030 031 /** 032 * @return Returns the loginStorage. 033 */ 034 public abstract int getLoginStorage(); 035 036 /** 037 * @return Returns the name. 038 */ 039 public abstract String getName(); 040 041 /** 042 * @return Returns the sessionTimeout. 043 */ 044 public abstract TimeSpan getSessionTimeout(); 045 046 /** 047 * @return Returns the setClientCookies. 048 */ 049 public abstract boolean isSetClientCookies(); 050 051 /** 052 * @return Returns the setClientManagement. 053 */ 054 public abstract boolean isSetClientManagement(); 055 056 /** 057 * @return Returns the setDomainCookies. 058 */ 059 public abstract boolean isSetDomainCookies(); 060 061 /** 062 * @return Returns the setSessionManagement. 063 */ 064 public abstract boolean isSetSessionManagement(); 065 066 /** 067 * @return Returns the clientstorage. 068 */ 069 public abstract String getClientstorage(); 070 071 /** 072 * @return if application context has a name 073 */ 074 public abstract boolean hasName(); 075 076 /** 077 * @return return script protect setting 078 */ 079 public int getScriptProtect(); 080 081 082 public Mapping[] getMappings(); 083 084 public Mapping[] getCustomTagMappings(); 085 086 087 public String getSecureJsonPrefix() ; 088 089 public boolean getSecureJson(); 090 091 // FUTURE deprecated use instead getDefDataSource() 092 public String getDefaultDataSource(); 093 094 public boolean isORMEnabled(); 095 096 // FUTURE deprecated use instead getDefaultDataSource() 097 public String getORMDatasource(); 098 099 public ORMConfiguration getORMConfiguration(); 100 101 public Properties getS3(); 102 103 public int getLocalMode(); 104 105 public String getSessionstorage(); 106 107 public TimeSpan getClientTimeout(); 108 109 public short getSessionType(); 110 111 public boolean getSessionCluster(); 112 113 public boolean getClientCluster(); 114 115 public Mapping[] getComponentMappings(); 116 117 118 119 120 121 122 123 public void setApplicationTimeout(TimeSpan applicationTimeout); 124 public void setSessionTimeout(TimeSpan sessionTimeout); 125 public void setClientTimeout(TimeSpan clientTimeout); 126 public void setClientstorage(String clientstorage); 127 public void setSessionstorage(String sessionstorage); 128 public void setCustomTagMappings(Mapping[] customTagMappings); 129 public void setComponentMappings(Mapping[] componentMappings); 130 public void setMappings(Mapping[] mappings); 131 public void setLoginStorage(int loginstorage); 132 public void setDefaultDataSource(String datasource); 133 public void setScriptProtect(int scriptrotect); 134 public void setSecureJson(boolean secureJson); 135 public void setSecureJsonPrefix(String secureJsonPrefix); 136 public void setSetClientCookies(boolean setClientCookies); 137 public void setSetClientManagement(boolean setClientManagement); 138 public void setSetDomainCookies(boolean setDomainCookies); 139 public void setSetSessionManagement(boolean setSessionManagement); 140 public void setLocalMode(int localMode); 141 public void setSessionType(short sessionType); 142 public void setClientCluster(boolean clientCluster); 143 public void setSessionCluster(boolean sessionCluster); 144 public void setS3(Properties s3); 145 public void setORMEnabled(boolean ormenabled); 146 public void setORMConfiguration(ORMConfiguration ormConf); 147 public void setORMDatasource(String string); 148 149 public String getSecurityApplicationToken(); 150 public String getSecurityCookieDomain(); 151 public int getSecurityIdleTimeout(); 152 public void setSecuritySettings(String applicationtoken,String cookiedomain, int idletimeout); 153 154 public void reinitORM(PageContext pc) throws PageException ; 155 156 public Resource getSource(); 157 158 159 160 public boolean getTriggerComponentDataMember(); 161 public void setTriggerComponentDataMember(boolean triggerComponentDataMember); 162 163 /** 164 * return the default cache name for a certain type 165 * @param type can be one of the following constants Config.CACHE_DEFAULT_OBJECT, Config.CACHE_DEFAULT_TEMPLATE, Config.CACHE_DEFAULT_QUERY, Config.CACHE_DEFAULT_RESOURCE, Config.CACHE_DEFAULT_FUNCTION 166 * @return name of the cache defined 167 */ 168 public String getDefaultCacheName(int type); 169 170 public void setDefaultCacheName(int type, String cacheName); 171 172 /** 173 * merge the field with same name to array if true, otherwise to a comma separated string list 174 * @param scope scope type, one of the following: Scope.SCOPE_FORM or Scope.SCOPE_URL 175 * @return 176 */ 177 public boolean getSameFieldAsArray(int scope); 178 179 public RestSettings getRestSettings(); 180 181 public JavaSettings getJavaSettings(); 182 183 public Resource[] getRestCFCLocations(); 184 }