01: /*
02: * The contents of this file are subject to the terms of the Common Development
03: * and Distribution License (the License). You may not use this file except in
04: * compliance with the License.
05: *
06: * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
07: * or http://www.netbeans.org/cddl.txt.
08: *
09: * When distributing Covered Code, include this CDDL Header Notice in each file
10: * and include the License file at http://www.netbeans.org/cddl.txt.
11: * If applicable, add the following below the CDDL Header, with the fields
12: * enclosed by brackets [] replaced by your own identifying information:
13: * "Portions Copyrighted [year] [name of copyright owner]"
14: *
15: * The Original Software is NetBeans. The Initial Developer of the Original
16: * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
17: * Microsystems, Inc. All Rights Reserved.
18: */
19:
20: package org.netbeans.modules.xslt.model;
21:
22: import java.util.List;
23:
24: /**
25: * Container for "param" elements.
26: *
27: * @author ads
28: *
29: */
30: public interface ParamContainer {
31:
32: String PARAM_PROPERTY = "param"; // NOI18N
33:
34: /**
35: * @return params children.
36: * Note that resulting collection is unmodifiable.
37: */
38: List<Param> getParams();
39:
40: /**
41: * Add new <code>param</code> element at <code>position</code>.
42: * @param param new param element.
43: * @param position position for new element.
44: */
45: void addParam(Param param, int position);
46:
47: /**
48: * Append new param element.
49: * @param param new param child element for appending.
50: */
51: void appendParam(Param param);
52:
53: /**
54: * Removes existing <code>param</code> child element.
55: * @param param param child element.
56: */
57: void removeParam(Param param);
58: }
|