Interface DetailViewFieldConfigurationService

All Known Implementing Classes:
DetailViewFieldConfigurationServiceImpl

public interface DetailViewFieldConfigurationService
Services to configure DetailViewField entries for a RapidView. To retrieve the fields to use at display time (not configuration time), see DetailViewFieldService.
See Also:
  • Method Details

    • getDetailViewFields

      @Nonnull ServiceOutcome<List<DetailViewFieldConfig>> getDetailViewFields(@Nonnull RapidView rapidView)
      Get the currently configured detail view fields for this RapidView. This will potentially include configurations which are not valid due to fields not being available.
      Parameters:
      rapidView - the view
      Returns:
      the outcome
    • getAvailableDetailViewCustomFields

      @Nonnull ServiceOutcome<List<? extends com.atlassian.jira.issue.fields.Field>> getAvailableDetailViewCustomFields()
      Get the list of fields which can be configured across the system.
      Returns:
      the outcome
    • getAvailableDetailViewFields

      @Nonnull ServiceOutcome<List<? extends com.atlassian.jira.issue.fields.Field>> getAvailableDetailViewFields(@Nonnull RapidView rapidView)
      Get the list of fields which can be configured for this RapidView. Does not include fields which are already configured or are not supported.
      Returns:
      the outcome
    • add

      @Nonnull ServiceOutcome<List<DetailViewFieldConfig>> add(com.atlassian.jira.user.ApplicationUser user, @Nonnull RapidView rapidView, @Nonnull DetailViewField detailViewField)
      Add a DetailViewField object to a RapidView's configuration.
      Parameters:
      user - the user
      rapidView - the view
      detailViewField - the field to add
      Returns:
      the new configuration
    • delete

      @Nonnull ServiceResult delete(com.atlassian.jira.user.ApplicationUser user, RapidView rapidView, Long detailViewFieldId)
      Remove a DetailViewField from a RapidView's configuration.
      Parameters:
      user - the user performing the delete
      rapidView - the view
      detailViewFieldId - the ID of the row to delete
      Returns:
      the outcome
    • moveAfter

      @Nonnull ServiceResult moveAfter(com.atlassian.jira.user.ApplicationUser user, RapidView rapidView, long detailViewFieldId, Long moveBeforeDetailViewFieldId)
      Move a DetailViewField to be before another one.
      Parameters:
      user - the user performing the move
      rapidView - the view
      detailViewFieldId - the ID of the row to move
      moveBeforeDetailViewFieldId - the ID of the row to move the other one after. If null it is moved to the first position
      Returns:
      the outcome
    • createDefaultRapidViewFields

      @Nonnull ServiceOutcome<List<DetailViewField>> createDefaultRapidViewFields(com.atlassian.jira.user.ApplicationUser user, RapidView rapidView)
      Initially setup the rapid view
      Parameters:
      user - the user
      rapidView - the rapid view
      Returns:
      succ/fail