1 /* |
1 /* |
2 * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. Oracle designates this |
7 * published by the Free Software Foundation. Oracle designates this |
30 |
30 |
31 import javax.lang.model.element.Element; |
31 import javax.lang.model.element.Element; |
32 import javax.lang.model.element.ExecutableElement; |
32 import javax.lang.model.element.ExecutableElement; |
33 import javax.lang.model.element.TypeElement; |
33 import javax.lang.model.element.TypeElement; |
34 import javax.lang.model.element.VariableElement; |
34 import javax.lang.model.element.VariableElement; |
|
35 import javax.lang.model.type.ArrayType; |
|
36 import javax.lang.model.type.DeclaredType; |
|
37 import javax.lang.model.type.ExecutableType; |
|
38 import javax.lang.model.type.PrimitiveType; |
|
39 import javax.lang.model.type.TypeMirror; |
|
40 import javax.lang.model.util.SimpleTypeVisitor9; |
35 |
41 |
36 import com.sun.source.doctree.DocTree; |
42 import com.sun.source.doctree.DocTree; |
37 import com.sun.source.doctree.DocTree.Kind; |
43 import com.sun.source.doctree.DocTree.Kind; |
38 import jdk.javadoc.internal.doclets.toolkit.AnnotationTypeWriter; |
44 import jdk.javadoc.internal.doclets.toolkit.AnnotationTypeWriter; |
39 import jdk.javadoc.internal.doclets.toolkit.ClassWriter; |
45 import jdk.javadoc.internal.doclets.toolkit.ClassWriter; |
438 blockTags.add(cmtutils.makeSeeTree(sb.toString(), getter)); |
444 blockTags.add(cmtutils.makeSeeTree(sb.toString(), getter)); |
439 } |
445 } |
440 |
446 |
441 if (null != setter) { |
447 if (null != setter) { |
442 VariableElement param = setter.getParameters().get(0); |
448 VariableElement param = setter.getParameters().get(0); |
443 String typeName = utils.getTypeName(param.asType(), false); |
|
444 // Removal of type parameters and package information. |
|
445 typeName = typeName.split("<")[0]; |
|
446 if (typeName.contains(".")) { |
|
447 typeName = typeName.substring(typeName.lastIndexOf(".") + 1); |
|
448 } |
|
449 StringBuilder sb = new StringBuilder("#"); |
449 StringBuilder sb = new StringBuilder("#"); |
450 sb.append(utils.getSimpleName(setter)); |
450 sb.append(utils.getSimpleName(setter)); |
451 if (!utils.isTypeVariable(param.asType())) { |
451 if (!utils.isTypeVariable(param.asType())) { |
452 sb.append("(").append(typeName).append(")"); |
452 sb.append("(").append(utils.getTypeSignature(param.asType(), false, true)).append(")"); |
453 } |
453 } |
454 blockTags.add(cmtutils.makeSeeTree(sb.toString(), setter)); |
454 blockTags.add(cmtutils.makeSeeTree(sb.toString(), setter)); |
455 } |
455 } |
456 } |
456 } |
457 cmtutils.setDocCommentTree(member, fullBody, blockTags, utils); |
457 cmtutils.setDocCommentTree(member, fullBody, blockTags, utils); |