Class ServerSettingsImpl

    • Constructor Detail

      • ServerSettingsImpl

        public ServerSettingsImpl()
      • ServerSettingsImpl

        @Autowired
        public ServerSettingsImpl​(@NotNull
                                  SecurityContextEx securityContextEx)
    • Method Detail

      • setMainConfigManager

        public void setMainConfigManager​(@NotNull
                                         MainConfigManager mainConfigManager)
      • setRootUrlHolder

        public void setRootUrlHolder​(@NotNull
                                     RootUrlHolder rootUrlHolder)
      • setVcsManager

        public void setVcsManager​(@NotNull
                                  VcsManagerEx vcsManager)
      • setServerPaths

        public void setServerPaths​(@NotNull
                                   ServerPaths serverPaths)
      • setHeartbeat

        public void setHeartbeat​(@NotNull
                                 Heartbeat heartbeat)
      • setEncryptionSettings

        public void setEncryptionSettings​(EncryptionSettings encryptionSettings)
      • getRootUrl

        @NotNull
        public String getRootUrl()
        Specified by:
        getRootUrl in interface ServerSettings
        Returns:
        root url of the server, used mainly for notifications
      • setRootUrl

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setRootUrl​(@NotNull
                               String rootUrl)
      • getDefaultQuietPeriod

        public int getDefaultQuietPeriod()
        Specified by:
        getDefaultQuietPeriod in interface ServerSettings
        Returns:
        default value for VCS trigger quiet period (seconds)
      • setDefaultQuietPeriod

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setDefaultQuietPeriod​(int quietPeriod)
      • setMaximumAllowedArtifactSize

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setMaximumAllowedArtifactSize​(long maxSize)
      • setMaximumAllowedArtifactsNumber

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setMaximumAllowedArtifactsNumber​(long maxNumber)
      • setPerProjectPermissionsEnabled

        public void setPerProjectPermissionsEnabled​(boolean enabled)
      • isEmailVerificationEnabled

        public boolean isEmailVerificationEnabled()
        Description copied from interface: ServerSettings
        If email verification is enabled, email address becomes mandatory on user registration page as well as on user profile page. In this mode TeamCity also shows warning on non-verified email to the user and provides controls to verify it.

        Note: in this mode email will continue to be optional on create user and edit user page in administration area.

        Specified by:
        isEmailVerificationEnabled in interface ServerSettings
        Returns:
        true if email verification is enabled.
      • setDomainIsolationProtectionEnabled

        public void setDomainIsolationProtectionEnabled​(@Nullable
                                                        Boolean domainIsolationProtectionEnabled)
      • setEmailVerificationEnabled

        public void setEmailVerificationEnabled​(boolean emailVerificationEnabled)
      • getServerUUID

        @Nullable
        public String getServerUUID()
        Specified by:
        getServerUUID in interface ServerSettings
        Returns:
        unique identifier of the server. Will be null until server settings are read - after Spring context is loaded. Should be used after ServerListener.serverStartup()
      • setArtifactDirectories

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setArtifactDirectories​(@NotNull
                                           String artifactDirPaths)
      • getArtifactDirectories

        @NotNull
        public List<File> getArtifactDirectories()
        Description copied from interface: ServerSettings
        Returns effective artifact directories. The list always has at least one element. The first element of the list points to an artifacts directory where new artifacts must be stored. The list of returned directories can be smaller than the actual number of configured artifact paths (see ServerSettings.getArtifactDirectoriesPaths() because not all of the configured paths are applicable to the current platform.
        Specified by:
        getArtifactDirectories in interface ServerSettings
      • setSecurityPatchesMode

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setSecurityPatchesMode​(@NotNull
                                           String mode)
      • setArtifactsRootUrl

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setArtifactsRootUrl​(String artifactsRootUrl)
      • setDefaultExecutionTimeout

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setDefaultExecutionTimeout​(int executionTimeout)
      • getDefaultExecutionTimeout

        public int getDefaultExecutionTimeout()
        Specified by:
        getDefaultExecutionTimeout in interface ServerSettings
        Returns:
        default build execution timeout in minutes or 0 if there is no default timeout.
      • setDefaultModificationCheckInterval

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setDefaultModificationCheckInterval​(int defaultModificationCheckInterval)
      • setMinimumCheckIntervalEnforced

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setMinimumCheckIntervalEnforced​(boolean enforceMinimum)
      • isMinimumCheckIntervalEnforced

        public boolean isMinimumCheckIntervalEnforced()
        Specified by:
        isMinimumCheckIntervalEnforced in interface ServerSettings
        Returns:
        true if default modification check interval should be enforced as a minimum value
      • persistConfiguration

        public void persistConfiguration()
      • readFrom

        public void readFrom​(org.jdom.Element rootElement)
        Description copied from interface: XmlStorable
        Read this element data from given JDOM node
        Specified by:
        readFrom in interface XmlStorable
        Parameters:
        rootElement - element which contains information about this storable
      • writeTo

        public void writeTo​(org.jdom.Element rootElement)
        Description copied from interface: XmlExternalizable
        Write data to the JDOM element
        Specified by:
        writeTo in interface XmlExternalizable
        Parameters:
        rootElement - - parent element to write data to
      • getEncryptionStrategy

        public String getEncryptionStrategy()
      • setEncryptionStrategy

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setEncryptionStrategy​(String encryptionStrategy)
      • setEncryptionKey

        @Secured("CHANGE_SERVER_SETTINGS")
        public void setEncryptionKey​(String encryptionKey)