code: public CmsSite toCmsSite() {
  
          m_siteRoot = m_siteRoot.endsWith("/") ? m_siteRoot.substring(0, m_siteRoot.length() - 1) : m_siteRoot;
          CmsSiteMatcher matcher = CmsStringUtil.isNotEmpty(m_secureUrl) ? new CmsSiteMatcher(m_secureUrl) : null;
          CmsSite site = OpenCms.getSiteManager().getSiteForSiteRoot(m_siteRoot);
          CmsUUID uuid = new CmsUUID();
          if ((site != null) && (site.getSiteMatcher() != null)) {
              uuid = (CmsUUID)site.getSiteRootUUID().clone();
          }
          String errorPage = CmsStringUtil.isNotEmptyOrWhitespaceOnly(m_errorPage) ? m_errorPage : null;
          List<CmsSiteMatcher> aliases = new ArrayList<CmsSiteMatcher>();
          for (String alias : m_aliases) {
              CmsSiteMatcher aliasMatcher = new CmsSiteMatcher(alias);
              aliasMatcher.setRedirect(m_redirectAliases.contains(alias));
              aliases.add(aliasMatcher);
          }
          CmsSite result = new CmsSite(
              m_siteRoot,
              uuid,
              m_title,
              new CmsSiteMatcher(m_server),
              String.valueOf(m_position),
              errorPage,
              matcher,
              m_exclusiveUrl,
              m_exclusiveError,
              m_webserver,
              aliases);
          result.setParameters(m_parameters);
          try {
              result.setSSLMode(CmsSSLMode.valueOf(m_mode));
          } catch (Exception e) {
              result.setSSLMode(CmsSSLMode.NO);
              LOG.error(e.getLocalizedMessage(), e);
          }
          return result;
  
      }
docs: Creates a new site object based on the members.<p>
  
  @return a new site object based on the members