private static void rethrowAsProperlyTypedException(Throwable throwable) throws IOException, ConfigurationException {
  if (throwable != null) {
    Throwables.propagateIfPossible(throwable,IOException.class,ConfigurationException.class);
    throw new IllegalStateException(throwable);
  }
}

private static void rethrowAsProperlyTypedException ( Throwable throwable ) throws IOException , ConfigurationException { if ( throwable != null ) { Throwables . propagateIfPossible ( throwable , IOException . class , ConfigurationException . class ) ; throw new IllegalStateException ( throwable ) ; } }
recover actual type of the exception .
