package com.mobilesorcery.sdk.ui.internal.navigationext; import org.eclipse.core.resources.IContainer; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IResource; import org.eclipse.core.runtime.CoreException; import org.eclipse.jface.viewers.ITreeContentProvider; import org.eclipse.jface.viewers.Viewer; import org.eclipse.ui.IMemento; import org.eclipse.ui.navigator.ICommonContentExtensionSite; import org.eclipse.ui.navigator.ICommonContentProvider; import com.mobilesorcery.sdk.core.CoreMoSyncPlugin; import com.mobilesorcery.sdk.core.IsReleasePackageTester; import com.mobilesorcery.sdk.core.build.CopyBuildResultBuildStep; public class MoSyncNavigatorContentProvider implements ICommonContentProvider { @Override public Object[] getElements(Object inputElement) { return getChildren(inputElement); } @Override public Object[] getChildren(Object parentElement) { try { if (parentElement instanceof IProject) { IResource[] members = ((IContainer) parentElement).members(); for (IResource member : members) { if (member instanceof IContainer && IsReleasePackageTester .isReleasePackageFolder(member)) { return new Object[] { new ReleasePackage( (IContainer) member) }; } } } else if (parentElement instanceof ReleasePackage) { return ((ReleasePackage) parentElement).getUnderlyingResource() .members(); } } catch (CoreException e) { CoreMoSyncPlugin.getDefault().logOnce(e, getClass().getName()); } return new Object[0]; } @Override public Object getParent(Object element) { // TODO Auto-generated method stub return null; } @Override public boolean hasChildren(Object element) { return (element instanceof ReleasePackage); } @Override public void dispose() { // TODO Auto-generated method stub } @Override public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // TODO Auto-generated method stub } @Override public void restoreState(IMemento aMemento) { // TODO Auto-generated method stub } @Override public void saveState(IMemento aMemento) { // TODO Auto-generated method stub } @Override public void init(ICommonContentExtensionSite aConfig) { // TODO Auto-generated method stub } }