code: private void addPanelForContext(Context context, ContextPanelFactory contextPanelFactory, String[] panelPath) {
          AbstractContextPropertiesPanel panel = contextPanelFactory.getContextPanel(context);
          panel.setSessionDialog(getSessionDialog());
          getSessionDialog().addParamPanel(panelPath, panel, false);
          this.contextPanels.add(panel);
  
          List<AbstractContextPropertiesPanel> panels = contextPanelFactoriesPanels.get(contextPanelFactory);
          if (panels == null) {
              panels = new ArrayList<>();
              contextPanelFactoriesPanels.put(contextPanelFactory, panels);
          }
          panels.add(panel);
      }
docs: Adds a custom context panel for the given context, created form the given context panel factory and placed under the
  given path.
  
  @param contextPanelFactory context panel factory used to create the panel, must not be {@code null}
  @param panelPath the path where to add the created panel, must not be {@code null}
  @param context the target context, must not be {@code null}