public static Map getInterfaceMethodsFromInterface ( CtClass interfaceClass , Map exceptMethods ) { HashMap interfaceMethods = new HashMap ( ) ; CtMethod [ ] methods = interfaceClass . getDeclaredMethods ( ) ; for ( int i = 0 ; i < methods . length ; i ++ ) { if ( exceptMethods . get ( methods [ i ] . getName ( ) ) == null ) { ConcreteClassGeneratorUtils . logger . trace ( methods [ i ] . getName ( ) ) ; interfaceMethods . put ( getMethodKey ( methods [ i ] ) , methods [ i ] ) ; } } Map temp = getSuperClassesAbstractMethodsFromInterface ( interfaceClass ) ; for ( Iterator i = temp . keySet ( ) . iterator ( ) ; i . hasNext ( ) ; ) { String key = ( String ) i . next ( ) ; if ( ! exceptMethods . containsKey ( key ) ) { interfaceMethods . put ( key , temp . get ( key ) ) ; } } return interfaceMethods ; }
Retrieve all methods from an interface including super interfaces except the ones specified in the provided map