org.kuali.rice.krad.uif.container
Class CollectionGroup

java.lang.Object
  extended by org.kuali.rice.krad.datadictionary.DictionaryBeanBase
      extended by org.kuali.rice.krad.datadictionary.uif.UifDictionaryBeanBase
          extended by org.kuali.rice.krad.uif.component.ComponentBase
              extended by org.kuali.rice.krad.uif.container.ContainerBase
                  extended by org.kuali.rice.krad.uif.container.Group
                      extended by org.kuali.rice.krad.uif.container.CollectionGroup
All Implemented Interfaces:
Serializable, Cloneable, DictionaryBean, UifDictionaryBean, Component, DataBinding, ScriptEventSupport, Container, Helpable, org.springframework.core.Ordered

public class CollectionGroup
extends Group
implements DataBinding

Group that holds a collection of objects and configuration for presenting the collection in the UI. Supports functionality such as add line, line actions, and nested collections.

Note the standard header/footer can be used to give a header to the collection as a whole, or to provide actions that apply to the entire collection

For binding purposes the binding path of each row field is indexed. The name property inherited from ComponentBase is used as the collection name. The collectionObjectClass property is used to lookup attributes from the data dictionary.

Author:
Kuali Rice Team (rice.collab@kuali.org)
See Also:
Serialized Form

Field Summary
 
Fields inherited from interface org.kuali.rice.krad.uif.component.Ordered
INITIAL_ORDER_VALUE
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
CollectionGroup()
           
 
Method Summary
 void completeValidation(ValidationTrace tracer)
          Validates different requirements of component compiling a series of reports detailing information on errors found in the component.
 CollectionFilter getActiveCollectionFilter()
          Collection filter instance for filtering the collection data when the showInactive flag is set to false
 Action getAddBlankLineAction()
          The add blank line Action field rendered when renderAddBlankLineButton is true
 String getAddItemCssClass()
          The css style class that will be added on the add item group or row
 String getAddLabel()
          Convenience getter for the add line label field text.
 List<Action> getAddLineActions()
          Action fields that should be rendered for the add line.
 BindingInfo getAddLineBindingInfo()
          BindingInfo instance for the add line property used to determine the full binding path.
 List<? extends Component> getAddLineItems()
          List of Component instances that should be rendered for the collection add line (if enabled).
 Message getAddLineLabel()
          Message instance for the add line label
 String getAddLinePlacement()
          Indicates the add line placement
 String getAddLinePropertyName()
          Name of the property that contains an instance for the add line.
 Action getAddViaLightBoxAction()
          The Action that will be displayed that will open the add line group in a lightbox
 BindingInfo getBindingInfo()
          Determines the binding path for the collection.
 CollectionGroupBuilder getCollectionGroupBuilder()
          CollectionGroupBuilder instance that will build the components dynamically for the collection instance
 CollectionGroupSecurity getCollectionGroupSecurity()
          Collection Security object that indicates what authorization (permissions) exist for the collection
 QuickFinder getCollectionLookup()
          Instance of the QuickFinder widget that configures a multi-value lookup for the collection
 Class<?> getCollectionObjectClass()
          Object class the collection maintains.
 List<Component> getComponentPrototypes()
          List of components that are maintained by the component as prototypes for creating other component instances
