public synchronized void addWSInfoItem(File file,
Deployer deployer,
int type) {
WSInfo info = (WSInfo) currentJars.get(file.getAbsolutePath());
if (info != null) {
if (deploymentEngine.isHotUpdate() && isModified(file, info)) {
WSInfo wsInfo = new WSInfo(info.getFileName(), info.getLastModifiedDate(), deployer,type);
deploymentEngine.addWSToUndeploy(wsInfo); // add entry to undeploy list
DeploymentFileData deploymentFileData = new DeploymentFileData(file, deployer);
deploymentEngine.addWSToDeploy(deploymentFileData); // add entry to deploylist
}
} else {
info = getFileItem(file, deployer, type);
setLastModifiedDate(file, info);
}
jarList.add(info.getFileName());
}
First checks whether the file is already available by the
system call fileExists. If it is not deployed yet then adds to the jarList
and to the deployment engine as a new service or module.
While adding new item to jarList, first creates the WSInfo object and
then adds to the jarlist and actual jar file is added to DeploymentEngine.
If the files already exists, then checks whether it has been updated
then changes the last update date of the wsInfo and adds two entries to
DeploymentEngine - one for new deployment and other for undeployment. |