1 /*
2 JavadocMethod
3 allowedAnnotations = (default)Override
4 validateThrows = (default)false
5 accessModifiers =
6 allowMissingParamTags = (default)false
7 allowMissingReturnTag = (default)false
8 tokens = (default)METHOD_DEF, CTOR_DEF, ANNOTATION_FIELD_DEF, COMPACT_CTOR_DEF
9
10
11 */
12
13 package com.puppycrawl.tools.checkstyle.checks.javadoc.javadocmethod;
14
15 public class InputJavadocMethodPublicOnly1 // ignore - need javadoc
16 {
17 private interface InnerInterface // ignore - when not relaxed about Javadoc
18 {
19 String CONST = "InnerInterface"; // ignore - w.n.r.a.j
20 void method(); // ignore - when not relaxed about Javadoc
21
22 class InnerInnerClass // ignore - when not relaxed about Javadoc
23 {
24 private int mData; // ignore - when not relaxed about Javadoc
25
26 private InnerInnerClass()
27 {
28 final Runnable r = new Runnable() {
29 public void run() {};
30 };
31 }
32
33 void method2() // ignore - when not relaxed about Javadoc
34 {
35 final Runnable r = new Runnable() {
36 public void run() {}; // ok
37 };
38 }
39 }
40 }
41
42 private class InnerClass // ignore
43 {
44 private int mDiff; // ignore - when not relaxed about Javadoc
45
46 void method() // ignore - when not relaxed about Javadoc
47 {
48 }
49 }
50
51 private int mSize; // ignore - when not relaxed about Javadoc
52 int mLen; // ignore - when not relaxed about Javadoc
53 protected int mDeer; // ignore
54 public int aFreddo; // ignore
55
56 // ignore - need Javadoc
57 private InputJavadocMethodPublicOnly1(int aA) // ok
58 {
59 }
60
61 // ignore - need Javadoc when not relaxed
62 InputJavadocMethodPublicOnly1(String aA) // ok
63 {
64 }
65
66 // ignore - always need javadoc
67 protected InputJavadocMethodPublicOnly1(Object aA) // ok
68 {
69 }
70
71 // ignore - always need javadoc
72 public InputJavadocMethodPublicOnly1(Class<Object> aA) // ok
73 {
74 }
75
76 /** Here should be an error, In scope */
77 private void method(int aA)
78 {
79 }
80
81 /** Here should be an error, In scope */
82 void method(Long aA)
83 {
84 }
85
86 /** Here should be an error, In scope */
87 protected void method(Class<Object> aA)
88 {
89 }
90
91 /** Here should be an error, In scope */
92 public void method(StringBuffer aA)
93 {
94 }
95
96
97 /**
98 A param tag should not be required here when relaxed about Javadoc.
99 Writing a little documentation should not be worse than not
100 writing any documentation at all.
101 */
102 private void method(String aA)
103 {
104 }
105
106 /**
107 This inner class has no author tag, which is OK.
108 */
109 public class InnerWithoutAuthor // ok
110 {
111
112 }
113
114 /** {@inheritDoc} */
115 public String toString() // ok
116 {
117 return super.toString();
118 }
119
120 @Deprecated @Override
121 public int hashCode() // ok
122 {
123 return super.hashCode();
124 }
125
126 public Thread anonymousClassInMethod() {
127 return new Thread() {
128 @Override
129 public void run() {
130 privateMethod(null, null);
131 }
132
133 /**
134 * Javadoc
135 */
136 private String privateMethod(String a, String b) {
137 return null;
138 }
139 };
140 }
141
142 private final Thread anonymousClassInField = new Thread() {
143 @Override
144 public void run() {
145 publicMethod(null, null);
146 }
147
148 /**
149 * Javadoc
150 */
151 public String publicMethod(String a, String b) {
152 return null;
153 }
154 };
155 }