protected  Class<? extends ComponentSecurity> getComponentSecurityClass()
          Returns the security class that is associated with the component (used for initialization and validation)
 List<Component> getComponentsForLifecycle()
          List of components that are contained within the component and should be sent through the lifecycle
 int getDisplayCollectionSize()
          The number of records to display for a collection
 List<CollectionFilter> getFilters()
          List of CollectionFilter instances that should be invoked to filter the collection before displaying
 List<Action> getLineActions()
          Action fields that should be rendered for each collection line.
 String getLineSelectPropertyName()
          When isIncludeLineSelectionField() is true, gives the name of the property the select field should bind to
 String getNewItemsCssClass()
          The css style class that will be added on new items
 String getPropertyName()
          Name of the property (relative to the parent object) the component binds to
 List<CollectionGroup> getSubCollections()
          List of CollectionGroup instances that are sub-collections of the collection represented by this collection group
 String getSubCollectionSuffix()
          Suffix for IDs that identifies the collection line the sub-collection belongs to
 void initializeNewCollectionLine(View view, Object model, CollectionGroup collectionGroup, boolean clearExistingLine)
          New collection lines are handled in the framework by maintaining a map on the form.
 boolean isAddViaLightBox()
          Indicates that a add action should be rendered and that the add group be displayed in a lightbox
 boolean isHighlightAddItem()
          Indicates whether the add item group or row should be styled with the #addItemCssClass
 boolean isHighlightNewItems()
          Indicates whether new items should be styled with the #newItemsCssClass
 boolean isIncludeLineSelectionField()
          Indicates whether lines of the collection group should be selected by rendering a field for each line that will allow selection
 boolean isRenderAddBlankLineButton()
          Indicates that a button will be rendered that allows the user to add blank lines to the collection
 boolean isRenderAddLine()
          Indicates whether an add line should be rendered for the collection
 boolean isRenderInactiveToggleButton()
           
 boolean isRenderLineActions()
          Indicates whether the action column for the collection should be rendered
 boolean isRenderSaveLineActions()
          Indicates whether the save line actions should be rendered
 boolean isShowInactiveLines()
          Indicates whether inactive collections lines should be displayed
 void performApplyModel(View view, Object model, Component parent)
          Calls the configured CollectionGroupBuilder to build the necessary components based on the collection data
 void performInitialization(View view, Object model)
          The following actions are performed: Set fieldBindModelPath to the collection model path (since the fields have to belong to the same model as the collection) Set defaults for binding Default add line field list to groups items list Sets default active collection filter if not set Sets the dictionary entry (if blank) on each of the items to the collection class
protected  void pushCollectionGroupToReference()
          Sets a reference in the context map for all nested components to the collection group instance, and sets name as parameter for an action fields in the group
 void setActiveCollectionFilter(CollectionFilter activeCollectionFilter)
          Setter for the collection filter to use for filter inactive records from the collection
 void setAddBlankLineAction(Action addBlankLineAction)
          Setter for the add blank line Action field
 void setAddItemCssClass(String addItemCssClass)
          Setter for the add item css style class
 void setAddLabel(String addLabelText)
          Setter for the add line label text
 void setAddLineActions(List<Action> addLineActions)
          Setter for the add line action fields
 void setAddLineBindingInfo(BindingInfo addLineBindingInfo)
          Setter for the add line binding info
 void setAddLineItems(List<? extends Component> addLineItems)
          Setter for the add line field list
 void setAddLineLabel(Message addLineLabel)
          Setter for the Message instance for the add line label
 void setAddLinePlacement(String addLinePlacement)
          Setter for the add line placement
 void setAddLinePropertyName(String addLinePropertyName)
          Setter for the add line property name
 void setAddViaLightBox(boolean addViaLightBox)
          Setter for the flag to indicate that add groups should be displayed in a light box
 void setAddViaLightBoxAction(Action addViaLightBoxAction)
          Setter for the add line via lightbox Action
 void setBindingInfo(BindingInfo bindingInfo)
          Setter for the binding info instance
 void setCollectionGroupBuilder(CollectionGroupBuilder collectionGroupBuilder)
          Setter for the collection group building instance
 void setCollectionLookup(QuickFinder collectionLookup)
          Setter for the collection lookup quickfinder instance
 void setCollectionObjectClass(Class<?> collectionObjectClass)
          Setter for the collection object class
 void setComponentSecurity(ComponentSecurity componentSecurity)
          Override to assert a CollectionGroupSecurity instance is set
 void setDisplayCollectionSize(int displayCollectionSize)
          Setter for the display collection size
 void setFilters(List<CollectionFilter> filters)
          Setter for the List of collection filters for which the collection will be filtered against
 void setHighlightAddItem(boolean highlightAddItem)
          Setter for the flag that allows for different styling of the add item group or row
 void setHighlightNewItems(boolean highlightNewItems)
          Setter for the flag that allows for different styling of new items
 void setIncludeLineSelectionField(boolean includeLineSelectionField)
          Setter for the render selected field indicator
 void setLineActions(List<Action> lineActions)
          Setter for the line action fields list
 void setLineSelectPropertyName(String lineSelectPropertyName)
          Setter for the property name that will bind to the select field
 void setNewItemsCssClass(String newItemsCssClass)
          Setter for the new items css style class
 void setPropertyName(String propertyName)
          Setter for the collections property name
 void setRenderAddBlankLineButton(boolean renderAddBlankLineButton)
          Setter for the flag indicating that the add blank line button must be rendered
 void setRenderAddLine(boolean renderAddLine)
          Setter for the render add line indicator
 void setRenderInactiveToggleButton(boolean renderInactiveToggleButton)
           
 void setRenderLineActions(boolean renderLineActions)
          Setter for the render line actions indicator
 void setRenderSaveLineActions(boolean renderSaveLineActions)
          Setter for the flag indicating whether the save actions should be rendered
 void setShowInactiveLines(boolean showInactiveLines)
          Setter for the show inactive indicator
 void setSubCollections(List<CollectionGroup> subCollections)
          Setter for the sub collection list
 void setSubCollectionSuffix(String subCollectionSuffix)
          Setter for the sub-collection suffix (used by framework, should not be set in configuration)
 
