code: @Override
      public final void setContext(ElementContext context) {
          this.context = context;
  
          initializer.initializeFields(context);
  
          onSetContext();
      }
docs: In AbstractView, setContext triggers some helpful initializations:
  <ul>
  <li>If a field is annotated with {@link Context}, then the context parameter will be casted
  and assigned to that field. If the context does not implement that fields type, a
  {@link ClassCastException} will be thrown.</li>
  <li>If there are fields that implement {@link com.redhat.darcy.ui.api.HasElementContext},
  then they were created in such a way that they do not know about their owning View and,
  therefore, ElementContext. When setContext is called, LazyElements will get the context
  assigned to them.</li>
  <li>Calls {@link #onSetContext()} so that implementations of AbstractView may provide their
  own initializations that depend on the context, as necessary.</li>
  </ul>