private Arg [ ] getMethodArguments ( List < Parameter > param ) { Arg [ ] val = new Arg [ param . size ( ) ] ; for ( int i = 0 ; i < param . size ( ) ; i ++ ) { String type = param . get ( i ) . type ; Arg arg = new Arg ( ) ; arg . type = type ; arg . name = param . get ( i ) . name ; Object v = null ; String type1 = null ; try { type1 = this . getMappedType ( type ) ; v = getObjectOfType ( type1 ) ; } catch ( Exception e ) { throw new IllegalStateException ( "type codec failed for type " + type + " for domain " + e . getMessage ( ) ) ; } // support unpacking of consecutive bits from a single byte this . bitCount = ( byte ) ( ( type1 == "Bit" ) ? this . bitCount + 1 : 0 ) ; arg . value = v ; val [ i ] = arg ; } return val ; }
Decodes arguments given a method s parameter list