private void doCall ( MethodCall < Object > methodCall ) { if ( debug ) { logger . debug ( ServiceBundleImpl . class . getName ( ) , "::doCall() " , methodCall . name ( ) , methodCall . address ( ) , "\n" , methodCall ) ; } try { if ( methodCall . hasCallback ( ) ) { callbackManager . registerCallbacks ( methodCall ) ; } boolean [ ] continueFlag = new boolean [ 1 ] ; methodCall = handleBeforeMethodCall ( methodCall , continueFlag ) ; if ( ! continueFlag [ 0 ] ) { if ( debug ) { logger . debug ( ServiceBundleImpl . class . getName ( ) + "::doCall() " + "Flag from before call handling does not want to continue" ) ; } } else { final Consumer < MethodCall < Object > > methodDispatcher = getMethodDispatcher ( methodCall ) ; methodDispatcher . accept ( methodCall ) ; } } catch ( Exception ex ) { Response < Object > response = new ResponseImpl <> ( methodCall , ex ) ; this . responseQueue . sendQueue ( ) . sendAndFlush ( response ) ; } }
Handles calling a method