Class BuildTypeSuggestion

    • Constructor Detail

      • BuildTypeSuggestion

        public BuildTypeSuggestion​(@NotNull
                                   java.lang.String type,
                                   @NotNull
                                   java.lang.String displayName,
                                   @NotNull
                                   PagePlaces pagePlaces)
    • Method Detail

      • getType

        @NotNull
        public java.lang.String getType()
        Specified by:
        getType in class HealthStatusReport
        Returns:
        unique identifier of the problem finder
      • getDisplayName

        @NotNull
        public java.lang.String getDisplayName()
        Description copied from class: HealthStatusReport
        User presentable name of the problem finder.
        Specified by:
        getDisplayName in class HealthStatusReport
        Returns:
        name of the problem finder to show in the user interface.
      • getCategories

        @NotNull
        public final java.util.Collection<ItemCategory> getCategories()
        Description copied from class: HealthStatusReport
        Problems categories producing by this problem finder. All problems of 'undeclared' categories will be filtered even if they were consumed.
        Specified by:
        getCategories in class HealthStatusReport
        Returns:
        Unmodifiable not-empty collection of unique categories producing by this problem finder.
      • report

        public void report​(@NotNull
                           HealthStatusScope scope,
                           @NotNull
                           HealthStatusItemConsumer resultConsumer)
        Description copied from class: HealthStatusReport
        When called must report all found problems to result consumer according to the received scope. Always called with system privileges (in all permissions mode) so no permission checks are required.

        Note that this method can be called quite often, so long-running implementations should return false from HealthStatusReport.canReportItemsFor(HealthStatusScope) if it's clear that they can't produce any items for the requested scope.

        Implementations of this method should always return in a reasonable time. For example, long running computations or network calls should not be made in this method, but rather called in some background thread, their result saved to a cache, and then be read from the cache in this method.

        Specified by:
        report in class HealthStatusReport
        Parameters:
        scope - health status code
        resultConsumer - health status item consumer
      • getSuggestions

        @NotNull
        public abstract java.util.List<BuildTypeSuggestedItem> getSuggestions​(@NotNull
                                                                              SBuildType buildType)
        Returns suggestions for provided build type.
        Parameters:
        buildType - build type to provide suggestions for
        Returns:
        list of suggestions
      • getViewUrl

        @NotNull
        public abstract java.lang.String getViewUrl()
        Returns:
        url to page or jsp which will render build type suggestion.
      • filterBuildTypes

        @NotNull
        protected java.util.Collection<SBuildType> filterBuildTypes​(@NotNull
                                                                    HealthStatusScope scope)
        Not for all build types suggestions should be shown. This method performs some basic filtration for build types from the scope, i.e. it filters out all paused build types.
        Parameters:
        scope - scope to filter
        Returns:
        build types to run suggestions against