Interface SpaceFeatures
-
- All Known Implementing Classes:
SpaceFeatures.FeatureResolver
,SpaceFeatures.Global
,SpaceFeatures.Scoped
public interface SpaceFeatures
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
SpaceFeatures.Feature
static class
SpaceFeatures.FeatureResolver
static class
SpaceFeatures.Global
static class
SpaceFeatures.Scoped<S extends InternalParameters>
static class
SpaceFeatures.UnconditionalPublishingMode
-
Field Summary
Fields Modifier and Type Field Description static SpaceFeatures.Global
GLOBAL
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default boolean
allowNonSecureConnection()
Whether to allow connections in theSpaceClient
to non-HTTPS endpoints.default boolean
capabilitiesEnabled()
Whether the connection capability feature is enabled.default boolean
commitStatusEnabled()
Whether the Commit Status Publisher build feature is enabled.default boolean
enhancedIntegrationFeatureSetEnabled()
Whether the whole feature set for Enhanced Space Integration is enabled.default boolean
forceCloseSpaceWindow()
Whether to skip sanity checks before closing the Space popup window.static <T> SpaceFeatures
forScope(T scope)
Provides access to the feature toggle configuration in a scoped way.static SpaceFeatures
global()
Provides access to the feature toggle configuration on a global level, i.e., scoped parameters will not be taken into account.default boolean
hideReposForPendingConnections()
Whether repository listings for pending connections should be hidden.default String
linkHostOverride(String connectionId)
Overrides the host part of user-facing URLs (links) by this value.default boolean
mergeRequestsEnabled()
Whether the Pull Request build feature is enabled.default boolean
onDemandEnabled()
Whether to suggest on-demand creation of Space connections.default boolean
projectLevelConnectionEnabled()
Whether the project level Space connection feature is enabled.default boolean
publishCommitStatusUnconditionally()
Whether to publish commit statuses even if no Commit Status Publisher build feature is configured.default boolean
publishMergeRequestComments()
Whether to publish comments about build status to the merge request timeline.default boolean
publishMergeRequestCommentsUnconditionally()
Whether to publish comments about build statuses to the merge request timeline even if no Commit Status Publisher build feature is configured.default boolean
reportUnconditionalPublishing()
Whether the health report about unconditional status publishing should be generated.boolean
resolve(SpaceFeatures.Feature feature)
<T> T
resolveOptionalValue(String property, Function<String,T> convertFun)
<T> T
resolveValue(String property, Function<String,T> convertFun, String defaultValue)
default boolean
sendEpochPolicy()
Whether to send the special Space headerSpaceConstants.HEADER_SPACE_EPOCH_POLICY
with every request to Space.default SpaceFeatures.UnconditionalPublishingMode
unconditionalPublishingMode()
default boolean
useRefreshableTokens()
Whether refreshable user tokens should be used instead of permanent user tokens.default boolean
useTabForCreateApp()
Whether a browser tab should be used for creating Space applications instead of a popup.default boolean
verifyPayloads()
Whether Space payloads should be verified before processing.
-
-
-
Field Detail
-
GLOBAL
static final SpaceFeatures.Global GLOBAL
-
-
Method Detail
-
global
static SpaceFeatures global()
Provides access to the feature toggle configuration on a global level, i.e., scoped parameters will not be taken into account.- Returns:
- global settings accessor
-
forScope
static <T> SpaceFeatures forScope(@NotNull T scope)
Provides access to the feature toggle configuration in a scoped way. For example, project parameters may be taken into account. The scope should implementInternalParameters
, otherwise only fallback values will be used.- Parameters:
scope
- the scope, for example, an instance ofSProject
- Returns:
- scoped settings accessor
-
mergeRequestsEnabled
default boolean mergeRequestsEnabled()
Whether the Pull Request build feature is enabled.- Returns:
- true by default
-
commitStatusEnabled
default boolean commitStatusEnabled()
Whether the Commit Status Publisher build feature is enabled.- Returns:
- true by default
-
enhancedIntegrationFeatureSetEnabled
default boolean enhancedIntegrationFeatureSetEnabled()
Whether the whole feature set for Enhanced Space Integration is enabled. If this setting is disabled, all the dependent features will be disabled as well irregardles of their individual values.- Returns:
- false by default
-
useRefreshableTokens
default boolean useRefreshableTokens()
Whether refreshable user tokens should be used instead of permanent user tokens.- Returns:
- false by default
-
verifyPayloads
default boolean verifyPayloads()
Whether Space payloads should be verified before processing.- Returns:
- true by default
-
onDemandEnabled
default boolean onDemandEnabled()
Whether to suggest on-demand creation of Space connections.- Returns:
- false by default
-
projectLevelConnectionEnabled
default boolean projectLevelConnectionEnabled()
Whether the project level Space connection feature is enabled. Synonym forenhancedIntegrationFeatureSetEnabled()
.- Returns:
- false by default
-
useTabForCreateApp
default boolean useTabForCreateApp()
Whether a browser tab should be used for creating Space applications instead of a popup.- Returns:
- false by default
-
hideReposForPendingConnections
default boolean hideReposForPendingConnections()
Whether repository listings for pending connections should be hidden.- Returns:
- true by default
-
capabilitiesEnabled
default boolean capabilitiesEnabled()
Whether the connection capability feature is enabled. Synonym forenhancedIntegrationFeatureSetEnabled()
.- Returns:
- false by default
-
forceCloseSpaceWindow
default boolean forceCloseSpaceWindow()
Whether to skip sanity checks before closing the Space popup window.- Returns:
- false by default
-
publishCommitStatusUnconditionally
default boolean publishCommitStatusUnconditionally()
Whether to publish commit statuses even if no Commit Status Publisher build feature is configured.- Returns:
- true by default
-
publishMergeRequestCommentsUnconditionally
default boolean publishMergeRequestCommentsUnconditionally()
Whether to publish comments about build statuses to the merge request timeline even if no Commit Status Publisher build feature is configured.- Returns:
- false by default
-
reportUnconditionalPublishing
default boolean reportUnconditionalPublishing()
Whether the health report about unconditional status publishing should be generated.- Returns:
- false by default
-
unconditionalPublishingMode
default SpaceFeatures.UnconditionalPublishingMode unconditionalPublishingMode()
-
publishMergeRequestComments
default boolean publishMergeRequestComments()
Whether to publish comments about build status to the merge request timeline. This feature only applies if CSP and PR build features are active on a build type.- Returns:
- true by default
-
allowNonSecureConnection
default boolean allowNonSecureConnection()
Whether to allow connections in theSpaceClient
to non-HTTPS endpoints. This should only be activated for testing purposes.- Returns:
- false by default
-
linkHostOverride
@Nullable default String linkHostOverride(@NotNull String connectionId)
Overrides the host part of user-facing URLs (links) by this value. This value is just the host part without any other parts like scheme or path. If this value is misconfigured, the resulting URLs might be constructed wrongly.- Parameters:
connectionId
- ID of the Space connection- Returns:
- the host to use for link construction or null if no override is configured
- Since:
- 2024.12
-
sendEpochPolicy
default boolean sendEpochPolicy()
Whether to send the special Space headerSpaceConstants.HEADER_SPACE_EPOCH_POLICY
with every request to Space. The header value will be fixed toSpaceConstants.EPOCH_POLICY_READ_AFTER_WRITE
. This is supposed to help with Space application creation in multi-node Space setups.- Returns:
- true by default
- Since:
- 2024.12
-
resolve
boolean resolve(@NotNull SpaceFeatures.Feature feature)
-
resolveValue
@NotNull <T> T resolveValue(@NotNull String property, @NotNull Function<String,T> convertFun, @NotNull String defaultValue)
-
-