com.atlassian.jira.issue.fields.layout.field
Class DefaultFieldLayoutManager

java.lang.Object
  extended by com.atlassian.jira.issue.fields.layout.field.AbstractFieldLayoutManager
      extended by com.atlassian.jira.issue.fields.layout.field.DefaultFieldLayoutManager
All Implemented Interfaces:
Startable, FieldLayoutManager

public class DefaultFieldLayoutManager
extends AbstractFieldLayoutManager
implements FieldLayoutManager, Startable


Field Summary
 
Fields inherited from class com.atlassian.jira.issue.fields.layout.field.AbstractFieldLayoutManager
ofBizDelegator, SCHEME, SCHEME_ASSOCIATION
 
Fields inherited from interface com.atlassian.jira.issue.fields.layout.field.FieldLayoutManager
TYPE_DEFAULT
 
Constructor Summary
DefaultFieldLayoutManager(FieldManager fieldManager, OfBizDelegator ofBizDelegator, ConstantsManager constantsManager, SubTaskManager subTaskManager, ProjectManager projectManager, com.atlassian.event.api.EventPublisher eventPublisher, I18nHelper.BeanFactory i18n, AssociationManager associationManager)
           
 
Method Summary
 void addSchemeAssociation(org.ofbiz.core.entity.GenericValue project, Long fieldLayoutSchemeId)
          Associates a FieldLayoutScheme to the project supplied.
protected  void clearCaches()
           
 FieldLayoutScheme createFieldLayoutScheme(FieldLayoutScheme fieldLayoutScheme)
          Persists a new field Layout scheme (i.e Field Configuration Scheme).
 void createFieldLayoutSchemeEntity(FieldLayoutSchemeEntity fieldLayoutSchemeEntity)
          Persists a new FieldLayoutSchemeEntity for a particular FieldLayoutScheme.
 void deleteFieldLayout(FieldLayout fieldLayout)
          Deletes a custom FieldLayout NOTE: This is an enterprise ONLY feature.
 void deleteFieldLayoutScheme(FieldLayoutScheme fieldLayoutScheme)
          Removes the FieldLayoutScheme supplied.
 boolean fieldConfigurationSchemeExists(String schemeName)
          Checks if a FieldConfigurationScheme with the given name exists.
