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: package org.netbeans.modules.xslt.model.impl;
20:
21: import java.util.List;
22:
23: import org.netbeans.modules.xslt.model.ForEach;
24: import org.netbeans.modules.xslt.model.Sort;
25: import org.netbeans.modules.xslt.model.XslComponent;
26: import org.netbeans.modules.xslt.model.XslVisitor;
27: import org.w3c.dom.Element;
28:
29: /**
30: * @author ads
31: *
32: */
33: class ForEachImpl extends SequenceElementConstructorImpl implements
34: ForEach {
35:
36: ForEachImpl(XslModelImpl model, Element element) {
37: super (model, element);
38: }
39:
40: ForEachImpl(XslModelImpl model) {
41: super (model, XslElements.FOR_EACH);
42: }
43:
44: /* (non-Javadoc)
45: * @see org.netbeans.modules.xslt.model.impl.XslComponentImpl#accept(org.netbeans.modules.xslt.model.XslVisitor)
46: */
47: @Override
48: public void accept(XslVisitor visitor) {
49: visitor.visit(this );
50: }
51:
52: /* (non-Javadoc)
53: * @see org.netbeans.modules.xslt.model.impl.XslComponentImpl#getComponentType()
54: */
55: @Override
56: public Class<? extends XslComponent> getComponentType() {
57: return ForEach.class;
58: }
59:
60: /* (non-Javadoc)
61: * @see org.netbeans.modules.xslt.model.ForEach#addSort(org.netbeans.modules.xslt.model.Sort, int)
62: */
63: public void addSort(Sort sort, int position) {
64: insertAtIndex(SORT_PROPERTY, sort, position);
65: }
66:
67: /* (non-Javadoc)
68: * @see org.netbeans.modules.xslt.model.ForEach#appendSort(org.netbeans.modules.xslt.model.Sort)
69: */
70: public void appendSort(Sort sort) {
71: addBefore(SORT_PROPERTY, sort, SEQUENCE_ELEMENTS);
72: }
73:
74: /* (non-Javadoc)
75: * @see org.netbeans.modules.xslt.model.ForEach#getSorts()
76: */
77: public List<Sort> getSorts() {
78: return getChildren(Sort.class);
79: }
80:
81: /* (non-Javadoc)
82: * @see org.netbeans.modules.xslt.model.ForEach#removeSort(org.netbeans.modules.xslt.model.Sort)
83: */
84: public void removeSort(Sort sort) {
85: removeChild(SORT_PROPERTY, sort);
86: }
87:
88: }
|