Methods inherited from class org.kuali.rice.krad.uif.container.Group
getComponentTypeName, getDisclosure, getFieldBindByNamePrefix, getFieldBindingObjectPath, getItems, getScrollpane, getSupportedComponents, setDisclosure, setFieldBindByNamePrefix, setFieldBindingObjectPath, setItems, setScrollpane
 
Methods inherited from class org.kuali.rice.krad.uif.container.ContainerBase
getDefaultItemPosition, getFooter, getHeader, getHeaderText, getHelp, getHelpTitle, getInstructionalMessage, getInstructionalText, getLayoutManager, getValidationMessages, performFinalize, setDefaultItemPosition, setFooter, setHeader, setHeaderText, setHelp, setInstructionalMessage, setInstructionalText, setLayoutManager, setRenderFooter, setRenderHeader, setTooltipOfComponent, setValidationMessages, sortItems
 
Methods inherited from class org.kuali.rice.krad.uif.component.ComponentBase
addCellCssClass, addDataAttribute, addDataAttributeIfNonEmpty, addStyleClass, appendToStyle, clone, copyProperties, getAdditionalComponentsToRefresh, getAdditionalComponentsToRefreshJs, getAdditionalCssClasses, getAlign, getBaseId, getCellCssClasses, getCellStyle, getCellStyleClassesAsString, getCellWidth, getColSpan, getComponentModifiers, getComponentSecurity, getConditionalRefresh, getConditionalRefreshConditionJs, getConditionalRefreshControlNames, getContext, getCssClasses, getDataAttributes, getEventHandlerScript, getFinalizeMethodAdditionalArguments, getFinalizeMethodInvoker, getFinalizeMethodToCall, getId, getMethodToCallOnRefresh, getOnBlurScript, getOnChangeScript, getOnClickScript, getOnCloseScript, getOnDblClickScript, getOnDocumentReadyScript, getOnFocusScript, getOnKeyDownScript, getOnKeyPressScript, getOnKeyUpScript, getOnLoadScript, getOnMouseDownScript, getOnMouseMoveScript, getOnMouseOutScript, getOnMouseOverScript, getOnMouseUpScript, getOnSubmitScript, getOnUnloadScript, getOrder, getPostRenderContent, getPreRenderContent, getProgressiveDisclosureConditionJs, getProgressiveDisclosureControlNames, getProgressiveRender, getPropertyReplacerComponents, getPropertyReplacers, getRefreshTimer, getRefreshWhenChangedPropertyNames, getRenderedHtmlOutput, getRequired, getRowSpan, getSimpleDataAttributes, getStyle, getStyleClassesAsString, getTemplate, getTemplateName, getTemplateOptions, getTemplateOptionsJSString, getTitle, getToolTip, getValign, getWidth, isDisableSessionPersistence, isDisclosedByAction, isForceSessionPersistence, isHidden, isProgressiveRenderAndRefresh, isProgressiveRenderViaAJAX, isReadOnly, isRefreshedByAction, isRender, isResetDataOnRefresh, isSelfRendered, isSkipInTabOrder, isUseAjaxCallForContent, pushAllToContext, pushObjectToContext, pushToPropertyReplacerContext, setAdditionalComponentsToRefresh, setAdditionalCssClasses, setAlign, setBaseId, setCellCssClasses, setCellStyle, setCellWidth, setColSpan, setComponentModifiers, setConditionalRefresh, setContext, setCssClasses, setDataAttributes, setDisableSessionPersistence, setDisclosedByAction, setFinalizeMethodAdditionalArguments, setFinalizeMethodInvoker, setFinalizeMethodToCall, setForceSessionPersistence, setHidden, setId, setMethodToCallOnRefresh, setOnBlurScript, setOnChangeScript, setOnClickScript, setOnCloseScript, setOnDblClickScript, setOnDocumentReadyScript, setOnFocusScript, setOnKeyDownScript, setOnKeyPressScript, setOnKeyUpScript, setOnLoadScript, setOnMouseDownScript, setOnMouseMoveScript, setOnMouseOutScript, setOnMouseOverScript, setOnMouseUpScript, setOnSubmitScript, setOnUnloadScript, setOrder, setPostRenderContent, setPreRenderContent, setProgressiveRender, setProgressiveRenderAndRefresh, setProgressiveRenderViaAJAX, setPropertyReplacers, setReadOnly, setRefreshedByAction, setRefreshTimer, setRefreshWhenChangedPropertyNames, setRender, setRenderedHtmlOutput, setRequired, setResetDataOnRefresh, setRowSpan, setSelfRendered, setSkipInTabOrder, setStyle, setTemplate, setTemplateName, setTemplateOptions, setTemplateOptionsJSString, setTitle, setToolTip, setUseAjaxCallForContent, setValign, setWidth
 
