View Javadoc
1   /*
2    * Copyright 2008-2009 The Kuali Foundation
3    * 
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    * 
8    * http://www.opensource.org/licenses/ecl2.php
9    * 
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.ole.sys.document.web;
17  
18  import java.util.List;
19  
20  import javax.servlet.jsp.JspException;
21  import javax.servlet.jsp.PageContext;
22  import javax.servlet.jsp.tagext.JspFragment;
23  import javax.servlet.jsp.tagext.Tag;
24  
25  
26  public interface AccountingLineGroup {
27  
28      /**
29       * Renders the whole of this accounting line group
30       * 
31       * @param pageContext the page context to render to
32       * @param parentTag the AccountingLinesTag that is requesting this rendering
33       */
34      public abstract void renderEverything(PageContext pageContext, Tag parentTag) throws JspException;
35  
36      /**
37       * Finds the maximum number of cells in the accounting line table row
38       * 
39       * @param rows the rows which are being rendered
40       * @return the maximum number of cells to render
41       */
42      public abstract int getWidthInCells();
43  
44      /**
45       * Sets the cellCount attribute value.
46       * 
47       * @param cellCount The cellCount to set.
48       */
49      public abstract void setCellCount(int cellCount);
50  
51      /**
52       * Sets the importLineOverride attribute value.
53       * 
54       * @param importLineOverride The importLineOverride to set.
55       */
56      public abstract void setImportLineOverride(JspFragment importLineOverride);
57  
58      /**
59       * Sets the form's arbitrarily high tab index
60       * 
61       * @param arbitrarilyHighIndex the index to set
62       */
63      public abstract void setArbitrarilyHighIndex(int arbitrarilyHighIndex);
64  
65      /**
66       * Gets the errors attribute.
67       * 
68       * @return Returns the errors.
69       */
70      public abstract List getErrorKeys();
71  
72      /**
73       * Sets the errors attribute value.
74       * 
75       * @param errors The errors to set.
76       */
77      public abstract void setErrorKeys(List errors);
78  
79      /**
80       * Determines if there is more than one editable line in this group; if so, then it allows deleting
81       */
82      public abstract void updateDeletabilityOfAllLines();
83  
84      /**
85       * Gets the collectionItemPropertyName attribute. 
86       * @return Returns the collectionItemPropertyName.
87       */
88      public abstract String getCollectionItemPropertyName();
89  
90  }