package net.sourceforge.phpeclipse.resourcesview; import net.sourceforge.phpdt.internal.core.JavaProject; import net.sourceforge.phpeclipse.PHPCore; import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IProject; import org.eclipse.core.runtime.IAdapterFactory; public class ResourceAdapterFactory implements IAdapterFactory { protected static Class[] ADAPTERS_I_CREATE = new Class[] { PHPElement.class, PHPFile.class, JavaProject.class }; public ResourceAdapterFactory() { super(); } public Object getAdapter(Object adaptableObject, Class adapterType) { if (PHPFile.class.equals(adapterType)) return PHPCore.create((IFile) adaptableObject); if (JavaProject.class.equals(adapterType)) return PHPCore.create((IProject) adaptableObject); if (PHPElement.class.equals(adapterType)) { if (adaptableObject instanceof IFile) return PHPCore.create((IFile) adaptableObject); if (adaptableObject instanceof IProject) return PHPCore.create((IProject) adaptableObject); } return null; } public Class[] getAdapterList() { return ADAPTERS_I_CREATE; } }