Methods inherited from class org.kuali.rice.krad.datadictionary.uif.UifDictionaryBeanBase
getExpressionGraph, getPropertyExpression, getPropertyExpressions, getRefreshExpressionGraph, setExpressionGraph, setPropertyExpressions, setRefreshExpressionGraph
 
Methods inherited from class org.kuali.rice.krad.datadictionary.DictionaryBeanBase
getComponentCode, getNamespaceCode, setComponentCode, setNamespaceCode
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.kuali.rice.krad.uif.component.Component
addCellCssClass, addDataAttribute, addStyleClass, appendToStyle, clone, getAdditionalComponentsToRefresh, getAdditionalComponentsToRefreshJs, getAdditionalCssClasses, getAlign, getBaseId, getCellCssClasses, getCellStyle, getCellWidth, getColSpan, getComponentModifiers, getComponentSecurity, getConditionalRefresh, getConditionalRefreshConditionJs, getConditionalRefreshControlNames, getContext, getCssClasses, getDataAttributes, getEventHandlerScript, getFinalizeMethodAdditionalArguments, getFinalizeMethodInvoker, getFinalizeMethodToCall, getId, getOrder, getPostRenderContent, getPreRenderContent, getProgressiveDisclosureConditionJs, getProgressiveDisclosureControlNames, getProgressiveRender, getPropertyReplacerComponents, getPropertyReplacers, getRefreshTimer, getRefreshWhenChangedPropertyNames, getRenderedHtmlOutput, getRequired, getRowSpan, getSimpleDataAttributes, getStyle, getTemplate, getTemplateName, getTemplateOptions, getTemplateOptionsJSString, getTitle, getToolTip, getValign, getWidth, isDisableSessionPersistence, isDisclosedByAction, isForceSessionPersistence, isHidden, isProgressiveRenderAndRefresh, isProgressiveRenderViaAJAX, isReadOnly, isRefreshedByAction, isRender, isResetDataOnRefresh, isSelfRendered, isUseAjaxCallForContent, pushAllToContext, pushObjectToContext, setAdditionalComponentsToRefresh, setAdditionalCssClasses, setAlign, setBaseId, setCellCssClasses, setCellStyle, setCellWidth, setColSpan, setComponentModifiers, setConditionalRefresh, setContext, setCssClasses, setDataAttributes, setDisableSessionPersistence, setDisclosedByAction, setForceSessionPersistence, setHidden, setId, setOrder, setPostRenderContent, setPreRenderContent, setProgressiveRender, setProgressiveRenderAndRefresh, setProgressiveRenderViaAJAX, setPropertyReplacers, setReadOnly, setRefreshedByAction, setRefreshTimer, setRefreshWhenChangedPropertyNames, setRender, setRenderedHtmlOutput, setRequired, setResetDataOnRefresh, setRowSpan, setSelfRendered, setStyle, setTemplate, setTemplateName, setTemplateOptions, setTemplateOptionsJSString, setTitle, setToolTip, setUseAjaxCallForContent, setValign, setWidth
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.uif.UifDictionaryBean
getExpressionGraph, getPropertyExpression, getPropertyExpressions, getRefreshExpressionGraph, setExpressionGraph, setPropertyExpressions, setRefreshExpressionGraph
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.DictionaryBean
getComponentCode, getNamespaceCode
 
