Interface FieldConfigurationScheme

All Known Implementing Classes:
ImmutableFieldConfigurationScheme, MockFieldConfigurationScheme

@PublicApi public interface FieldConfigurationScheme
A Field Configuration Scheme maps each Issue Type to a "Field Configuration" (FieldLayoutSchemeEntity).

A Field Configuration defines for each field if it is required or not, whether it is visible or hidden, and what "Screens" it will appear on. (The Screen defines the order the fields are shown in, and can define multiple tabs).

See Also:
  • Method Details

    • getId

      Long getId()
    • getName

      String getName()
    • getDescription

      String getDescription()
    • getFieldLayoutId

      Long getFieldLayoutId(String issueTypeId)
      Returns the id of the field layout to use for this given issue type id. This will do all the necessary work to lookup the default entry if no specific mapping for the given isuse type id exists. So after calling this method simply use the returned field layout id.
      Parameters:
      issueTypeId - the Issue Type ID.
      Returns:
      the id of the FieldLayout ("Field Configuration") to use for this given issue type id.
    • getAllFieldLayoutIds

      Set<Long> getAllFieldLayoutIds(Collection<String> allIssueTypeIds)
      Returns the id's of the field layout's represented by FieldConfigurationScheme (i.e. the layouts associated with this project).
      Parameters:
      allIssueTypeIds - all the issue type id's that are in the system. This is used to determine if we need to return the layout for the default, if we have all the issue types mapped in the system then we do not care about the default since it is never used.
      Returns:
      the id's of the FieldLayout ("Field Configuration") to use for the project this is associcated with.