code: public <T> T reference(Class<T> type, Annotation qualifier)
              throws ProviderMissingException, ProvideException, CircularDependenciesException {
          if (!uiThreadRunner.isOnUiThread()) {
              throw new MvcGraphException("Cannot reference an instance from Non-UiThread");
          }
          return graph.reference(type, qualifier, Inject.class);
      }
docs: Reference an injectable object and retain it. Use
  {@link #dereference(Object, Class, Annotation)} to dereference it when it's not used
  any more.
  @param type the type of the object
  @param qualifier the qualifier
  @return