package com.redhat.ceylon.eclipse.code.modulesearch;
import java.util.List;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.Viewer;
import com.redhat.ceylon.ide.common.modulesearch.ModuleNode;
import com.redhat.ceylon.ide.common.modulesearch.ModuleVersionNode;
public class ModuleSearchViewContentProvider implements ITreeContentProvider {
@Override
public Object[] getElements(Object inputElement) {
if (inputElement instanceof List) {
return ((List<?>) inputElement).toArray();
}
return null;
}
@Override
public Object[] getChildren(Object parentElement) {
if (parentElement instanceof ModuleNode) {
return ((ModuleNode) parentElement).getVersions().toArray();
}
return null;
}
@Override
public Object getParent(Object element) {
if (element instanceof ModuleVersionNode) {
return ((ModuleVersionNode) element).getModule();
}
return null;
}
@Override
public boolean hasChildren(Object element) {
if (element instanceof ModuleNode) {
return true;
}
return false;
}
@Override
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
// noop
}
@Override
public void dispose() {
// noop
}
}