Methods inherited from interface org.kuali.rice.krad.uif.component.ScriptEventSupport
getOnBlurScript, getOnChangeScript, getOnClickScript, getOnCloseScript, getOnDblClickScript, getOnDocumentReadyScript, getOnFocusScript, getOnKeyDownScript, getOnKeyPressScript, getOnKeyUpScript, getOnLoadScript, getOnMouseDownScript, getOnMouseMoveScript, getOnMouseOutScript, getOnMouseOverScript, getOnMouseUpScript, getOnSubmitScript, getOnUnloadScript, setOnBlurScript, setOnChangeScript, setOnClickScript, setOnCloseScript, setOnDblClickScript, setOnDocumentReadyScript, setOnFocusScript, setOnKeyDownScript, setOnKeyPressScript, setOnKeyUpScript, setOnLoadScript, setOnMouseDownScript, setOnMouseMoveScript, setOnMouseOutScript, setOnMouseOverScript, setOnMouseUpScript, setOnSubmitScript, setOnUnloadScript
 

Constructor Detail

CollectionGroup

public CollectionGroup()
Method Detail

performInitialization

public void performInitialization(View view,
                                  Object model)
The following actions are performed:

Specified by:
performInitialization in interface Component
Overrides:
performInitialization in class Group
Parameters:
view - - view instance in which the component belongs
model - - object instance containing the view data
See Also:
ComponentBase.performInitialization(org.kuali.rice.krad.uif.view.View, java.lang.Object)

performApplyModel

public void performApplyModel(View view,
                              Object model,
                              Component parent)
Calls the configured CollectionGroupBuilder to build the necessary components based on the collection data

Specified by:
performApplyModel in interface Component
Overrides:
performApplyModel in class ContainerBase
Parameters:
view - - view instance to which the component belongs
model - - Top level object containing the data (could be the form or a top level business object, dto)
See Also:
ContainerBase.performApplyModel(org.kuali.rice.krad.uif.view.View, java.lang.Object, org.kuali.rice.krad.uif.component.Component)

pushCollectionGroupToReference

protected void pushCollectionGroupToReference()
Sets a reference in the context map for all nested components to the collection group instance, and sets name as parameter for an action fields in the group


initializeNewCollectionLine

public void initializeNewCollectionLine(View view,
                                        Object model,
                                        CollectionGroup collectionGroup,
                                        boolean clearExistingLine)
New collection lines are handled in the framework by maintaining a map on the form. The map contains as a key the collection name, and as value an instance of the collection type. An entry is created here for the collection represented by the CollectionGroup if an instance is not available (clearExistingLine will force a new instance). The given model must be a subclass of UifFormBase in order to find the Map.

Parameters:
model - Model instance that contains the new collection lines Map
clearExistingLine - boolean that indicates whether the line should be set to a new instance if it already exists

getComponentsForLifecycle

public List<Component> getComponentsForLifecycle()
Description copied from interface: Component
List of components that are contained within the component and should be sent through the lifecycle

Used by ViewHelperService for the various lifecycle callbacks

Specified by:
getComponentsForLifecycle in interface Component
Overrides:
getComponentsForLifecycle in class Group
Returns:
List child components
See Also:
ContainerBase.getComponentsForLifecycle()

getComponentPrototypes

public List<Component> getComponentPrototypes()
Description copied from interface: Component
List of components that are maintained by the component as prototypes for creating other component instances

Prototypes are held for configuring how a component should be created during the lifecycle. An example of this are the fields in a collection group that are created for each collection record. They only participate in the initialize phase.

Specified by:
getComponentPrototypes in interface Component
Overrides:
getComponentPrototypes in class ContainerBase
Returns:
List child component prototypes
See Also:
Component.getComponentPrototypes()

getCollectionObjectClass

public Class<?> getCollectionObjectClass()
Object class the collection maintains. Used to get dictionary information in addition to creating new instances for the collection when necessary

Returns:
collection object class

setCollectionObjectClass

public void setCollectionObjectClass(Class<?> collectionObjectClass)
Setter for the collection object class

Parameters:
collectionObjectClass -

getPropertyName

public String getPropertyName()
Description copied from interface: DataBinding
Name of the property (relative to the parent object) the component binds to

Specified by:
getPropertyName in interface DataBinding
Returns:
String property name
See Also:
DataBinding.getPropertyName()

setPropertyName

public void setPropertyName(String propertyName)
Setter for the collections property name

Parameters:
propertyName -

getBindingInfo

public BindingInfo getBindingInfo()
Determines the binding path for the collection. Used to get the collection value from the model in addition to setting the binding path for the collection attributes

