List<Class<?>> interfaceList = getInterfaces(cls);
List<ClassInfo.MethodInfo> methodInfos = new ArrayList<ClassInfo.MethodInfo>();
for(Class<?> interfaceCls : interfaceList) {
Method[] methods = interfaceCls.getDeclaredMethods();
if(contractAnn != null && contractAnn.defaultAll()) {
for(Method m : methods) {
if(Modifier.isPublic(m.getModifiers()) || Modifier.isProtected(m.getModifiers())) {
ClassInfo.MethodInfo mi = new ClassInfo.MethodInfo();
mi.setMethod(m);
methodInfos.add(mi);