Intelligent Pack: Installing a fresh copy
From CFTP
- Download the latest version of the plug-in.
- Unzip the downloaded file intellipack-x.xx-bin.zip into a temporary directory of your choice.
- Copy all the unzipped JAR files into the lib directory of your FTP server overwriting existing files. Manually remove old versions of duplicate JAR files.
- Run the update script in your FTP server directory to update the start-up scripts.
Next you have to update the conf/beans.xml file in your FTP server. Edit the file in you favourite editor and do the steps below.
Replace the Control Connector
Locate the current controlConnector bean and replace it with the following:
<bean id="controlConnector" class="com.coldcore.coloradoftp.plugin.intellipack.connection.IntelControlConnector"> </bean>
Replace the Control Connection
Locate the current controlConnection bean and replace it with the following:
<bean id="controlConnection" class="com.coldcore.coloradoftp.plugin.intellipack.connection.IntelControlConnection" singleton="false"> <constructor-arg index="0" value="8192"/> </bean>
This new controlConnection requires controlSpeedometer bean, which will be added later.
Replace the Data Connection
Locate the current dataConnection bean and replace it with the following:
<bean id="dataConnection" class="com.coldcore.coloradoftp.plugin.intellipack.connection.IntelDataConnection" singleton="false"> <constructor-arg index="0" value="8192"/> </bean>
This new dataConnection requires dataSpeedometer.local and dataSpeedometer.remote beans, which will be added later.
Add Speed-o-Meters
Add the following 3 beans to the bottom of your beans.xml file:
<bean id="dataSpeedometer" class="com.coldcore.coloradoftp.plugin.intellipack.connection.Speedometer"/>
<bean id="dataSpeedometer.local" class="com.coldcore.coloradoftp.plugin.intellipack.connection.Speedometer"/>
<bean id="dataSpeedometer.remote" class="com.coldcore.coloradoftp.plugin.intellipack.connection.Speedometer"/>
Wrap Existing APPE, STOR, STOU, RETR Commands
The FTP command wrappers will wrap around your existing FTP commands. It is recommended to use these wrappers prior to any other. Here is an example of a wrapper:
<bean id="appeCommand"
class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelFileCommandWrapper"...
<constructor-arg index="0">
<bean class="com.coldcore.coloradoftp.command.impl.ftp.AppeCommand"...
</constructor-arg>
</bean>
This is the wrapper (regular text) around the original FTP command (highlighted text). In the similar manner you must wrap your existing FTP commands – the wrapper part is the same but the underlying FTP commands differ: APPE, STOR, STOU, RETR. Those commands access files, if for some reason you have additional commands of the same behaviour then wrap those as well.
Here I wrap the commands that come with Generic Bundle. Locate the appeCommand, storCommand, stouCommand, retrCommand beans and wrap those with the XML similar to the following. Note that the original XML of the FTP commands (highlighted text) in your beans.xml may be different from what you see below, you must wrap your existing commands rather than do blind copy/paste, leave the highlighted parts as they are in your beans.xml and just apply the surrounding wrappers:
<bean id="appeCommand"
class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelFileCommandWrapper"
singleton="false">
<constructor-arg index="0">
<bean class="com.coldcore.coloradoftp.command.impl.ftp.AppeCommand"
singleton="false"/>
</constructor-arg>
</bean>
<bean id="storCommand"
class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelFileCommandWrapper"
singleton="false">
<constructor-arg index="0">
<bean class="com.coldcore.coloradoftp.command.impl.ftp.StorCommand"
singleton="false"/>
</constructor-arg>
</bean>
<bean id="stouCommand"
class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelFileCommandWrapper"
singleton="false">
<constructor-arg index="0">
<bean class="com.coldcore.coloradoftp.command.impl.ftp.StouCommand"
singleton="false"/>
</constructor-arg>
</bean>
<bean id="retrCommand"
class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelFileCommandWrapper"
singleton="false">
<constructor-arg index="0">
<bean class="com.coldcore.coloradoftp.command.impl.ftp.RetrCommand"
singleton="false"/>
</constructor-arg>
</bean>
Replace the PASV Command
Note that the new PASV command is not a wrapper like others. Replace the current pasvCommand bean with the following:
<bean id="pasvCommand"
class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelFileCommandWrapper"
singleton="false">
<constructor-arg index="0">
<bean class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelPasvCommand"
singleton="false"/>
</constructor-arg>
</bean>
Return to Plug-in: Intelligent Pack