lucee.Componentcoldbox.system.web.Controller
Copyright Since 2005 ColdBox Framework by Luis Majano and Ortus Solutions, Corp www.ortussolutions.com --- Manages a ColdBox application, dispatches events and acts as an overall front controller.
Property Summary | ||||
---|---|---|---|---|
type | property | default | serializable | required |
any
|
CFMLEngine
The CFML engine helper.
|
true
|
false
|
|
any
|
appHash
ColdBox application unique hash key.
|
true
|
false
|
|
any
|
appKey
ColdBox application key that tracks the controller in the `application` scope.
|
true
|
false
|
|
any
|
appName
The ColdFusion application name as per the application scope.
|
true
|
false
|
|
any
|
appRootPath
ColdBox application root path.
|
true
|
false
|
|
any
|
asyncManager
The Application's AsyncManager.
|
true
|
false
|
|
any
|
cachebox
The reference to CacheBox.
|
true
|
false
|
|
boolean
|
coldboxInitiated
ColdBox initiation flag.
|
true
|
false
|
|
struct
|
coldboxSettings
The internal ColdBox settings structure.
|
true
|
false
|
|
struct
|
configSettings
The application configuration settings structure.
|
true
|
false
|
|
any
|
log
The controller logger object.
|
true
|
false
|
|
any
|
logbox
The reference to LogBox.
|
true
|
false
|
|
any
|
renderer
The view/layout renderer singleton.
|
true
|
false
|
|
any
|
services
Container for all internal services (ordered struct).
|
true
|
false
|
|
any
|
util
The system utility object.
|
true
|
false
|
|
any
|
wirebox
The reference to WireBox.
|
true
|
false
|
Constructor Summary | |
---|---|
init(any appRootPath, [any appKey='cbController'])
Constructor. |
Method Summary | |
---|---|
private any
|
_runEvent([any event=''], [boolean prePostExempt='false'], [boolean private='false'], [boolean defaultEvent='false'], [struct eventArguments='[runtime expression]'])
Executes events with full life-cycle methods and returns the event results if any were returned. |
string
|
getAppHash()
|
string
|
getAppKey()
|
string
|
getAppName()
|
string
|
getAppRootPath()
|
string
|
getAsyncManager()
|
string
|
getCFMLEngine()
|
any
|
getCache(any cacheName='default')
Get a Cache provider from CacheBox. |
string
|
getCachebox()
|
any
|
getColdBoxSetting(any name, [any defaultValue])
Get a ColdBox setting. |
string
|
getColdboxInitiated()
|
string
|
getColdboxSettings()
|
string
|
getConfigSettings()
|
any
|
getDataMarshaller()
Get the system data marshaller, you can also retrieve it from wirebox via dataMarshaller@coldbox. |
any
|
getHandlerService()
Get the handler service. |
any
|
getInterceptorService()
Get the interceptor service. |
any
|
getLoaderService()
Get the loader service. |
string
|
getLog()
|
string
|
getLogbox()
|
any
|
getMemento()
Get controller memento, used only by decorator only. |
any
|
getModuleService()
Get the module service. |
any
|
getRenderer()
Get the system web renderer, you can also retrieve it from wirebox via renderer@coldbox. |
any
|
getRequestService()
Get the request service. |
any
|
getRoutingService()
Get the routing service. |
any
|
getSchedulerService()
Get the scheduling service. |
string
|
getServices()
|
any
|
getSetting(any name, [any defaultValue])
Get a setting from the application. |
string
|
getUserSessionIdentifier()
This method will return the unique user's request tracking identifier according to our discovery algoritm:. |
string
|
getUtil()
|
string
|
getWirebox()
|
private any
|
invoker(any target, any method, [struct argCollection='[runtime expression]'], [boolean private='false'])
Invoke private/public event handler methods. |
private any
|
loadColdBoxSettings()
Load the internal ColdBox settings. |
any
|
locateDirectoryPath(any pathToCheck)
Locate the real path location of a directory in a coldbox application. |
any
|
locateFilePath(any pathToCheck)
Locate the real path location of a file in a coldbox application. |
private any
|
persistVariables([any persist=''], [struct persistStruct='[runtime expression]'])
Internal helper to flash persist elements. |
any
|
relocate([any event='[runtime expression]'], [any queryString=''], [boolean addToken='false'], [any persist=''], [struct persistStruct='[runtime expression]'], [any baseURL=''], [boolean postProcessExempt='false'], [any URL], [any URI], [numeric statusCode='302'])
Relocate user browser requests to other events, URLs, or URIs. |
any
|
runEvent([any event=''], [boolean prePostExempt='false'], [boolean private='false'], [boolean defaultEvent='false'], [struct eventArguments='[runtime expression]'], [boolean cache='false'], [any cacheTimeout=''], [any cacheLastAccessTimeout=''], [any cacheSuffix=''], [any cacheProvider='template'])
Executes events with full life-cycle methods and returns the event results if any were returned. |
any
|
runRoute(any name, [struct params='[runtime expression]'], [boolean cache='false'], [any cacheTimeout=''], [any cacheLastAccessTimeout=''], [any cacheSuffix=''], [any cacheProvider='template'], [boolean prePostExempt='false'])
Executes internal named routes with or without parameters. |
private any
|
sendRelocation(any URL, [boolean addToken='false'], [any statusCode='302'])
Encapsulate a cf relocation tag. |
any
|
setAppHash(any appHash)
|
any
|
setAppKey(any appKey)
|
any
|
setAppName(any appName)
|
any
|
setAppRootPath(any appRootPath)
|
any
|
setAsyncManager(any asyncManager)
|
any
|
setCFMLEngine(any CFMLEngine)
|
any
|
setCachebox(any cachebox)
|
any
|
setColdboxInitiated(boolean coldboxInitiated)
|
any
|
setColdboxSettings(struct coldboxSettings)
|
any
|
setConfigSettings(struct configSettings)
|
any
|
setLog(any log)
|
any
|
setLogbox(any logbox)
|
any
|
setRenderer(any renderer)
|
any
|
setServices(any services)
|
Controller
|
setSetting(any name, any value)
Set a value in the application configuration settings. |
any
|
setUtil(any util)
|
any
|
setWirebox(any wirebox)
|
boolean
|
settingExists(any name)
Check if the setting exists in the application. |
private string
|
updateSSL(any inURL, any ssl)
Update SSL or not on a request string. |
private boolean
|
validateAction(any action, [any inclusion=''], [any exclusion=''])
Checks if an action can be executed according to inclusion/exclusion lists. |
Methods inherited from class lucee.Component |
---|
None |
Constructor Detail |
---|
Constructor
appRootPath
- The application root pathappKey
- The application registered application key, default is cbControllerProperty Detail |
---|
The CFML engine helper
access
- publicrequired
- falsereturntype
- anyserializable
- trueColdBox application unique hash key
access
- publicrequired
- falsereturntype
- anyserializable
- trueColdBox application key that tracks the controller in the `application` scope
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe ColdFusion application name as per the application scope
access
- publicrequired
- falsereturntype
- anyserializable
- trueColdBox application root path
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe Application's AsyncManager
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe reference to CacheBox
access
- publicrequired
- falsereturntype
- anyserializable
- trueColdBox initiation flag
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe internal ColdBox settings structure
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe application configuration settings structure
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe controller logger object
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe reference to LogBox
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe view/layout renderer singleton
access
- publicrequired
- falsereturntype
- anyserializable
- trueContainer for all internal services (ordered struct)
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe system utility object
access
- publicrequired
- falsereturntype
- anyserializable
- trueThe reference to WireBox
access
- publicrequired
- falsereturntype
- anyserializable
- trueMethod Detail |
---|
Executes events with full life-cycle methods and returns the event results if any were returned
event
- The event string to execute, if nothing is passed we will execute the application's default event.prePostExempt
- If true, pre/post handlers will not be fired. Defaults to falseprivate
- Execute a private event if set, else defaults to public eventsdefaultEvent
- The flag that let's this service now if it is the default event running or not. USED BY THE FRAMEWORK ONLYeventArguments
- A collection of arguments to passthrough to the calling event handler methodGet a Cache provider from CacheBox
cacheName
- The name of the cache to retrieve, or it defaults to the 'default' cache.Get a ColdBox setting
name
- The key to getdefaultValue
- The default value if it doesn't existGet the system data marshaller, you can also retrieve it from wirebox via dataMarshaller@coldbox
Get the handler service
Get the interceptor service
Get the loader service
Get controller memento, used only by decorator only.
Get the module service
Get the system web renderer, you can also retrieve it from wirebox via renderer@coldbox
Get the request service
Get the routing service
Get the scheduling service
Get a setting from the application
name
- The name of the settingdefaultValue
- The default value to use if setting does not existThis method will return the unique user's request tracking identifier according to our discovery algoritm: 1. If we have an identifierProvider closure/lambda/udf, then call it and use it 2. If we have session enabled, use the jessionId or session URL Token 3. If we have cookies enabled, use the cfid/cftoken 4. If we have in the URL the cfid/cftoken 5. Create a request based tracking identifier: cbUserTrackingId
Invoke private/public event handler methods
target
method
argCollection
private
Load the internal ColdBox settings
Locate the real path location of a directory in a coldbox application. 3 checks: 1) inside of coldbox app, 2) expand the path, 3) Absolute location. If path not found, it returns an empty path
pathToCheck
- The relative or absolute directory path to verify and locateLocate the real path location of a file in a coldbox application. 3 checks: 1) inside of coldbox app, 2) expand the path, 3) Absolute location. If path not found, it returns an empty path
pathToCheck
- The relative or absolute file path to verify and locateInternal helper to flash persist elements
persist
persistStruct
Relocate user browser requests to other events, URLs, or URIs.
event
- The name of the event to relocate to, if not passed, then it will use the default event found in your configuration file.queryString
- The query string or a struct to append, if needed. If in SES mode it will be translated to convention name value pairsaddToken
- Wether to add the tokens or not to the relocation. Default is falsepersist
- What request collection keys to persist in flash RAM automatically for youpersistStruct
- A structure of key-value pairs to persist in flash RAM automatically for youbaseURL
- Use this baseURL instead of the index.cfm that is used by default. You can use this for SSL or any full base url you would like to use. Ex: https://mysite.com/index.cfmpostProcessExempt
- Do not fire the postProcess interceptors, by default it doesURL
- The full URL you would like to relocate to instead of an event: ex: URL='http://www.google.com'URI
- The relative URI you would like to relocate to instead of an event: ex: URI='/mypath/awesome/here'statusCode
- The status code to use in the relocationExecutes events with full life-cycle methods and returns the event results if any were returned.
event
- The event string to execute, if nothing is passed we will execute the application's default event.prePostExempt
- If true, pre/post handlers will not be fired. Defaults to falseprivate
- Execute a private event if set, else defaults to public eventsdefaultEvent
- The flag that let's this service now if it is the default event running or not. USED BY THE FRAMEWORK ONLYeventArguments
- A collection of arguments to passthrough to the calling event handler methodcache
- Cached the output of the runnable execution, defaults to false. A unique key will be created according to event string + arguments.cacheTimeout
- The time in minutes to cache the resultscacheLastAccessTimeout
- The time in minutes the results will be removed from cache if idle or requestedcacheSuffix
- The suffix to add into the cache entry for this event renderingcacheProvider
- The provider to cache this event rendering in, defaults to 'template'Executes internal named routes with or without parameters. If the named route is not found or the route has no event to execute then this method will throw an `InvalidArgumentException`. If you need a route from a module then append the module address: `@moduleName` or prefix it like in run event calls `moduleName:routeName` in order to find the right route. The route params will be passed to events as action arguments much how eventArguments work.
name
- The name of the routeparams
- The parameters of the route to replacecache
- Cached the output of the runnable execution, defaults to false. A unique key will be created according to event string + arguments.cacheTimeout
- The time in minutes to cache the resultscacheLastAccessTimeout
- The time in minutes the results will be removed from cache if idle or requestedcacheSuffix
- The suffix to add into the cache entry for this event renderingcacheProvider
- The provider to cache this event rendering in, defaults to 'template'prePostExempt
- If true, pre/post handlers will not be fired. Defaults to falseEncapsulate a cf relocation tag. Encapsulated so we can mock it.
URL
addToken
statusCode
appHash
appKey
appName
appRootPath
asyncManager
CFMLEngine
cachebox
coldboxInitiated
coldboxSettings
configSettings
log
logbox
renderer
services
Set a value in the application configuration settings
name
- The name of the settingvalue
- The value to setutil
wirebox
Check if the setting exists in the application
name
- The name of the settingUpdate SSL or not on a request string
inURL
ssl
Checks if an action can be executed according to inclusion/exclusion lists
action
- The action to validateinclusion
- The list of inclusionsexclusion
- The list of exclusions