Circuits

The root element of the circuit.xml file is circuit. Within the circuit element are three possible sub-elements: fuseaction, prefuseaction, and postfuseaction.

The circuit element has two optional attributes, access and permissions. They are used to set default values for the same attributes on the fuseactions within the circuit.

Allowed values for access are: public, internal, and private. If no access attribute is specified for the circuit, the default will be set to internal.

There is no default value for permissions.

You can also specify XML namespaces, a.k.a. lexicons, in the tag:

<circuit xmlns:prefix="path/to/verbs/">

This defines an XML namespace, prefix, that allows you to use custom verbs (<prefix:verb/>) and custom attributes (prefix:attr=value) throughout the circuit file. Custom verbs can be used in any fuseaction. Custom attributes can be specified on any <fuseaction> tag.

Globally Shared Circuits

(Major enhancement in Fusebox 5.1)

By default, circuits paths are relative to the application root. With Fusebox 5.1, you can now specify a new attribute on a <circuit> declaration in fusebox.xml that specifies whether a circuit path is relative or not (i.e., absolute or mapped). The default is relative="true". If you specify relative="false" and your path= attribute begins with a / then the circuit path will be treated as absolute (relative to your server's webroot) or mapped (resolved via a ColdFusion mapping).

<circuits>
<circuit alias="c" path="controller/"/> <!-- default -->
<circuit alias="m" path="/sharedcircuits/model/" relative="false"/> <!-- absolute / mapped path -->
<circuit alias="v" path="views/" relative="true"/> <!-- explicit relative path -->
</circuits>

See circuit.xml for more information