package org.eclipse.uml2.diagram.common.sheet.chooser;
import org.eclipse.core.resources.IFile;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerFilter;
public class UMLFileFilter extends ViewerFilter {
private static final String UML_FILE_EXTENSION = "uml"; //$NON-NLS-1$
private final String myFileExtension;
public UMLFileFilter(String fileExtension) {
myFileExtension = fileExtension;
}
public UMLFileFilter() {
this(UML_FILE_EXTENSION);
}
@Override
public boolean select(Viewer viewer, Object parentElement, Object element) {
if (element instanceof IFile) {
IFile file = (IFile) element;
String fileExtension = file.getFullPath().getFileExtension();
return myFileExtension.equals(fileExtension); //$NON-NLS-1$
}
if (element instanceof Resource) {
Resource res = (Resource) element;
String fileExtension = res.getURI().fileExtension();
return myFileExtension.equals(fileExtension); //$NON-NLS-1$
}
return true;
}
}