code: private static Throwable getThrowable(final RuntimeErrorProto error) {
      final byte[] data = getData(error);
      if (data != null) {
        try {
          return CODEC.decode(data);
        } catch (final RemoteRuntimeException ex) {
          LOG.log(Level.FINE, "Could not decode exception {0}: {1}", new Object[]{error, ex});
        }
      }
      return null;
    }
docs: Retrieve Java exception from protobuf object, if possible. Otherwise, return null.
  This is a utility method used in the FailedRuntime constructor.
  
  @param error protobuf error message structure.
  @return Java exception or null if exception is missing or cannot be decoded.