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: /**
21: *
22: */package org.netbeans.modules.bpel.model.impl;
23:
24: import org.netbeans.modules.bpel.model.api.BpelEntity;
25: import org.netbeans.modules.bpel.model.api.Branches;
26: import org.netbeans.modules.bpel.model.api.CompletionCondition;
27: import org.netbeans.modules.bpel.model.api.support.BpelModelVisitor;
28: import org.netbeans.modules.bpel.model.xam.AfterSources;
29: import org.netbeans.modules.bpel.model.xam.BpelElements;
30: import org.w3c.dom.Element;
31:
32: /**
33: * @author ads
34: *
35: */
36: public class CompletionConditionImpl extends ExtensibleElementsImpl
37: implements CompletionCondition, AfterSources {
38:
39: CompletionConditionImpl(BpelModelImpl model, Element e) {
40: super (model, e);
41: }
42:
43: CompletionConditionImpl(BpelBuilderImpl builder) {
44: super (builder, BpelElements.COMPLETION_CONDITION.getName());
45: }
46:
47: /* (non-Javadoc)
48: * @see org.netbeans.modules.soa.model.bpel20.api.CompletionCondition#getBranches()
49: */
50: public Branches getBranches() {
51: return getChild(Branches.class);
52: }
53:
54: /* (non-Javadoc)
55: * @see org.netbeans.modules.soa.model.bpel20.api.CompletionCondition#setBranches(org.netbeans.modules.soa.model.bpel20.api.Branches)
56: */
57: public void setBranches(Branches branches) {
58: setChild(branches, Branches.class);
59: }
60:
61: /* (non-Javadoc)
62: * @see org.netbeans.modules.soa.model.bpel20.api.BpelEntity#getElementType()
63: */
64: public Class<? extends BpelEntity> getElementType() {
65: return CompletionCondition.class;
66: }
67:
68: /* (non-Javadoc)
69: * @see org.netbeans.modules.soa.model.bpel20.impl.BpelEntityImpl#acceptThis(org.netbeans.modules.soa.model.bpel20.api.support.BpelModelVisitor)
70: */
71: public void accept(BpelModelVisitor visitor) {
72: visitor.visit(this );
73: }
74:
75: /* (non-Javadoc)
76: * @see org.netbeans.modules.soa.model.bpel20.impl.ExtensibleElementsImpl#create(org.w3c.dom.Element)
77: */
78: @Override
79: protected BpelEntity create(Element element) {
80: if (BpelElements.BRANCHES.getName().equals(
81: element.getLocalName())) {
82: return new BranchesImpl(getModel(), element);
83: }
84: return super .create(element);
85: }
86:
87: /* (non-Javadoc)
88: * @see org.netbeans.modules.bpel.model.impl.BpelContainerImpl#getMultiplicity(org.netbeans.modules.bpel.model.api.BpelEntity)
89: */
90: @Override
91: protected Multiplicity getMultiplicity(BpelEntity entity) {
92: if (getChildType(entity).equals(Branches.class)) {
93: return Multiplicity.SINGLE;
94: }
95: return super.getMultiplicity(entity);
96: }
97: }
|