public static boolean classImplements(Class<?> classUnderTest, Class<?> interfaceExpected) {
		if (classUnderTest.equals(interfaceExpected)) {
			return true;
		}
		Class<?>[] interfaces = classUnderTest.getInterfaces();
		if (interfaces != null) {
			for (Class<?> clazz : interfaces) {
				if (clazz.equals(interfaceExpected)) {
					return true;
				}
			}
		}
		return false;
	}