protected  List<String> getAllRelevantIssueTypeIds()
           
 EditableFieldLayout getEditableFieldLayout(Long id)
          Returns an EditableFieldLayout for the id supplied.
 List<EditableFieldLayout> getEditableFieldLayouts()
          Retrieves editable (see EditableFieldLayout versions of the field layouts.
 FieldConfigurationScheme getFieldConfigurationScheme(org.ofbiz.core.entity.GenericValue project)
          Retrieves the Field Configuration Scheme associated with the supplied project.
 FieldConfigurationScheme getFieldConfigurationScheme(Long schemeId)
          Retrieves a FieldConfigurationScheme by id NOTE: This is an enterprise ONLY feature.
 FieldConfigurationScheme getFieldConfigurationScheme(Project project)
          Retrieves the Field Configuration Scheme associated with the supplied project.
 Collection<FieldConfigurationScheme> getFieldConfigurationSchemes(FieldLayout fieldLayout)
          Returns a collection of FieldConfigurationSchemes that include the given FieldLayout.
 FieldLayout getFieldLayout(org.ofbiz.core.entity.GenericValue issue)
          Returns the fieldLayout for an issue.
 FieldLayout getFieldLayout(org.ofbiz.core.entity.GenericValue project, String issueTypeId)
           
 FieldLayout getFieldLayout(Long id)
          Used to retrieve FieldLayout information when rendering a screen given the id of the field layout.
 FieldLayout getFieldLayout(Project project, String issueTypeId)
           
 Collection<FieldLayoutSchemeEntity> getFieldLayoutSchemeEntities(FieldLayoutScheme fieldLayoutScheme)
          Returns a collection of FieldLayoutSchemeEntitys.
 List<FieldLayoutScheme> getFieldLayoutSchemes()
          Retries Field Configuration Schemes.
 FieldLayoutScheme getMutableFieldLayoutScheme(Long schemeId)
          Retrieves a mutable FieldLayoutScheme by id.
 Collection<org.ofbiz.core.entity.GenericValue> getProjects(FieldConfigurationScheme fieldConfigurationScheme)
          Returns all projects that use the given FieldConfigurationScheme.
 Collection<org.ofbiz.core.entity.GenericValue> getProjects(FieldLayoutScheme fieldLayoutScheme)
          Returns all associated projects for the FieldLayoutScheme supplied.
 Collection<org.ofbiz.core.entity.GenericValue> getRelatedProjects(FieldLayout fieldLayout)
          Finds all projects that use the given FieldLayout (via the configured FieldConfigurationScheme).
 Set<FieldLayout> getUniqueFieldLayouts(Project project)
          Retrieves all the FieldLayout's for a project.
 boolean isFieldLayoutSchemesVisiblyEquivalent(Long fieldConfigurationSchemeId1, Long fieldConfigurationSchemeId2)
          Will determine whether or not two FieldLayoutSchemes are "visibly equivalent".
 boolean isFieldLayoutsVisiblyEquivalent(Long fieldLayoutId1, Long fieldLayoutId2)
          Will determine whether or not two FieldLayouts are "visibly equivalent".
 void onClearCache(ClearCacheEvent event)
           
 void refresh()
          Clears all local caches.
 void removeFieldLayoutScheme(FieldLayoutScheme fieldLayoutScheme)
          NOTE: This is an enterprise ONLY feature.
 void removeFieldLayoutSchemeEntity(FieldLayoutSchemeEntity fieldLayoutSchemeEntity)
          Removes a FieldLayoutSchemeEntity NOTE: This is an enterprise ONLY feature.
 void removeSchemeAssociation(org.ofbiz.core.entity.GenericValue project, Long fieldLayoutSchemeId)
          Removes an association between a particular project and field configuration scheme.
 void restoreSchemeFieldLayout(org.ofbiz.core.entity.GenericValue scheme)
          Restores the field layout associated with the provided scheme to defaults.
 void start()
          This method wil be called after the plugin system is fully initialised and all components added to the dependency injection framework.
 void updateFieldLayoutScheme(FieldLayoutScheme fieldLayoutScheme)
          Persists the FieldLayoutScheme supplied.
 void updateFieldLayoutSchemeEntity(FieldLayoutSchemeEntity fieldLayoutSchemeEntity)
          Updates a FieldLayoutSchemeEntity.
 
Methods inherited from class com.atlassian.jira.issue.fields.layout.field.AbstractFieldLayoutManager
getDefaultDescription, getDefaultFieldLayoutItems, getEditableDefaultFieldLayout, getFieldLayout, getFieldLayout, getI18nHelper, getRelevantFieldLayout, hasDefaultFieldLayout, refreshCaches, restoreDefaultFieldLayout, restoreFieldLayout, storeEditableDefaultFieldLayout, storeEditableFieldLayout
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.jira.issue.fields.layout.field.FieldLayoutManager
getEditableDefaultFieldLayout, getFieldLayout, getFieldLayout, hasDefaultFieldLayout, restoreDefaultFieldLayout, storeEditableDefaultFieldLayout, storeEditableFieldLayout
 

Constructor Detail

DefaultFieldLayoutManager

public DefaultFieldLayoutManager(FieldManager fieldManager,
                                 OfBizDelegator ofBizDelegator,
                                 ConstantsManager constantsManager,
                                 SubTaskManager subTaskManager,
                                 ProjectManager projectManager,
                                 com.atlassian.event.api.EventPublisher eventPublisher,
                                 I18nHelper.BeanFactory i18n,
                                 AssociationManager associationManager)
Method Detail

start

public void start()
           throws Exception
Description copied from interface: Startable
This method wil be called after the plugin system is fully initialised and all components added to the dependency injection framework.

Specified by:
start in interface Startable
Overrides:
start in class AbstractFieldLayoutManager
Throws:
Exception - Allows implementations to throw an Exception.

onClearCache

@EventListener
public void onClearCache(ClearCacheEvent event)

getFieldLayout

public FieldLayout getFieldLayout(org.ofbiz.core.entity.GenericValue issue)
Description copied from interface: FieldLayoutManager
Returns the fieldLayout for an issue.

Specified by:
getFieldLayout in interface FieldLayoutManager
Specified by:
getFieldLayout in class AbstractFieldLayoutManager
Parameters:
issue - An issue GenericValue
Returns:
A FieldLayout

getFieldLayout

public FieldLayout getFieldLayout(Project project,
                                  String issueTypeId)
Specified by:
getFieldLayout in interface FieldLayoutManager
Specified by:
getFieldLayout in class AbstractFieldLayoutManager
Parameters:
project - A project GenericValue
issueTypeId - The IssueType id of the issue.
Returns:
A FieldLayout
See Also:
FieldLayoutManager.getFieldLayout(Issue)

getFieldLayout

public FieldLayout getFieldLayout(org.ofbiz.core.entity.GenericValue project,
                                  String issueTypeId)
Specified by:
getFieldLayout in interface FieldLayoutManager
Specified by:
getFieldLayout in class AbstractFieldLayoutManager
Parameters:
project - the Project
issueTypeId - The IssueType id of the issue.
Returns:
A FieldLayout

getFieldLayoutSchemes

public List<FieldLayoutScheme> getFieldLayoutSchemes()
Description copied from interface: FieldLayoutManager
Retries Field Configuration Schemes. These are used to link field configurations to projects. NOTE: This is an enterprise ONLY feature.

Specified by:
getFieldLayoutSchemes in interface FieldLayoutManager
Specified by:
getFieldLayoutSchemes in class AbstractFieldLayoutManager
Returns:
A list of FieldLayoutSchemes.

getRelatedProjects

public Collection<org.ofbiz.core.entity.GenericValue> getRelatedProjects(FieldLayout fieldLayout)
Description copied from interface: FieldLayoutManager
Finds all projects that use the given FieldLayout (via the configured FieldConfigurationScheme).

NOTE: In the case of Standard & Professional, this simply returns ALL projects, as the only fieldlayout is the default field layout.

Specified by:
getRelatedProjects in interface FieldLayoutManager
Specified by:
getRelatedProjects in class AbstractFieldLayoutManager
Parameters:
fieldLayout - The FieldLayout.
Returns:
The set of Projects that use the given FieldLayout.

getEditableFieldLayouts

public List<EditableFieldLayout> getEditableFieldLayouts()
Description copied from interface: FieldLayoutManager
Retrieves editable (see EditableFieldLayout versions of the field layouts. Note: For standard edition this simply returns an editable version of the default field layout. (see EditableDefaultFieldLayout)

Specified by:
getEditableFieldLayouts in interface FieldLayoutManager
Specified by:
getEditableFieldLayouts in class AbstractFieldLayoutManager
Returns:
A list of EditableFieldLayout and EditableDefaultFieldLayout

getEditableFieldLayout

public EditableFieldLayout getEditableFieldLayout(Long id)
Description copied from interface: FieldLayoutManager
Returns an EditableFieldLayout for the id supplied. NOTE: This is an enterprise ONLY feature.

Specified by:
getEditableFieldLayout in interface FieldLayoutManager
Specified by:
getEditableFieldLayout in class AbstractFieldLayoutManager
Parameters:
id - If the id is NULL, the default layout is returned.
Returns:
An EditableFieldLayout

updateFieldLayoutScheme

public void updateFieldLayoutScheme(FieldLayoutScheme fieldLayoutScheme)
Description copied from interface: FieldLayoutManager
Persists the FieldLayoutScheme supplied. NOTE: This is an enterprise ONLY feature.

Specified by:
updateFieldLayoutScheme in interface FieldLayoutManager
Specified by:
updateFieldLayoutScheme in class AbstractFieldLayoutManager
Parameters:
fieldLayoutScheme - The FieldLayoutScheme

deleteFieldLayoutScheme

public void deleteFieldLayoutScheme(FieldLayoutScheme fieldLayoutScheme)
Description copied from interface: FieldLayoutManager
Removes the FieldLayoutScheme supplied. NOTE: This is an enterprise ONLY feature.

Specified by:
deleteFieldLayoutScheme in interface FieldLayoutManager
Specified by:
deleteFieldLayoutScheme in class AbstractFieldLayoutManager
Parameters:
fieldLayoutScheme - The FieldLayoutScheme

deleteFieldLayout

public void deleteFieldLayout(FieldLayout fieldLayout)
Description copied from interface: FieldLayoutManager
Deletes a custom FieldLayout NOTE: This is an enterprise ONLY feature.

Specified by:
deleteFieldLayout in interface FieldLayoutManager
Specified by:
deleteFieldLayout in class AbstractFieldLayoutManager
Parameters:
fieldLayout - The FieldLayout

getFieldLayoutSchemeEntities

public Collection<FieldLayoutSchemeEntity> getFieldLayoutSchemeEntities(FieldLayoutScheme fieldLayoutScheme)
Description copied from interface: FieldLayoutManager
Returns a collection of FieldLayoutSchemeEntitys. These are used to record mappings from IssueType -> FieldLayout for the FieldLayoutScheme passed in. NOTE: This is an enterprise ONLY feature.

Specified by:
getFieldLayoutSchemeEntities in interface FieldLayoutManager
Specified by:
getFieldLayoutSchemeEntities in class AbstractFieldLayoutManager
Parameters:
fieldLayoutScheme - The FieldLayoutScheme
Returns:
A collection of FieldLayoutSchemeEntitys.

createFieldLayoutSchemeEntity

public void createFieldLayoutSchemeEntity(FieldLayoutSchemeEntity fieldLayoutSchemeEntity)
Description copied from interface: FieldLayoutManager
Persists a new FieldLayoutSchemeEntity for a particular FieldLayoutScheme. The appropriate scheme is retrieved using FieldLayoutSchemeEntity.getFieldLayoutScheme() NOTE: This is an enterprise ONLY feature.

Specified by:
createFieldLayoutSchemeEntity in interface FieldLayoutManager
Specified by:
createFieldLayoutSchemeEntity in class AbstractFieldLayoutManager
Parameters:
fieldLayoutSchemeEntity - The FieldLayoutSchemeEntity

updateFieldLayoutSchemeEntity

public void updateFieldLayoutSchemeEntity(FieldLayoutSchemeEntity fieldLayoutSchemeEntity)
Description copied from interface: FieldLayoutManager
Updates a FieldLayoutSchemeEntity. NOTE: This is an enterprise ONLY feature.

Specified by:
updateFieldLayoutSchemeEntity in interface FieldLayoutManager
Specified by:
updateFieldLayoutSchemeEntity in class AbstractFieldLayoutManager
Parameters:
fieldLayoutSchemeEntity - The FieldLayoutSchemeEntity

removeFieldLayoutSchemeEntity

public void removeFieldLayoutSchemeEntity(FieldLayoutSchemeEntity fieldLayoutSchemeEntity)
Description copied from interface: FieldLayoutManager
Removes a FieldLayoutSchemeEntity NOTE: This is an enterprise ONLY feature.

Specified by:
removeFieldLayoutSchemeEntity in interface FieldLayoutManager
Specified by:
removeFieldLayoutSchemeEntity in class AbstractFieldLayoutManager
Parameters:
fieldLayoutSchemeEntity - The FieldLayoutSchemeEntity

removeFieldLayoutScheme

public void removeFieldLayoutScheme(FieldLayoutScheme fieldLayoutScheme)
Description copied from interface: FieldLayoutManager
NOTE: This is an enterprise ONLY feature.

Specified by:
removeFieldLayoutScheme in interface FieldLayoutManager
Specified by:
removeFieldLayoutScheme in class AbstractFieldLayoutManager
Parameters:
fieldLayoutScheme - The FieldLayoutScheme

getFieldConfigurationSchemes

public Collection<FieldConfigurationScheme> getFieldConfigurationSchemes(FieldLayout fieldLayout)
Description copied from interface: FieldLayoutManager
Returns a collection of FieldConfigurationSchemes that include the given FieldLayout.

This is determined by retrieving all FieldLayoutSchemeEntitys with the FieldLayout and calculating a set of FieldConfigurationSchemes using these entities. NOTE: This is an enterprise ONLY feature.

Specified by:
getFieldConfigurationSchemes in interface FieldLayoutManager
Specified by:
getFieldConfigurationSchemes in class AbstractFieldLayoutManager
Parameters:
fieldLayout - The FieldLayout.
Returns:
A collection of FieldConfigurationSchemes

restoreSchemeFieldLayout

public void restoreSchemeFieldLayout(org.ofbiz.core.entity.GenericValue scheme)
Description copied from interface: FieldLayoutManager
Restores the field layout associated with the provided scheme to defaults. Essentially this involves removing all previously configured custom items. NOTE: This is an enterprise ONLY feature.

Specified by:
restoreSchemeFieldLayout in interface FieldLayoutManager
Specified by:
restoreSchemeFieldLayout in class AbstractFieldLayoutManager
Parameters:
scheme - A scheme GenericValue

getProjects

public Collection<org.ofbiz.core.entity.GenericValue> getProjects(FieldConfigurationScheme fieldConfigurationScheme)
Description copied from interface: FieldLayoutManager
Returns all projects that use the given FieldConfigurationScheme. NOTE: This is an enterprise ONLY feature.

Specified by:
getProjects in interface FieldLayoutManager
Specified by:
getProjects in class AbstractFieldLayoutManager
Parameters:
fieldConfigurationScheme - the FieldConfigurationScheme
Returns:
A list of projects that use the given FieldConfigurationScheme.

getProjects

public Collection<org.ofbiz.core.entity.GenericValue> getProjects(FieldLayoutScheme fieldLayoutScheme)
Description copied from interface: FieldLayoutManager
Returns all associated projects for the FieldLayoutScheme supplied. NOTE: This is an enterprise ONLY feature.

Specified by:
getProjects in interface FieldLayoutManager
Specified by:
getProjects in class AbstractFieldLayoutManager
Parameters:
fieldLayoutScheme - the FieldLayoutScheme
Returns:
A list of project GenericValues

createFieldLayoutScheme

public FieldLayoutScheme createFieldLayoutScheme(FieldLayoutScheme fieldLayoutScheme)
Description copied from interface: FieldLayoutManager
Persists a new field Layout scheme (i.e Field Configuration Scheme). NOTE: This is an enterprise ONLY feature.

Specified by:
createFieldLayoutScheme in interface FieldLayoutManager
Specified by:
createFieldLayoutScheme in class AbstractFieldLayoutManager
Parameters:
fieldLayoutScheme - The FieldLayoutScheme to persist.
Returns:
The stored FieldLayoutScheme object

getFieldConfigurationScheme

public FieldConfigurationScheme getFieldConfigurationScheme(Long schemeId)
Description copied from interface: FieldLayoutManager
Retrieves a FieldConfigurationScheme by id NOTE: This is an enterprise ONLY feature.

Specified by:
getFieldConfigurationScheme in interface FieldLayoutManager
Specified by:
getFieldConfigurationScheme in class AbstractFieldLayoutManager
Parameters:
schemeId - FieldConfigurationScheme ID
Returns:
A FieldConfigurationScheme instance

getMutableFieldLayoutScheme

public FieldLayoutScheme getMutableFieldLayoutScheme(Long schemeId)
Description copied from interface: FieldLayoutManager
Retrieves a mutable FieldLayoutScheme by id.

NOTE: This is an enterprise ONLY feature.

This returns a new copy of the object from the DB, and so will incur some performance penalty. Please use FieldLayoutManager.getFieldConfigurationScheme(Long) for access to a cached immutable scheme object.

Specified by:
getMutableFieldLayoutScheme in interface FieldLayoutManager
Specified by:
getMutableFieldLayoutScheme in class AbstractFieldLayoutManager
Parameters:
schemeId - the scheme ID
Returns:
A FieldLayoutScheme instance

fieldConfigurationSchemeExists

public boolean fieldConfigurationSchemeExists(String schemeName)
Description copied from interface: FieldLayoutManager
Checks if a FieldConfigurationScheme with the given name exists.

Specified by:
fieldConfigurationSchemeExists in interface FieldLayoutManager
Specified by:
fieldConfigurationSchemeExists in class AbstractFieldLayoutManager
Parameters:
schemeName - The scheme name
Returns:
true if a FieldConfigurationScheme with the given name exists.

getUniqueFieldLayouts

public Set<FieldLayout> getUniqueFieldLayouts(Project project)
Description copied from interface: FieldLayoutManager
Retrieves all the FieldLayout's for a project.

Specified by:
getUniqueFieldLayouts in interface FieldLayoutManager
Specified by:
getUniqueFieldLayouts in class AbstractFieldLayoutManager
Parameters:
project - a project
Returns:
the unique set of FieldLayout's for the provided project, an empty set if there are none.

getFieldConfigurationScheme

public FieldConfigurationScheme getFieldConfigurationScheme(Project project)
Description copied from interface: FieldLayoutManager
Retrieves the Field Configuration Scheme associated with the supplied project. NOTE: This is an enterprise ONLY feature.

Specified by:
getFieldConfigurationScheme in interface FieldLayoutManager
Specified by:
getFieldConfigurationScheme in class AbstractFieldLayoutManager
Parameters:
project - A project GenericValue
Returns:
A FieldConfigurationScheme or null if none exists.

getFieldConfigurationScheme

public FieldConfigurationScheme getFieldConfigurationScheme(org.ofbiz.core.entity.GenericValue project)
Description copied from interface: FieldLayoutManager
Retrieves the Field Configuration Scheme associated with the supplied project. NOTE: This is an enterprise ONLY feature.

Specified by:
getFieldConfigurationScheme in interface FieldLayoutManager
Specified by:
getFieldConfigurationScheme in class AbstractFieldLayoutManager
Parameters:
project - A project GenericValue
Returns:
A FieldConfigurationScheme or null if none exists.

addSchemeAssociation

public void addSchemeAssociation(org.ofbiz.core.entity.GenericValue project,
                                 Long fieldLayoutSchemeId)
Description copied from interface: FieldLayoutManager
Associates a FieldLayoutScheme to the project supplied. NOTE: This is an enterprise ONLY feature.

Specified by:
addSchemeAssociation in interface FieldLayoutManager
Specified by:
addSchemeAssociation in class AbstractFieldLayoutManager
Parameters:
project - A project GenericValue
fieldLayoutSchemeId - ID of the FieldLayoutScheme

removeSchemeAssociation

public void removeSchemeAssociation(org.ofbiz.core.entity.GenericValue project,
                                    Long fieldLayoutSchemeId)
Description copied from interface: FieldLayoutManager
Removes an association between a particular project and field configuration scheme. NOTE: This is an enterprise ONLY feature.

Specified by:
removeSchemeAssociation in interface FieldLayoutManager
Specified by:
removeSchemeAssociation in class AbstractFieldLayoutManager
Parameters:
project - A project GenericValue
fieldLayoutSchemeId - The fieldLayoutScheme ID

getFieldLayout

public FieldLayout getFieldLayout(Long id)
Description copied from interface: FieldLayoutManager
Used to retrieve FieldLayout information when rendering a screen given the id of the field layout. If the ID is null, the default layout is returned.

Specified by:
getFieldLayout in interface FieldLayoutManager
Specified by:
getFieldLayout in class AbstractFieldLayoutManager
Parameters:
id - The FieldLayout ID.
Returns:
The FieldLayout

refresh

public void refresh()
Description copied from interface: FieldLayoutManager
Clears all local caches.

Specified by:
refresh in interface FieldLayoutManager
Overrides:
refresh in class AbstractFieldLayoutManager

clearCaches

protected void clearCaches()

isFieldLayoutSchemesVisiblyEquivalent

public boolean isFieldLayoutSchemesVisiblyEquivalent(Long fieldConfigurationSchemeId1,
                                                     Long fieldConfigurationSchemeId2)
Description copied from interface: FieldLayoutManager
Will determine whether or not two FieldLayoutSchemes are "visibly equivalent".

This can be useful for determining if swapping one field layout scheme for another in a project will have any affect on the visibility of fields in the project's issues. For instance, this will let us know if we need to re-index or not.

Since a scheme is a mapping from issue types to field layouts, two schemes are visibly equivalent if:

It is possible that one scheme may have a mapping for an issue type, but the other does not. In this case, equivalence is compared between the issue type specific one and the default field layout.

Note that equivalence is reflexive - all the associations in scheme1 must have equivalent associations in scheme2, and vice versa.

Specified by:
isFieldLayoutSchemesVisiblyEquivalent in interface FieldLayoutManager
Specified by:
isFieldLayoutSchemesVisiblyEquivalent in class AbstractFieldLayoutManager
Parameters:
fieldConfigurationSchemeId1 - the first scheme; can use null for the system default scheme
fieldConfigurationSchemeId2 - the second scheme; can use null for the system default scheme
Returns:
the result of the equivalence comparison

isFieldLayoutsVisiblyEquivalent

public boolean isFieldLayoutsVisiblyEquivalent(Long fieldLayoutId1,
                                               Long fieldLayoutId2)
Description copied from interface: FieldLayoutManager
Will determine whether or not two FieldLayouts are "visibly equivalent".

This can be useful for determining if swapping one field layout for another in a project will have any affect on the visibility of fields in the project's issues. For instance, this will let us know if we need to re-index or not.

Two field layouts are visibly equivalent if:

Note that equivalence is reflexive: layout1 == layout2 implies layout2 == layout1.

Specified by:
isFieldLayoutsVisiblyEquivalent in interface FieldLayoutManager
Specified by:
isFieldLayoutsVisiblyEquivalent in class AbstractFieldLayoutManager
Parameters:
fieldLayoutId1 - the first layout id; null signifies the default field layout in the system
fieldLayoutId2 - the second layout id; null signifies the default field layout in the system
Returns:
the result of the equivalence comparison

getAllRelevantIssueTypeIds

protected List<String> getAllRelevantIssueTypeIds()


Copyright © 2002-2011 Atlassian. All Rights Reserved.