The configuration file gives TeamForge all the information it needs to integrate the guest application.
This is a sample configuration file. This particular file supports integrating Pebble, a blogging application, into a TeamForge site. To create your own integrated application config file, copy this one into a new file and replace the values with the values appropriate for the application you are integrating.
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE pluggable-descriptor PUBLIC "-//CollabNet, Inc.//DTD Pluggable Config
Descriptor 1.0//EN"
"http://schema.open.collab.net/sfee50/dtd/sf-pluggable-descriptor_1_0.dtd">
<pluggable-descriptor>
<name>Pebble Blog</name>
<description>l10n.application.description</description>
<baseurl>http://my.server:9080/pebble/index.jsp</baseurl>
<permissions>
<permission dapMappedTo="View">Blog Reader</permission>
<permission>Blog Contributer</permission>
<permission>Blog Publisher</permission>
<permission>Blog Owner</permission>
</permissions>
<prefix>PB</prefix>
<gourl>http://my.server:9080/pebble/index.jsp</gourl>
<endpoint>http://my.server:9080/pebble/services/PebbleIntegrationService</endpoint>
<require_prefix_project>true</require_prefix_project>
<require_scm_integration>true</require_scm_integration>
<pce>
<inputtype>select</inputtype>
<resultformat>list</resultformat>
<pcedescription>l10n.pce.description</pcedescription>
<pcetitle>l10n.pce.title</pcetitle>
</pce>
<config-parameters>
<!-- Project Tracker General Configuration Parameters -->
<param>
<title>l10n.blogname.title</title>
<name>blogName</name>
<description>l10n.blogname.description</description>
<defaultvalue>My Blog</defaultvalue>
<displaytype valuetype="String">TEXT</displaytype>
<editable>false</editable>
</param>
<param>
<title>l10n.blogdescription.title</title>
<name>blogDescription</name>
<description>l10n.blogdescription.description</description>
<defaultvalue>My Awesome Blog</defaultvalue>
<displaytype valuetype="String">TEXT</displaytype>
<editable>true</editable>
</param>
<param>
<title>l10n.richtexteditor.title</title>
<name>richTextEditorEnabled</name>
<description>l10n.richtexteditor.description</description>
<defaultvalue>checked</defaultvalue>
<displaytype valuetype="String">CHECKBOX</displaytype>
<editable>true</editable>
</param>
<param>
<title>l10n.noofrecentblogentries.title</title>
<name>recentBlogEntries</name>
<description>l10n.noofrecentblogentries.description</description>
<defaultvalue>3</defaultvalue>
<displaytype valuetype="String">SELECT</displaytype>
<option name="3">l10n.three</option>
<option name="5">l10n.five</option>
<option name="7">l10n.seven</option>
<option name="9">l10n.nine</option>
<editable>true</editable>
</param>
</config-parameters>
<bundles>
<bundle locale="en">
<key name="l10n.application.description">Pebble Blog App</key>
<key name="l10n.pce.description">Select a stored query</key>
<key name="l10n.pce.title">Stored Query</key>
<key name="l10n.blogname.title">Blog Name</key>
<key name="l10n.blogname.description">Please provide a name for the Blog. This appears on all blog pages</key>
<key name="l10n.blogdescription.title">Blog Description</key>
<key name="l10n.blogdescription.description">Please provide a description for the Blog. This appears below blog namae on all pages</key>
<key name="l10n.richtexteditor.title">Rich Text Editor</key>
<key name="l10n.richtexteditor.description">Enable Rich Text Editor for comments and Blog entries?</key>
<key name="l10n.noofrecentblogentries.title">Recent Blog Entries</key>
<key name="l10n.noofrecentblogentries.description">How many recent blog entries do you want to see in the home page?</key>
<key name="l10n.three">3</key>
<key name="l10n.five">5</key>
<key name="l10n.seven">7</key>
<key name="l10n.nine">9</key>
</bundle>
</bundles>
</pluggable-descriptor>