View Javadoc
1   /**
2    * Copyright 2005-2016 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.rice.krad.uif.lifecycle;
17  
18  import org.kuali.rice.krad.uif.util.LifecycleElement;
19  import org.kuali.rice.krad.uif.view.View;
20  
21  /**
22   * Handles delivery of per-node parse state for path-based view lifecycle algorithms.
23   * 
24   * <p>
25   * The interface is used for assigning the path property value during the {@link View}'s pre-process
26   * phase.
27   * </p>
28   * 
29   * @author Kuali Rice Team (rice.collab@kuali.org)
30   */
31  public interface LifecycleElementState {
32      
33      /**
34       * Gets the view lifecycle phase constant that corresponds to this phase processing task.
35       * 
36       * @return view lifecycle phase constant corresponding to this phase
37       * @see org.kuali.rice.krad.uif.UifConstants.ViewPhases
38       */
39      String getViewPhase();
40  
41      /**
42       * Gets the path relative to the view.
43       * 
44       * @return path relative the the view
45       */
46      String getViewPath();
47      
48      /**
49       * Gets the element this lifecycle phase is responsible for processing.
50       * 
51       * @return element this lifecycle phase is responsible for processing
52       */
53      LifecycleElement getElement();
54  
55      /**
56       * Gets the path relative the predecessor phase's component.
57       * 
58       * @return path relative the predecessor phase's component
59       */
60      String getParentPath();
61  
62      /**
63       * Gets the depth of the element in the lifecycle tree.
64       * 
65       * @return The depth of the element in the lifecycle tree.
66       */
67      int getDepth();
68  
69  }