/******************************************************************************* * Copyright (c) 2010 SAP AG. * 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: * Emil Simeonov - initial API and implementation. * Dimitar Donchev - initial API and implementation. * Dimitar Tenev - initial API and implementation. * Nevena Manova - initial API and implementation. * Georgi Konstantinov - initial API and implementation. *******************************************************************************/ package org.eclipse.wst.sse.sieditor.ui.v2.providers; import org.eclipse.jface.viewers.ITreeContentProvider; import org.eclipse.jface.viewers.Viewer; import org.eclipse.wst.sse.sieditor.model.api.IWsdlModelRoot; import org.eclipse.wst.sse.sieditor.ui.v2.nodes.ITreeNode; import org.eclipse.wst.sse.sieditor.ui.v2.wsdl.controller.SIFormPageController; import org.eclipse.wst.sse.sieditor.ui.v2.wsdltree.nodes.FaultNode; import org.eclipse.wst.sse.sieditor.ui.v2.wsdltree.nodes.ParameterNode; public class WSDLContentProvider implements ITreeContentProvider { private final SIFormPageController nodeMapperContainer; public WSDLContentProvider(final SIFormPageController nodeMapperContainer) { this.nodeMapperContainer = nodeMapperContainer; // TODO Auto-generated constructor stub } public Object[] getChildren(final Object parentElement) { if(parentElement instanceof ITreeNode) return ((ITreeNode) parentElement).getChildren(); return null; } public Object getParent(final Object element) { if(element instanceof ParameterNode || element instanceof FaultNode) { if (!nodeMapperContainer.isShowCategoryNodes()) { final ITreeNode parent = ((ITreeNode) element).getParent(); return parent != null ? parent.getParent() : null; } } if(element instanceof ITreeNode) return ((ITreeNode) element).getParent(); return null; } public boolean hasChildren(final Object element) { if(element instanceof ITreeNode) return ((ITreeNode) element).hasChildren(); return false; } public Object[] getElements(final Object inputElement) { //Returns the first elements which are the Service Interfaces if(inputElement instanceof IWsdlModelRoot) { return nodeMapperContainer.getAllServiceInterfaceNodes(((IWsdlModelRoot)inputElement).getDescription()); } return null; } public void dispose() { // TODO Auto-generated method stub } public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) { // TODO Auto-generated method stub } }