Specified by:
getBindingInfo in interface DataBinding
Returns:
BindingInfo
See Also:
DataBinding.getBindingInfo()

setBindingInfo

public void setBindingInfo(BindingInfo bindingInfo)
Setter for the binding info instance

Specified by:
setBindingInfo in interface DataBinding
Parameters:
bindingInfo -

getLineActions

public List<Action> getLineActions()
Action fields that should be rendered for each collection line. Example line action is the delete action

Returns:
line action fields

setLineActions

public void setLineActions(List<Action> lineActions)
Setter for the line action fields list

Parameters:
lineActions -

isRenderLineActions

public boolean isRenderLineActions()
Indicates whether the action column for the collection should be rendered

Returns:
true if the actions should be rendered, false if not
See Also:
getLineActions()

setRenderLineActions

public void setRenderLineActions(boolean renderLineActions)
Setter for the render line actions indicator

Parameters:
renderLineActions -

isRenderAddLine

public boolean isRenderAddLine()
Indicates whether an add line should be rendered for the collection

Returns:
true if add line should be rendered, false if it should not be

setRenderAddLine

public void setRenderAddLine(boolean renderAddLine)
Setter for the render add line indicator

Parameters:
renderAddLine -

getAddLabel

public String getAddLabel()
Convenience getter for the add line label field text. The text is used to label the add line when rendered and its placement depends on the LayoutManager

For the TableLayoutManager the label appears in the sequence column to the left of the add line fields. For the StackedLayoutManager the label is placed into the group header for the line.

Returns:
add line label

setAddLabel

public void setAddLabel(String addLabelText)
Setter for the add line label text

Parameters:
addLabelText -

getAddLineLabel

public Message getAddLineLabel()
Message instance for the add line label

Returns:
add line Message
See Also:
getAddLabel()

setAddLineLabel

public void setAddLineLabel(Message addLineLabel)
Setter for the Message instance for the add line label

Parameters:
addLineLabel -
See Also:
getAddLabel()

getAddLinePropertyName

public String getAddLinePropertyName()
Name of the property that contains an instance for the add line. If set this is used with the binding info to create the path to the add line. Can be left blank in which case the framework will manage the add line instance in a generic map.

Returns:
add line property name

setAddLinePropertyName

public void setAddLinePropertyName(String addLinePropertyName)
Setter for the add line property name

Parameters:
addLinePropertyName -

getAddLineBindingInfo

public BindingInfo getAddLineBindingInfo()
BindingInfo instance for the add line property used to determine the full binding path. If add line name given getAddLabel() then it is set as the binding name on the binding info. Add line label and binding info are not required, in which case the framework will manage the new add line instances through a generic map (model must extend UifFormBase)

Returns:
BindingInfo add line binding info

setAddLineBindingInfo

public void setAddLineBindingInfo(BindingInfo addLineBindingInfo)
Setter for the add line binding info

Parameters:
addLineBindingInfo -

getAddLineItems

public List<? extends Component> getAddLineItems()
List of Component instances that should be rendered for the collection add line (if enabled). If not set, the default group's items list will be used

Returns:
add line field list
See Also:
performInitialization(org.kuali.rice.krad.uif.view.View, java.lang.Object)

setAddLineItems

public void setAddLineItems(List<? extends Component> addLineItems)
Setter for the add line field list

Parameters:
addLineItems -

getAddLineActions

public List<Action> getAddLineActions()
Action fields that should be rendered for the add line. This is generally the add action (button) but can be configured to contain additional actions

Returns:
add line action fields

setAddLineActions

public void setAddLineActions(List<Action> addLineActions)
Setter for the add line action fields

Parameters:
addLineActions -

isIncludeLineSelectionField

public boolean isIncludeLineSelectionField()
Indicates whether lines of the collection group should be selected by rendering a field for each line that will allow selection

For example, having the select field enabled could allow selecting multiple lines from a search to return (multi-value lookup)

Returns:
true if select field should be rendered, false if not

setIncludeLineSelectionField

public void setIncludeLineSelectionField(boolean includeLineSelectionField)
Setter for the render selected field indicator

Parameters:
includeLineSelectionField -

getLineSelectPropertyName

public String getLineSelectPropertyName()
When isIncludeLineSelectionField() is true, gives the name of the property the select field should bind to

Note if no prefix is given in the property name, such as 'form.', it is assumed the property is contained on the collection line. In this case the binding path to the collection line will be appended. In other cases, it is assumed the property is a list or set of String that will hold the selected identifier strings

