private Object callApiMethod(String method,Object param,Class<IRcsServiceRegistrationListener> paramClass) throws RcsServiceNotAvailableException, RcsGenericException {
  if (mApi == null) {
    throw new RcsServiceNotAvailableException();
  }
  Class<? extends IInterface> c=mApi.getClass();
  try {
    if (param != null) {
      Method m=c.getDeclaredMethod(method,paramClass);
      return m.invoke(mApi,param);
    }
    Method m=c.getDeclaredMethod(method,(Class[])null);
    return m.invoke(mApi);
  }
 catch (  Exception e) {
    throw new RcsGenericException(e);
  }
}

private Object callApiMethod ( String method , Object param , Class < IRcsServiceRegistrationListener > paramClass ) throws RcsServiceNotAvailableException , RcsGenericException { if ( mApi == null ) { throw new RcsServiceNotAvailableException ( ) ; } Class < ? extends IInterface > c = mApi . getClass ( ) ; try { if ( param != null ) { Method m = c . getDeclaredMethod ( method , paramClass ) ; return m . invoke ( mApi , param ) ; } Method m = c . getDeclaredMethod ( method , ( Class [ ] ) null ) ; return m . invoke ( mApi ) ; } catch ( Exception e ) { throw new RcsGenericException ( e ) ; } }
call specific method on the api interface
