package org.erlide.engine.internal.util; import org.eclipse.core.resources.IResource; import org.eclipse.core.runtime.IAdapterFactory; import org.erlide.engine.ErlangEngine; import org.erlide.engine.model.IErlElement; public class ElementAdapterFactory implements IAdapterFactory { @SuppressWarnings("rawtypes") private static final Class[] ADAPTER_LIST = new Class[] { IErlElement.class }; @Override public Object getAdapter(final Object adaptableObject, @SuppressWarnings("rawtypes") final Class adapterType) { if (adapterType == IErlElement.class && adaptableObject instanceof IResource) { return ErlangEngine.getInstance().getModel() .findElement((IResource) adaptableObject); } return null; } @SuppressWarnings("rawtypes") @Override public Class[] getAdapterList() { return ADAPTER_LIST; } }