This property is not required. If not the set the framework will use a property contained on UifFormBase

Returns:
property name for select field

setLineSelectPropertyName

public void setLineSelectPropertyName(String lineSelectPropertyName)
Setter for the property name that will bind to the select field

Parameters:
lineSelectPropertyName -

getCollectionLookup

public QuickFinder getCollectionLookup()
Instance of the QuickFinder widget that configures a multi-value lookup for the collection

If the collection lookup is enabled (by the render property of the quick finder), getCollectionObjectClass() will be used as the data object class for the lookup (if not set). Field conversions need to be set as usual and will be applied for each line returned

Returns:
instance configured for the collection lookup

setCollectionLookup

public void setCollectionLookup(QuickFinder collectionLookup)
Setter for the collection lookup quickfinder instance

Parameters:
collectionLookup -

isShowInactiveLines

public boolean isShowInactiveLines()
Indicates whether inactive collections lines should be displayed

Setting only applies when the collection line type implements the Inactivatable interface. If true and showInactive is set to false, the collection will be filtered to remove any items whose active status returns false

Returns:
true to show inactive records, false to not render inactive records

setShowInactiveLines

public void setShowInactiveLines(boolean showInactiveLines)
Setter for the show inactive indicator

Parameters:
showInactiveLines - boolean show inactive

getActiveCollectionFilter

public CollectionFilter getActiveCollectionFilter()
Collection filter instance for filtering the collection data when the showInactive flag is set to false

Returns:
CollectionFilter

setActiveCollectionFilter

public void setActiveCollectionFilter(CollectionFilter activeCollectionFilter)
Setter for the collection filter to use for filter inactive records from the collection

Parameters:
activeCollectionFilter - CollectionFilter instance

getFilters

public List<CollectionFilter> getFilters()
List of CollectionFilter instances that should be invoked to filter the collection before displaying

Returns:
List

setFilters

public void setFilters(List<CollectionFilter> filters)
Setter for the List of collection filters for which the collection will be filtered against

Parameters:
filters -

getSubCollections

public List<CollectionGroup> getSubCollections()
List of CollectionGroup instances that are sub-collections of the collection represented by this collection group

Returns:
sub collections

setSubCollections

public void setSubCollections(List<CollectionGroup> subCollections)
Setter for the sub collection list

Parameters:
subCollections -

getSubCollectionSuffix

public String getSubCollectionSuffix()
Suffix for IDs that identifies the collection line the sub-collection belongs to

Built by the framework as the collection lines are being generated

Returns:
id suffix for sub-collection

setSubCollectionSuffix

public void setSubCollectionSuffix(String subCollectionSuffix)
Setter for the sub-collection suffix (used by framework, should not be set in configuration)

Parameters:
subCollectionSuffix -

getCollectionGroupSecurity

public CollectionGroupSecurity getCollectionGroupSecurity()
Collection Security object that indicates what authorization (permissions) exist for the collection

Returns:
CollectionGroupSecurity instance

setComponentSecurity

public void setComponentSecurity(ComponentSecurity componentSecurity)
Override to assert a CollectionGroupSecurity instance is set

Specified by:
setComponentSecurity in interface Component
Overrides:
setComponentSecurity in class ComponentBase
Parameters:
componentSecurity - instance of CollectionGroupSecurity
See Also:
Component.setComponentSecurity(org.kuali.rice.krad.uif.component.ComponentSecurity)

getComponentSecurityClass

protected Class<? extends ComponentSecurity> getComponentSecurityClass()
Description copied from class: ComponentBase
Returns the security class that is associated with the component (used for initialization and validation)

Overrides:
getComponentSecurityClass in class ComponentBase
Returns:
Class

getCollectionGroupBuilder

public CollectionGroupBuilder getCollectionGroupBuilder()
CollectionGroupBuilder instance that will build the components dynamically for the collection instance

Returns:
CollectionGroupBuilder instance

setCollectionGroupBuilder

public void setCollectionGroupBuilder(CollectionGroupBuilder collectionGroupBuilder)
Setter for the collection group building instance

Parameters:
collectionGroupBuilder -

setRenderInactiveToggleButton

public void setRenderInactiveToggleButton(boolean renderInactiveToggleButton)
Parameters:
renderInactiveToggleButton - the showHideInactiveButton to set

isRenderInactiveToggleButton

