# Specifying a CAS Server as a custom component for Record Store output

A `custom-component` element defines the configuration properties of a specific CAS Server. This topic describes the configuration properties for a CAS Server that writes output to a Record Store instance.

Note: The configuration examples below show the CAS 3.0.x deployment template component name (i.e. the `class` attribute) rather than the CAS 2.2.x deployment template component.
Note: The Deployment Template checks the host and port definition in AppConfig.xml, NameCasCrawlConfig.xml, and fetchCasCrawlDataConfig.xml. If host or port information conflicts in any of these three files, errors will occur. Either make sure the host and port configuration is same in the three files, or comment out host and port configuration in both NameCasCrawlConfig.xml and fetchCasCrawlDataConfig.xml and put the configuration in AppConfig.xml.

To specify a CAS Server as a custom component for Record Store output:

1. Open fetchCasCrawlDataConfig.xml in a text editor and cut out the custom component for the Content Acquisition System Server configuration. (This prevents configuration conflicts as described in the note above.) For example, remove the following from fetchCasCrawlDataConfig.xml:

       <!--
           ########################################################################
           # Content Acquisition System Server
           #

         <custom-component id="CAS" host-id="CASHost" class="com.endeca.eac.toolkit.component.cas.ContentAcquisitionServerComponent">
           <properties>
             <property name="casHost" value="localhost" />
             <property name="casPort" value="8500" />
             <property name="casCrawlFullOutputDestDir" value="./data/complete_cas_crawl_output/full" />
             <property name="casCrawlIncrementalOutputDestDir" value="./data/complete_cas_crawl_output/incremental" />
             <property name="casCrawlOutputDestHost" value="CASHost" />
           </properties>
         </custom-component>

         -->

2. Open the AppConfig.xml file in a text editor and paste in the custom component for the Content Acquisition System Server configuration.
3. In the Content Acquisition System Server configuration, remove the properties for directories and keep the properties that specify the Record Store instance host and port. Ensure that the following attributes are set correctly:
   - An `id` attribute that assigns a unique ID to a specific CAS Server. (The example in this documentation use `CAS` for the `id`.)
   - The `host-id` attribute points back to the id attribute of the `host` global configuration element.
   - The `class` attribute specifies the class that implements the CAS deployment template component. If you are using CAS 2.2.x, specify `class="com.endeca.soleng.eac.toolkit.component.ContentAcquisitionServerComponent"`. If you are using CAS 3.0.x, specify `class="com.endeca.eac.toolkit.component.cas.ContentAcquisitionServerComponent"`.
   - A `casHost` property to indicate the CAS Server which manages the crawls.
   - A `casPort` property to indicate the port on which the CAS Server is listening. This is the port number you specified when you installed CAS.
   For example:

       <!--
           ########################################################################
           # Content Acquisition System Server
           #

         <custom-component id="CAS" host-id="CASHost" class="com.endeca.eac.toolkit.component.cas.ContentAcquisitionServerComponent">
           <properties>
             <property name="casHost" value="localhost" />
             <property name="casPort" value="8500" />
           </properties>
         </custom-component>

         -->