blob: 88fc7bd599f6d0ee9fb0f36af9fb0f91a9b9d64b [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2001, 2004 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.wst.ws.internal.explorer.platform.favorites.perspective;
import org.eclipse.wst.ws.internal.datamodel.*;
import org.eclipse.wst.ws.internal.explorer.platform.datamodel.*;
import org.eclipse.wst.ws.internal.explorer.platform.favorites.constants.*;
import org.eclipse.wst.ws.internal.explorer.platform.favorites.datamodel.*;
import org.eclipse.wst.ws.internal.explorer.platform.perspective.NodeManager;
import java.io.*;
public class FavoritesUDDIRegistryFolderNode extends FavoritesNavigatorFolderNode {
public FavoritesUDDIRegistryFolderNode(TreeElement treeElement, NodeManager nodeManager, int nodeDepth) {
super(treeElement, nodeManager, nodeDepth);
treeElement.addListener(new ElementAdapter() {
public void relAdded(RelAddEvent event) {
String rel = event.getOutBoundRelName();
if (rel.equals(FavoritesModelConstants.REL_UDDI_REGISTRY_NODE)) {
TreeElement regElement = (TreeElement)event.getParentElement();
String imagePath;
StringBuffer categoriesDirectory = new StringBuffer();
FavoritesUDDIRegistryFolderElement.formCategoriesDirectory(categoriesDirectory,nodeManager_.getController().getServletEngineStateLocation(),regElement.getName());
File categoryDirectoryFile = new File(categoriesDirectory.toString());
String[] categoryFiles = categoryDirectoryFile.list();
if (categoryFiles != null && categoryFiles.length > 0)
imagePath = "favorites/images/uddi_registry_cat_node.gif";
else
imagePath = "favorites/images/uddi_registry_node.gif";
FavoritesUDDIRegistryNode favoritesUDDIRegistryNode = new FavoritesUDDIRegistryNode(regElement, nodeManager_, nodeDepth_ + 1, imagePath);
addChild(favoritesUDDIRegistryNode);
}
}
public void relRemoved(RelRemoveEvent event) {
TreeElement childElement = null;
if (event.getInBoundRelName().equals(FavoritesModelConstants.REL_UDDI_REGISTRY_NODE)) {
childElement = (TreeElement)event.getInboundElement();
}
if (event.getOutBoundRelName().equals(FavoritesModelConstants.REL_UDDI_REGISTRY_NODE)) {
childElement = (TreeElement)event.getOutBoundElement();
}
removeChildNode(childElement);
}
});
}
protected void initTools() {
FavoritesPerspective favPerspective = nodeManager_.getController().getFavoritesPerspective();
new ListFavoriteUDDIRegistryTool(toolManager_, favPerspective.getMessage("ALT_LIST_FAVORITE_UDDI_REGISTRY"));
}
}