001: /* Copyright 2002 The JA-SIG Collaborative. All rights reserved.
002: * See license distributed with this file and
003: * available online at http://www.uportal.org/license.html
004: */
005:
006: package org.jasig.portal.layout.alm;
007:
008: import java.util.Hashtable;
009: import java.util.Vector;
010:
011: import org.jasig.portal.layout.restrictions.IUserLayoutRestriction;
012: import org.w3c.dom.Document;
013: import org.w3c.dom.Element;
014:
015: /**
016: * An interface describing methods common to the Aggregated Layout node descriptions.
017: *
018: * Prior to uPortal 2.5, this class existed in the package org.jasig.portal.layout.
019: * It was moved to its present package to reflect that it is part of Aggregated
020: * Layouts.
021: *
022: * @author Peter Kharchenko {@link <a href="mailto:pkharchenko@interactivebusiness.com"">pkharchenko@interactivebusiness.com"</a>}
023: * @version 1.0 $Revision: 36690 $ $Date: 2006-08-25 14:03:25 -0700 (Fri, 25 Aug 2006) $
024: */
025: public interface IALNodeProperties {
026:
027: /**
028: * Set fragment id
029: *
030: * @param fragmentId a <code>String</code> value
031: */
032: public void setFragmentId(String fragmentId);
033:
034: /**
035: * Get fragment id
036: *
037: * @return a <code>String</code> value
038: */
039: public String getFragmentId();
040:
041: /**
042: * Set fragment node id
043: *
044: * @param fragmentNodeId a <code>String</code> value
045: */
046: public void setFragmentNodeId(String fragmentNodeId);
047:
048: /**
049: * Get fragment node id
050: *
051: * @return a <code>String</code> value
052: */
053: public String getFragmentNodeId();
054:
055: /**
056: * Sets the group identificator for this node.
057: * @param group a <code>String</code> group identificator value
058: */
059: public void setGroup(String group);
060:
061: /**
062: * Gets the priority value for this node.
063: */
064: public String getGroup();
065:
066: /**
067: * Sets the hashtable of restrictions bound to this node
068: * @param restrictions a <code>Hashtable</code> of restriction expressions
069: */
070: public void setRestrictions(Hashtable restrictions);
071:
072: /**
073: * Gets the hashtable of restrictions bound to this node
074: * @return a set of restriction expressions
075: */
076: public Hashtable getRestrictions();
077:
078: /**
079: * Adds the restriction for this node.
080: * @param restriction a <code>IUserLayoutRestriction</code> a restriction
081: */
082: public void addRestriction(IUserLayoutRestriction restriction);
083:
084: /**
085: * Gets a restriction by the type.
086: * @param restrictionName a <code>String</code> name of the restriction
087: * @return a IUserLayoutRestriction
088: */
089: public IUserLayoutRestriction getRestriction(String restrictionName);
090:
091: /**
092: * Gets a restrictions list by a restriction path.
093: * @param restrictionPath a <code>String</code> restriction path
094: * @return a IUserLayoutRestriction
095: */
096: public Vector getRestrictionsByPath(String restrictionPath);
097:
098: public void addRestrictionChildren(Element node, Document root);
099:
100: }
|