KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > xml > wsdl > model > extensions > bpel > impl > RoleImpl


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * 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.xml.wsdl.model.extensions.bpel.impl;
21
22 import java.util.Collection JavaDoc;
23 import org.netbeans.modules.xml.wsdl.model.ExtensibilityElement;
24 import org.netbeans.modules.xml.wsdl.model.PortType;
25 import org.netbeans.modules.xml.wsdl.model.WSDLModel;
26 import org.netbeans.modules.xml.wsdl.model.extensions.bpel.BPELExtensibilityComponent;
27 import org.netbeans.modules.xml.wsdl.model.extensions.bpel.BPELQName;
28 import org.netbeans.modules.xml.wsdl.model.extensions.bpel.Documentation;
29 import org.netbeans.modules.xml.wsdl.model.extensions.bpel.PartnerLinkType;
30 import org.netbeans.modules.xml.wsdl.model.extensions.bpel.Role;
31 import org.netbeans.modules.xml.wsdl.model.spi.NamedExtensibilityElementBase;
32 import org.netbeans.modules.xml.xam.Component;
33 import org.netbeans.modules.xml.xam.dom.NamedComponentReference;
34 import org.w3c.dom.Element JavaDoc;
35
36 /**
37  *
38  * @author Nam Nguyen
39  *
40  * changed by
41  * @author ads
42  */

43 public class RoleImpl extends NamedExtensibilityElementBase implements Role {
44     
45     /** Creates a new instance of RoleImpl */
46     public RoleImpl(WSDLModel model, Element e) {
47         super(model, e);
48     }
49     
50     public RoleImpl(WSDLModel model){
51         this(model, createPrefixedElement(BPELQName.ROLE.getQName(), model));
52     }
53     
54     protected String JavaDoc getNamespaceURI() {
55         return BPELQName.PLNK_NS;
56     }
57     
58     public NamedComponentReference<PortType> getPortType() {
59         return resolveGlobalReference(PortType.class, BPELAttribute.PORT_TYPE);
60     }
61
62     public void setPortType(NamedComponentReference<PortType> portType) {
63         setAttribute(PORT_TYPE_PROPERTY, BPELAttribute.PORT_TYPE, portType);
64     }
65
66     public void accept(BPELExtensibilityComponent.Visitor v) {
67         v.visit(this);
68     }
69
70     @Override JavaDoc
71     public void addExtensibilityElement(ExtensibilityElement ee) {
72         if (ee instanceof Documentation) {
73             addRoleDocumentation((Documentation) ee);
74         } else {
75             super.addExtensibilityElement(ee);
76         }
77     }
78
79     public void addRoleDocumentation(Documentation doc) {
80         if (doc == null) return;
81         appendChild(ROLE_DOCUMENTATION_PROPERTY, doc);
82     }
83
84     public void removeRoleDocumentation(Documentation doc) {
85         removeChild(ROLE_DOCUMENTATION_PROPERTY, doc);
86         
87     }
88
89     public Collection JavaDoc<Documentation> getRoleDocumentations() {
90         return getChildren(Documentation.class);
91     }
92
93     @Override JavaDoc
94     public boolean canBeAddedTo(Component target) {
95         if (target instanceof PartnerLinkType) {
96             return true;
97         }
98         return false;
99     }
100 }
101
Popular Tags