public static <T> T getAdapter(Class<T> adapterClass, List<Adapter> eAdapters) { Adapter adapter = EcoreUtil.getAdapter(eAdapters, adapterClass); if (adapter == null) { return null; } if (!adapterClass.isAssignableFrom(adapter.getClass())) { throw new ClassCastException( adapter.getClass().getName() + " is not assignable to " + adapterClass.getName()); } @SuppressWarnings("unchecked") T castAdapter = (T) adapter; return castAdapter; }