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.tmap.nodes;
20:
21: import java.net.URI;
22: import java.net.URISyntaxException;
23: import org.netbeans.modules.xslt.tmap.model.api.Param;
24: import org.netbeans.modules.xslt.tmap.model.api.ParamType;
25: import org.netbeans.modules.xslt.tmap.util.Util;
26: import org.openide.util.Exceptions;
27:
28: /**
29: *
30: * @author Vitaly Bychkov
31: * @version 1.0
32: */
33: public class DecoratedParam extends
34: DecoratedTMapComponentAbstract<Param> {
35:
36: public DecoratedParam(Param orig) {
37: super (orig);
38: }
39:
40: @Override
41: public String getHtmlDisplayName() {
42: Param ref = getOriginal();
43: ParamType type = ref == null ? null : ref.getType();
44:
45: String typeStr = null;
46: StringBuffer addon = new StringBuffer();
47: if (type != null) {
48: try {
49: typeStr = type.toString();
50: switch (type) {
51: case URI:
52: URI uri = ref.getUri();
53: String uriStr = uri == null ? "" : uri.getPath();
54: typeStr += " uri=" + uriStr;
55: break;
56: case PART:
57: ref.getValue();
58: typeStr += " part=";
59: break;
60: default:
61: typeStr += " ...";
62: }
63:
64: addon.append(TMapComponentNode.WHITE_SPACE).append(
65: typeStr); // NOI18N
66: } catch (URISyntaxException ex) {
67: Exceptions.printStackTrace(ex);
68: }
69: }
70:
71: return Util.getGrayString(super.getHtmlDisplayName(), addon
72: .toString());
73: }
74: }
|