code: protected final ContentViewer newInstance(String type,
                                                InputStream data,
                                                boolean viewOnly)
              throws IOException {
          ContentViewer instance = null;
          try {
              instance = this.getClass().newInstance();
          } catch (Exception e) {
              throw new IOException(e.getMessage());
          }
          instance.init(type, data, viewOnly);
          return instance;
      }
docs: Gets a new instance of this class, which has been constructed and
  immediately thereafter, init(...)'ed. Intended to be called by
  ContentHandlerFactory only.