docs: private static BeanItemContainer<CmsSite> setUpWorkplaceComboBox(
          List<CmsSite> allSites,
          final ComboBox combo,
          boolean nullselect,
          String defaultValue,
          CmsSSLMode sslMode) {
  
          final List<CmsSite> modSites = new ArrayList<CmsSite>();
          CmsSite siteWithDefaultURL = null;
  
          String defaultURL = defaultValue;
  
          for (CmsSite site : allSites) {
              CmsSite si = new CmsSite("dummy", site.getUrl());
              si.setSSLMode(site.getSSLMode());
              modSites.add(si);
              if (defaultValue != null) {
                  if (defaultURL.equals(si.getUrl())) { //SSL sensitive ('http'!='https')
                      siteWithDefaultURL = si;
                  }
              }
          }
          if (defaultValue != null) {
              if (siteWithDefaultURL == null) {
                  siteWithDefaultURL = new CmsSite("dummy", defaultURL);
                  siteWithDefaultURL.setSSLMode(sslMode);
                  modSites.add(0, siteWithDefaultURL);
              }
          }
  
          final BeanItemContainer<CmsSite> objects = new BeanItemContainer<CmsSite>(CmsSite.class, modSites);
          combo.setContainerDataSource(objects);
          combo.setNullSelectionAllowed(nullselect);
          combo.setItemCaptionPropertyId("url");
          combo.setValue(siteWithDefaultURL);
          combo.setNewItemsAllowed(true);
          combo.setImmediate(true);
          combo.setNewItemHandler(new NewItemHandler() {
  
              private static final long serialVersionUID = -4760590374697520609L;
  
              public void addNewItem(String newItemCaption) {
  
                  CmsSite newItem = new CmsSite("dummy", newItemCaption);
                  newItem.setSSLMode(newItemCaption.contains("https:") ? CmsSSLMode.MANUAL : CmsSSLMode.NO);
                  objects.addBean(newItem);
                  combo.select(newItem);
              }
          });
          return objects;
      }