com.atlassian.jira.issue.fields.layout.column
Class DefaultColumnLayoutManager

java.lang.Object
  extended by com.atlassian.jira.issue.fields.layout.column.AbstractColumnLayoutManager
      extended by com.atlassian.jira.issue.fields.layout.column.DefaultColumnLayoutManager
All Implemented Interfaces:
Startable, ColumnLayoutManager

public class DefaultColumnLayoutManager
extends AbstractColumnLayoutManager
implements Startable


Field Summary
 
Fields inherited from class com.atlassian.jira.issue.fields.layout.column.AbstractColumnLayoutManager
DEFAULT_CACHE_SIZE
 
Constructor Summary
DefaultColumnLayoutManager(FieldManager fieldManager, com.atlassian.event.api.EventPublisher eventPublisher)
           
 
Method Summary
 ColumnLayout getColumnLayout(com.atlassian.crowd.embedded.api.User remoteUser, SearchRequest searchRequest)
          Get the columns layout for a searchRequest, if the searchRequest does not have one the user's columns are returned.
protected  List getColumnLayoutItems(String username, SearchRequest searchRequest, Set availableFields)
           
 EditableSearchRequestColumnLayout getEditableSearchRequestColumnLayout(com.atlassian.crowd.embedded.api.User user, SearchRequest searchRequest)
          Get an editable column layout for the searchRequest, returns null if it does not have one
protected  Map getSearchRequestColumnLayoutCache()
           
 boolean hasColumnLayout(SearchRequest searchRequest)
           
 void onClearCache(ClearCacheEvent event)
           
 void refresh()
           
 void restoreSearchRequestColumnLayout(SearchRequest searchRequest)
           
 void start()
          This method wil be called after the plugin system is fully initialised and all components added to the dependency injection framework.
 void storeEditableSearchRequestColumnLayout(EditableSearchRequestColumnLayout editableSearchRequestColumnLayout)
          Writes the default column layout to permanent storage
 
Methods inherited from class com.atlassian.jira.issue.fields.layout.column.AbstractColumnLayoutManager
getColumnLayout, getColumnLayoutItems, getDefaultColumnLayout, getDefaultColumnLayout, getEditableDefaultColumnLayout, getEditableUserColumnLayout, getFieldManager, hasColumnLayout, hasDefaultColumnLayout, removeColumnLayoutItems, restoreDefaultColumnLayout, restoreUserColumnLayout, storeColumnLayoutItems, storeEditableDefaultColumnLayout, storeEditableUserColumnLayout, verifyColumnLayoutItems
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultColumnLayoutManager

public DefaultColumnLayoutManager(FieldManager fieldManager,
                                  com.atlassian.event.api.EventPublisher eventPublisher)
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
Throws:
Exception - Allows implementations to throw an Exception.

onClearCache

@EventListener
public void onClearCache(ClearCacheEvent event)

getColumnLayout

public ColumnLayout getColumnLayout(com.atlassian.crowd.embedded.api.User remoteUser,
                                    SearchRequest searchRequest)
                             throws ColumnLayoutStorageException
Description copied from interface: ColumnLayoutManager
Get the columns layout for a searchRequest, if the searchRequest does not have one the user's columns are returned. If the user does nto have one the default is returned

Specified by:
getColumnLayout in interface ColumnLayoutManager
Overrides:
getColumnLayout in class AbstractColumnLayoutManager
Returns:
Immutable ColumnLayout to be used when displaying
Throws:
ColumnLayoutStorageException

getColumnLayoutItems

protected List getColumnLayoutItems(String username,
                                    SearchRequest searchRequest,
                                    Set availableFields)
                             throws ColumnLayoutStorageException
Throws:
ColumnLayoutStorageException

getEditableSearchRequestColumnLayout

public EditableSearchRequestColumnLayout getEditableSearchRequestColumnLayout(com.atlassian.crowd.embedded.api.User user,
                                                                              SearchRequest searchRequest)
                                                                       throws ColumnLayoutStorageException
Description copied from interface: ColumnLayoutManager
Get an editable column layout for the searchRequest, returns null if it does not have one

Specified by:
getEditableSearchRequestColumnLayout in interface ColumnLayoutManager
Specified by:
getEditableSearchRequestColumnLayout in class AbstractColumnLayoutManager
Returns:
EditableColumnLayout if there is one for the searchRequest otherwise return a new one generated from the default
Throws:
ColumnLayoutStorageException

storeEditableSearchRequestColumnLayout

public void storeEditableSearchRequestColumnLayout(EditableSearchRequestColumnLayout editableSearchRequestColumnLayout)
                                            throws ColumnLayoutStorageException
Description copied from interface: ColumnLayoutManager
Writes the default column layout to permanent storage

Specified by:
storeEditableSearchRequestColumnLayout in interface ColumnLayoutManager
Specified by:
storeEditableSearchRequestColumnLayout in class AbstractColumnLayoutManager
Throws:
ColumnLayoutStorageException

restoreSearchRequestColumnLayout

public void restoreSearchRequestColumnLayout(SearchRequest searchRequest)
                                      throws ColumnLayoutStorageException
Specified by:
restoreSearchRequestColumnLayout in interface ColumnLayoutManager
Specified by:
restoreSearchRequestColumnLayout in class AbstractColumnLayoutManager
Throws:
ColumnLayoutStorageException

hasColumnLayout

public boolean hasColumnLayout(SearchRequest searchRequest)
                        throws ColumnLayoutStorageException
Specified by:
hasColumnLayout in interface ColumnLayoutManager
Specified by:
hasColumnLayout in class AbstractColumnLayoutManager
Throws:
ColumnLayoutStorageException

refresh

public void refresh()
Specified by:
refresh in interface ColumnLayoutManager
Overrides:
refresh in class AbstractColumnLayoutManager

getSearchRequestColumnLayoutCache

protected Map getSearchRequestColumnLayoutCache()


Copyright © 2002-2012 Atlassian. All Rights Reserved.