public boolean isRenderInactiveToggleButton()
Returns:
the showHideInactiveButton

getDisplayCollectionSize

public int getDisplayCollectionSize()
The number of records to display for a collection

Returns:
int

setDisplayCollectionSize

public void setDisplayCollectionSize(int displayCollectionSize)
Setter for the display collection size

Parameters:
displayCollectionSize -

isHighlightNewItems

public boolean isHighlightNewItems()
Indicates whether new items should be styled with the #newItemsCssClass

Returns:
true if new items must be highlighted

setHighlightNewItems

public void setHighlightNewItems(boolean highlightNewItems)
Setter for the flag that allows for different styling of new items

Parameters:
highlightNewItems -

getNewItemsCssClass

public String getNewItemsCssClass()
The css style class that will be added on new items

Returns:
the new items css style class

setNewItemsCssClass

public void setNewItemsCssClass(String newItemsCssClass)
Setter for the new items css style class

Parameters:
newItemsCssClass -

getAddItemCssClass

public String getAddItemCssClass()
The css style class that will be added on the add item group or row

Returns:
the add item group or row css style class

setAddItemCssClass

public void setAddItemCssClass(String addItemCssClass)
Setter for the add item css style class

Parameters:
addItemCssClass -

isHighlightAddItem

public boolean isHighlightAddItem()
Indicates whether the add item group or row should be styled with the #addItemCssClass

Returns:
true if add item group or row must be highlighted

setHighlightAddItem

public void setHighlightAddItem(boolean highlightAddItem)
Setter for the flag that allows for different styling of the add item group or row

Parameters:
highlightAddItem -

isRenderAddBlankLineButton

public boolean isRenderAddBlankLineButton()
Indicates that a button will be rendered that allows the user to add blank lines to the collection

The button will be added separately from the collection items. The default add line wil not be rendered. The action of the button will call the controller, add the blank line to the collection and do a component refresh.

Returns:
boolean

setRenderAddBlankLineButton

public void setRenderAddBlankLineButton(boolean renderAddBlankLineButton)
Setter for the flag indicating that the add blank line button must be rendered

Parameters:
renderAddBlankLineButton -

getAddBlankLineAction

public Action getAddBlankLineAction()
The add blank line Action field rendered when renderAddBlankLineButton is true

Returns:
boolean

setAddBlankLineAction

public void setAddBlankLineAction(Action addBlankLineAction)
Setter for the add blank line Action field

Parameters:
addBlankLineAction -

getAddLinePlacement

public String getAddLinePlacement()
Indicates the add line placement

Valid values are 'TOP' or 'BOTTOM'. The default is 'TOP'. When the value is 'BOTTOM' the blank line will be added to the end of the collection.

Returns:
the add blank line action placement

setAddLinePlacement

public void setAddLinePlacement(String addLinePlacement)
Setter for the add line placement

Parameters:
addLinePlacement - add line placement string

isRenderSaveLineActions

public boolean isRenderSaveLineActions()
Indicates whether the save line actions should be rendered

Returns:
boolean

setRenderSaveLineActions

public void setRenderSaveLineActions(boolean renderSaveLineActions)
Setter for the flag indicating whether the save actions should be rendered

Parameters:
renderSaveLineActions -

isAddViaLightBox

public boolean isAddViaLightBox()
Indicates that a add action should be rendered and that the add group be displayed in a lightbox

Returns:
boolean

setAddViaLightBox

public void setAddViaLightBox(boolean addViaLightBox)
Setter for the flag to indicate that add groups should be displayed in a light box

Parameters:
addViaLightBox -

getAddViaLightBoxAction

public Action getAddViaLightBoxAction()
The Action that will be displayed that will open the add line group in a lightbox

Returns:
Action

setAddViaLightBoxAction

public void setAddViaLightBoxAction(Action addViaLightBoxAction)
Setter for the add line via lightbox Action

Parameters:
addViaLightBoxAction -

completeValidation

public void completeValidation(ValidationTrace tracer)
Description copied from interface: Component
Validates different requirements of component compiling a series of reports detailing information on errors found in the component. Used by the RiceDictionaryValidator.

Specified by:
completeValidation in interface Component
Overrides:
completeValidation in class Group
Parameters:
tracer - Record of component's location
See Also:
Component.completeValidation(org.kuali.rice.krad.datadictionary.validator.ValidationTrace)


Copyright © 2005-2013 The Kuali Foundation. All Rights Reserved.