• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 <?cs # THIS CREATES A CLASS OR INTERFACE PAGE FROM .java FILES ?>
2 <?cs include:"macros.cs" ?>
3 <?cs include:"macros_override.cs" ?>
4 <?cs
5 ####################
6 # MACRO FUNCTION USED ONLY IN THIS TEMPLATE TO GENERATE API REFERENCE
7 # FIRST, THE FUNCTIONS FOR THE SUMMARY AT THE TOP OF THE PAGE
8 ####################
9 ?>
10 
11 <?cs
12 # Prints the table cells for the summary of methods.
13 ?><?cs def:write_method_summary(methods, included) ?>
14 <?cs set:count = #1 ?>
15 <?cs each:method = methods ?>
16   <?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
17   <tr class="api apilevel-<?cs var:method.since ?>" >
18   <?cs # leave out this cell if there is no return type = if constructors ?>
19   <?cs if:subcount(method.returnType) ?>
20     <td><code>
21         <?cs var:method.abstract ?>
22         <?cs var:method.default ?>
23         <?cs var:method.static ?>
24         <?cs var:method.final ?>
25         <?cs call:type_link(method.generic) ?>
26         <?cs call:type_link(method.returnType) ?></code>
27     </td>
28   <?cs /if ?>
29     <td width="100%">
30       <code>
31       <?cs call:cond_link(method.name, toroot, method.href, included) ?>(<?cs call:parameter_list(method.params, 0) ?>)
32       </code>
33       <?cs if:subcount(method.shortDescr) || subcount(method.deprecated) ?>
34         <p><?cs call:short_descr(method) ?>
35         <?cs call:show_annotations_list(method) ?></p>
36       <?cs /if ?>
37     </td>
38   </tr>
39   <?cs set:count = count + #1 ?>
40 <?cs /each ?>
41 <?cs /def ?>
42 
43 <?cs
44 # Print the table cells for the summary of fields.
45 ?><?cs def:write_field_summary(fields, included) ?>
46 <?cs set:count = #1 ?>
47 <?cs each:field=fields ?>
48   <tr class="api apilevel-<?cs var:field.since ?>" >
49     <td><code>
50     <?cs var:field.scope ?>
51     <?cs var:field.static ?>
52     <?cs var:field.final ?>
53     <?cs call:type_link(field.type) ?></code></td>
54     <td width="100%">
55       <code><?cs call:cond_link(field.name, toroot, field.href, included) ?></code>
56       <p><?cs call:short_descr(field) ?>
57       <?cs call:show_annotations_list(field) ?></p>
58     </td>
59   </tr>
60   <?cs set:count = count + #1 ?>
61 <?cs /each ?>
62 <?cs /def ?>
63 
64 <?cs
65 # Print the table cells for the summary of constants
66 ?><?cs def:write_constant_summary(fields, included) ?>
67 <?cs set:count = #1 ?>
68     <?cs each:field=fields ?>
69     <tr class="api apilevel-<?cs var:field.since ?>" >
70         <td><code><?cs call:type_link(field.type) ?></code></td>
71         <td width="100%">
72           <code><?cs call:cond_link(field.name, toroot, field.href, included) ?></code>
73           <p><?cs call:short_descr(field) ?>
74           <?cs call:show_annotations_list(field) ?></p>
75         </td>
76     </tr>
77     <?cs set:count = count + #1 ?>
78     <?cs /each ?>
79 <?cs /def ?>
80 
81 <?cs
82 # Print the table cells for the summary of attributes
83 ?><?cs def:write_attr_summary(attrs, included) ?>
84 <?cs set:count = #1 ?>
85     <?cs each:attr=attrs ?>
86     <tr class="api apilevel-<?cs var:attr.since ?>" >
87         <td><?cs if:included ?><a href="<?cs var:toroot ?><?cs var:attr.href ?>"><?cs /if
88           ?><code><?cs var:attr.name ?></code><?cs if:included ?></a><?cs /if ?></td>
89         <td width="100%">
90           <?cs call:short_descr(attr) ?>&nbsp;
91           <?cs call:show_annotations_list(attr) ?>
92         </td>
93     </tr>
94     <?cs set:count = count + #1 ?>
95     <?cs /each ?>
96 <?cs /def ?>
97 
98 <?cs
99 # Print the table cells for the inner classes
100 ?><?cs def:write_inners_summary(classes) ?>
101 <?cs set:count = #1 ?>
102   <?cs each:cl=class.inners ?>
103     <tr class="api apilevel-<?cs var:cl.since ?>" >
104       <td class="jd-typecol"><code>
105         <?cs var:cl.scope ?>
106         <?cs var:cl.static ?>
107         <?cs var:cl.final ?>
108         <?cs var:cl.abstract ?>
109         <?cs var:cl.kind ?></code></td>
110       <td class="jd-descrcol" width="100%">
111         <code><?cs call:type_link(cl.type) ?></code>
112         <p><?cs call:short_descr(cl) ?>&nbsp;
113         <?cs call:show_annotations_list(cl) ?></p>
114       </td>
115     </tr>
116     <?cs set:count = count + #1 ?>
117     <?cs /each ?>
118 <?cs /def ?>
119 <?cs
120 ###################
121 # END OF FUNCTIONS FOR API SUMMARY
122 # START OF FUNCTIONS FOR THE API DETAILS
123 ###################
124 ?>
125 <?cs
126 # Print the table cells for the summary of constants
127 ?>
128 <?cs def:write_field_details(fields) ?>
129 <?cs each:field=fields ?>
130 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
131 <?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
132 <A NAME="<?cs var:field.anchor ?>"></A>
133 <?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
134 <div class="api apilevel-<?cs var:field.since ?>">
135     <h3 class="api-name"><?cs var:field.name ?></h3>
136     <div class="api-level">
137       <?cs call:since_tags(field) ?>
138       <?cs call:federated_refs(field) ?>
139     </div>
140 <pre class="api-signature no-pretty-print">
141 <?cs if:subcount(field.scope) ?><?cs var:field.scope
142 ?> <?cs /if ?><?cs if:subcount(field.static) ?><?cs var:field.static
143 ?> <?cs /if ?><?cs if:subcount(field.final) ?><?cs var:field.final
144 ?> <?cs /if ?><?cs if:subcount(field.type) ?><?cs call:type_link(field.type)
145 ?> <?cs /if ?><?cs var:field.name ?></pre>
146     <?cs call:show_annotations_list(field) ?>
147     <?cs call:description(field) ?>
148     <?cs if:subcount(field.constantValue) ?>
149       <p>Constant Value:
150       <?cs if:field.constantValue.isString ?>
151           <?cs var:field.constantValue.str ?>
152       <?cs else ?>
153           <?cs var:field.constantValue.dec ?>
154           (<?cs var:field.constantValue.hex ?>)
155       <?cs /if ?>
156     <?cs /if ?>
157 </div>
158 <?cs /each ?>
159 <?cs /def ?>
160 
161 <?cs def:write_method_details(methods) ?>
162 <?cs each:method=methods ?>
163 <?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
164 <A NAME="<?cs var:method.anchor ?>"></A>
165 <?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
166 <div class="api apilevel-<?cs var:method.since ?>">
167     <h3 class="api-name"><?cs var:method.name ?></h3>
168     <div class="api-level">
169       <div><?cs call:since_tags(method) ?></div>
170       <?cs call:federated_refs(method) ?>
171     </div>
172 <pre class="api-signature no-pretty-print">
173 <?cs if:subcount(method.scope) ?><?cs var:method.scope
174 ?> <?cs /if ?><?cs if:subcount(method.static) ?><?cs var:method.static
175 ?> <?cs /if ?><?cs if:subcount(method.final) ?><?cs var:method.final
176 ?> <?cs /if ?><?cs if:subcount(method.abstract) ?><?cs var:method.abstract
177 ?> <?cs /if ?><?cs if:subcount(method.returnType) ?><?cs call:type_link(method.returnType)
178 ?> <?cs /if ?><?cs var:method.name ?> (<?cs call:parameter_list(method.params, 1) ?>)</pre>
179     <?cs call:show_annotations_list(method) ?>
180     <?cs call:description(method) ?>
181 </div>
182 <?cs /each ?>
183 <?cs /def ?>
184 
185 <?cs def:write_attr_details(attrs) ?>
186 <?cs each:attr=attrs ?>
187 <?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
188 <A NAME="<?cs var:attr.anchor ?>"></A>
189 <h3 class="api-name"><?cs var:attr.name ?></h3>
190 <?cs call:show_annotations_list(attr) ?>
191 <?cs call:description(attr) ?>
192 <?cs if:subcount(attr.methods) ?>
193   <p><b>Related methods:</b></p>
194   <ul class="nolist">
195   <?cs each:m=attr.methods ?>
196     <li><a href="<?cs var:toroot ?><?cs var:m.href ?>"><?cs var:m.name ?></a></li>
197   <?cs /each ?>
198   </ul>
199 <?cs /if ?>
200 <?cs /each ?>
201 <?cs /def ?>
202 <?cs
203 #########################
204 # END OF MACROS
205 # START OF PAGE PRINTING
206 #########################
207 ?>
208 <?cs include:"doctype.cs" ?>
209 <html<?cs if:devsite ?> devsite<?cs /if ?>>
210 <?cs include:"head_tag.cs" ?>
211 <?cs include:"body_tag.cs" ?>
212 <?cs include:"header.cs" ?>
213 <?cs include:"page_info.cs" ?>
214 <?cs # This DIV spans the entire document to provide scope for some scripts ?>
215 <div class="api apilevel-<?cs var:class.since ?>" id="jd-content">
216 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
217 <!-- ======== START OF CLASS DATA ======== -->
218 <?cs
219 #
220 # Page header with class name and signature
221 #
222 ?>
223 <h1 class="api-title"><?cs var:class.name ?></h1>
224 <p>
225 <code class="api-signature">
226   <?cs var:class.scope ?>
227   <?cs var:class.static ?>
228   <?cs var:class.final ?>
229   <?cs var:class.abstract ?>
230   <?cs var:class.kind ?>
231   <?cs var:class.name ?>
232 </code>
233 <br>
234 <?cs set:colspan = subcount(class.inheritance) ?>
235 <?cs each:supr = class.inheritance ?>
236 <code class="api-signature">
237   <?cs if:colspan == 2 ?>
238     extends <?cs call:type_link(supr.short_class) ?>
239   <?cs /if ?>
240   <?cs if:last(supr) && subcount(supr.interfaces) ?>
241       implements
242       <?cs each:t=supr.interfaces ?>
243         <?cs call:type_link(t) ?><?cs
244           if: name(t)!=subcount(supr.interfaces)-1
245             ?>, <?cs /if ?>
246       <?cs /each ?>
247   <?cs /if ?>
248   <?cs set:colspan = colspan-1 ?>
249 </code>
250 <?cs /each ?>
251 </p><?cs
252 #
253 # Class inheritance tree
254 #
255 ?><table class="jd-inheritance-table">
256 <?cs set:colspan = subcount(class.inheritance) ?>
257 <?cs each:supr = class.inheritance ?>
258   <tr>
259     <?cs loop:i = 1, (subcount(class.inheritance)-colspan), 1 ?>
260       <td class="jd-inheritance-space">&nbsp;<?cs
261         if:(subcount(class.inheritance)-colspan) == i
262           ?>&nbsp;&nbsp;&#x21b3;<?cs
263         /if ?></td>
264     <?cs /loop ?>
265     <td colspan="<?cs var:colspan ?>" class="jd-inheritance-class-cell"><?cs
266       if:colspan == 1
267           ?><?cs call:class_name(class.qualifiedType) ?><?cs
268       else
269           ?><?cs call:type_link(supr.class) ?><?cs
270       /if ?>
271     </td>
272   </tr>
273   <?cs set:colspan = colspan-1 ?>
274 <?cs /each ?>
275 </table><?cs
276 #
277 # Collapsible list of subclasses
278 #
279 ?><?cs
280 if:subcount(class.subclasses.direct) && !class.subclasses.hidden ?>
281   <table class="jd-sumtable jd-sumtable-subclasses">
282   <tr><td style="border:none;margin:0;padding:0;">
283     <?cs call:expando_trigger("subclasses-direct", "closed") ?>Known Direct Subclasses
284     <?cs call:expandable_class_list("subclasses-direct", class.subclasses.direct, "list") ?>
285   </td></tr>
286   </table>
287   <?cs /if ?>
288   <?cs if:subcount(class.subclasses.indirect) && !class.subclasses.hidden ?>
289   <table class="jd-sumtable jd-sumtable-subclasses"><tr><td colspan="2" style="border:none;margin:0;padding:0;">
290   <?cs call:expando_trigger("subclasses-indirect", "closed") ?>Known Indirect Subclasses
291   <?cs call:expandable_class_list("subclasses-indirect", class.subclasses.indirect, "list") ?>
292   </td></tr></table><?cs
293 /if ?>
294 <?cs call:show_annotations_list(class) ?>
295 <br><hr><?cs
296 #
297 # The long-form class description.
298 #
299 ?><?cs call:deprecated_warning(class) ?>
300 
301 <?cs if:subcount(class.descr) ?>
302   <p><?cs call:tag_list(class.descr) ?></p>
303 <?cs /if ?>
304 
305 <?cs call:see_also_tags(class.seeAlso) ?>
306 <?cs
307 #################
308 # CLASS SUMMARY
309 #################
310 ?>
311 <?cs # make sure there is a summary view to display ?>
312 <?cs if:subcount(class.inners)
313      || subcount(class.attrs)
314      || inhattrs
315      || subcount(class.enumConstants)
316      || subcount(class.constants)
317      || inhconstants
318      || subcount(class.fields)
319      || inhfields
320      || subcount(class.ctors.public)
321      || subcount(class.ctors.protected)
322      || subcount(class.methods.public)
323      || subcount(class.methods.protected)
324      || inhmethods ?>
325 <h2 class="api-section">Summary</h2>
326 
327 <?cs if:subcount(class.inners) ?>
328 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
329 <!-- ======== NESTED CLASS SUMMARY ======== -->
330 <table id="nestedclasses" class="responsive">
331 <tr><th colspan="2"><h3>Nested classes</h3></th></tr>
332 <?cs call:write_inners_summary(class.inners) ?>
333 <?cs /if ?>
334 
335 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
336 <?cs if:subcount(class.attrs) ?>
337 <!-- =========== FIELD SUMMARY =========== -->
338 <table id="lattrs" class="responsive">
339 <tr><th colspan="2"><h3>XML attributes</h3></th></tr>
340 <?cs call:write_attr_summary(class.attrs, 1) ?>
341 <?cs /if ?>
342 
343 <?cs # if there are inherited attrs, write the table ?>
344 <?cs if:inhattrs ?>
345 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
346 <!-- =========== FIELD SUMMARY =========== -->
347 <table id="inhattrs" class="responsive inhtable">
348 <tr><th><h3>Inherited XML attributes</h3></th></tr>
349 <?cs each:cl=class.inherited ?>
350 <?cs if:subcount(cl.attrs) ?>
351 <tr class="api apilevel-<?cs var:cl.since ?>" >
352 <td colspan="2">
353 <?cs call:expando_trigger("inherited-attrs-"+cl.qualified, "closed") ?>From
354 <?cs var:cl.kind ?>
355 <code>
356   <?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?>
357 </code>
358 <div id="inherited-attrs-<?cs var:cl.qualified ?>">
359   <div id="inherited-attrs-<?cs var:cl.qualified ?>-list"
360         class="jd-inheritedlinks">
361   </div>
362   <div id="inherited-attrs-<?cs var:cl.qualified ?>-summary" style="display: none;">
363     <table class="jd-sumtable-expando">
364     <?cs call:write_attr_summary(cl.attrs, cl.included) ?></table>
365   </div>
366 </div>
367 </td></tr>
368 <?cs /if ?>
369 <?cs /each ?>
370 </table>
371 <?cs /if ?>
372 
373 <?cs if:subcount(class.enumConstants) ?>
374 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
375 <!-- =========== ENUM CONSTANT SUMMARY =========== -->
376 <table id="enumconstants" class="responsive constants">
377   <tr><th colspan="2"><h3>Enum values</h3></th></tr>
378 <?cs set:count = #1 ?>
379   <?cs each:field=class.enumConstants ?>
380   <tr class="api apilevel-<?cs var:field.since ?>" >
381     <td><code><?cs call:type_link(field.type) ?></code>&nbsp;</td>
382     <td width="100%">
383       <code><?cs call:cond_link(field.name, toroot, field.href, cl.included) ?></code>
384       <p><?cs call:short_descr(field) ?>&nbsp;
385       <?cs call:show_annotations_list(field) ?></p>
386     </td>
387   </tr>
388   <?cs set:count = count + #1 ?>
389   <?cs /each ?>
390 <?cs /if ?>
391 
392 <?cs if:subcount(class.constants) ?>
393 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
394 <!-- =========== ENUM CONSTANT SUMMARY =========== -->
395 <table id="constants" class="responsive constants">
396 <tr><th colspan="2"><h3>Constants</h3></th></tr>
397 <?cs call:write_constant_summary(class.constants, 1) ?>
398 </table>
399 <?cs /if ?>
400 
401 <?cs # if there are inherited constants, write the table ?>
402 <?cs if:inhconstants ?>
403 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
404 <!-- =========== ENUM CONSTANT SUMMARY =========== -->
405 <table id="inhconstants" class="responsive constants inhtable">
406 <tr><th><h3>Inherited constants</h3></th></tr>
407 <?cs each:cl=class.inherited ?>
408 <?cs if:subcount(cl.constants) ?>
409   <tr class="api apilevel-<?cs var:cl.since ?>" >
410   <td>
411   <?cs call:expando_trigger("inherited-constants-"+cl.qualified, "closed") ?>From
412   <?cs var:cl.kind ?>
413   <code>
414     <?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?>
415   </code>
416   <div id="inherited-constants-<?cs var:cl.qualified ?>">
417     <div id="inherited-constants-<?cs var:cl.qualified ?>-list"
418           class="jd-inheritedlinks">
419     </div>
420     <div id="inherited-constants-<?cs var:cl.qualified ?>-summary" style="display: none;">
421       <table class="jd-sumtable-expando responsive">
422       <?cs call:write_constant_summary(cl.constants, cl.included) ?></table>
423     </div>
424   </div>
425   </td></tr>
426 <?cs /if ?>
427 <?cs /each ?>
428 </table>
429 <?cs /if ?>
430 
431 <?cs if:subcount(class.fields) ?>
432 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
433 <!-- =========== FIELD SUMMARY =========== -->
434 <table id="lfields" class="responsive properties">
435 <tr><th colspan="2"><h3>Fields</h3></th></tr>
436 <?cs call:write_field_summary(class.fields, 1) ?>
437 </table>
438 <?cs /if ?>
439 
440 <?cs # if there are inherited fields, write the table ?>
441 <?cs if:inhfields ?>
442 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
443 <!-- =========== FIELD SUMMARY =========== -->
444 <table id="inhfields" class="properties inhtable">
445 <tr><th><h3>Inherited fields</h3></th></tr>
446 <?cs each:cl=class.inherited ?>
447 <?cs if:subcount(cl.fields) ?>
448   <tr class="api apilevel-<?cs var:cl.since ?>" >
449   <td>
450   <?cs call:expando_trigger("inherited-fields-"+cl.qualified, "closed") ?>From
451   <?cs var:cl.kind ?>
452   <code>
453     <?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?>
454   </code>
455   <div id="inherited-fields-<?cs var:cl.qualified ?>">
456     <div id="inherited-fields-<?cs var:cl.qualified ?>-list"
457           class="jd-inheritedlinks">
458     </div>
459     <div id="inherited-fields-<?cs var:cl.qualified ?>-summary" style="display: none;">
460       <table class="jd-sumtable-expando responsive">
461       <?cs call:write_field_summary(cl.fields, cl.included) ?></table>
462     </div>
463   </div>
464   </td></tr>
465 <?cs /if ?>
466 <?cs /each ?>
467 </table>
468 <?cs /if ?>
469 
470 <?cs if:subcount(class.ctors.public) ?>
471 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
472 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
473 <table id="pubctors" class="responsive constructors">
474 <tr><th colspan="2"><h3>Public constructors</h3></th></tr>
475 <?cs call:write_method_summary(class.ctors.public, 1) ?>
476 </table>
477 <?cs /if ?>
478 
479 <?cs if:subcount(class.ctors.protected) ?>
480 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
481 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
482 <table id="proctors" class="responsive constructors">
483 <tr><th colspan="2"><h3>Protected constructors</h3></th></tr>
484 <?cs call:write_method_summary(class.ctors.protected, 1) ?>
485 </table>
486 <?cs /if ?>
487 
488 <?cs if:subcount(class.methods.public) ?>
489 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
490 <!-- ========== METHOD SUMMARY =========== -->
491 <table id="pubmethods" class="responsive methods">
492 <tr><th colspan="2"><h3>Public methods</h3></th></tr>
493 <?cs call:write_method_summary(class.methods.public, 1) ?>
494 </table>
495 <?cs /if ?>
496 
497 <?cs if:subcount(class.methods.protected) ?>
498 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
499 <!-- ========== METHOD SUMMARY =========== -->
500 <table id="promethods" class="reponsive methods">
501 <tr><th colspan="2"><h3>Protected methods</h3></th></tr>
502 <?cs call:write_method_summary(class.methods.protected, 1) ?>
503 </table>
504 <?cs /if ?>
505 
506 <?cs # if there are inherited methods, write the table ?>
507 <?cs if:inhmethods ?>
508 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
509 <!-- ========== METHOD SUMMARY =========== -->
510 <table id="inhmethods" class="methods inhtable">
511 <tr><th><h3>Inherited methods</h3></th></tr>
512 <?cs each:cl=class.inherited ?>
513 <?cs if:subcount(cl.methods) ?>
514 <tr class="api apilevel-<?cs var:cl.since ?>" >
515 <td colspan="2">
516 <?cs call:expando_trigger("inherited-methods-"+cl.qualified, "closed") ?>From
517 <?cs var:cl.kind ?>
518 <code>
519   <?cs if:cl.included ?>
520     <a href="<?cs var:toroot ?><?cs var:cl.link ?>"><?cs var:cl.qualified ?></a>
521   <?cs elif:cl.federated ?>
522     <a href="<?cs var:cl.link ?>"><?cs var:cl.qualified ?></a>
523   <?cs else ?>
524     <?cs var:cl.qualified ?>
525   <?cs /if ?>
526 </code>
527 <div id="inherited-methods-<?cs var:cl.qualified ?>">
528   <div id="inherited-methods-<?cs var:cl.qualified ?>-list"
529         class="jd-inheritedlinks">
530   </div>
531   <div id="inherited-methods-<?cs var:cl.qualified ?>-summary" style="display: none;">
532     <table class="jd-sumtable-expando responsive">
533       <?cs call:write_method_summary(cl.methods, cl.included) ?>
534     </table>
535   </div>
536 </div>
537 </td></tr>
538 <?cs /if ?>
539 <?cs /each ?>
540 </table>
541 <?cs /if ?>
542 <?cs /if ?>
543 <?cs
544 ################
545 # CLASS DETAILS
546 ################
547 ?>
548 <!-- XML Attributes -->
549 <?cs if:subcount(class.attrs) ?>
550 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
551 <!-- ========= FIELD DETAIL ======== -->
552 <h2 class="api-section">XML attributes</h2>
553 <?cs call:write_attr_details(class.attrs) ?>
554 <?cs /if ?>
555 
556 <!-- Enum Values -->
557 <?cs if:subcount(class.enumConstants) ?>
558 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
559 <!-- ========= ENUM CONSTANTS DETAIL ======== -->
560 <h2 class="api-section">Enum values</h2>
561 <?cs call:write_field_details(class.enumConstants) ?>
562 <?cs /if ?>
563 
564 <!-- Constants -->
565 <?cs if:subcount(class.constants) ?>
566 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
567 <!-- ========= ENUM CONSTANTS DETAIL ======== -->
568 <h2 class="api-section">Constants</h2>
569 <?cs call:write_field_details(class.constants) ?>
570 <?cs /if ?>
571 
572 <!-- Fields -->
573 <?cs if:subcount(class.fields) ?>
574 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
575 <!-- ========= FIELD DETAIL ======== -->
576 <h2 class="api-section">Fields</h2>
577 <?cs call:write_field_details(class.fields) ?>
578 <?cs /if ?>
579 
580 <!-- Public ctors -->
581 <?cs if:subcount(class.ctors.public) ?>
582 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
583 <!-- ========= CONSTRUCTOR DETAIL ======== -->
584 <h2 class="api-section">Public constructors</h2>
585 <?cs call:write_method_details(class.ctors.public) ?>
586 <?cs /if ?>
587 
588 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
589 <!-- ========= CONSTRUCTOR DETAIL ======== -->
590 <!-- Protected ctors -->
591 <?cs if:subcount(class.ctors.protected) ?>
592 <h2 class="api-section">Protected constructors</h2>
593 <?cs call:write_method_details(class.ctors.protected) ?>
594 <?cs /if ?>
595 
596 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
597 <!-- ========= METHOD DETAIL ======== -->
598 <!-- Public methdos -->
599 <?cs if:subcount(class.methods.public) ?>
600 <h2 class="api-section">Public methods</h2>
601 <?cs call:write_method_details(class.methods.public) ?>
602 <?cs /if ?>
603 
604 <?cs # this next line must be exactly like this to be parsed by eclipse ?>
605 <!-- ========= METHOD DETAIL ======== -->
606 <?cs if:subcount(class.methods.protected) ?>
607 <h2 class="api-section">Protected methods</h2>
608 <?cs call:write_method_details(class.methods.protected) ?>
609 <?cs /if ?>
610 
611 <?cs # the next two lines must be exactly like this to be parsed by eclipse ?>
612 <!-- ========= END OF CLASS DATA ========= -->
613 
614 </div><!-- end jd-content -->
615 
616 <?cs if:devsite ?>
617 
618 <div class="data-reference-resources-wrapper">
619   <?cs if:subcount(class.package) ?>
620   <ul data-reference-resources>
621     <?cs call:list("Annotations", class.package.annotations) ?>
622     <?cs call:list("Interfaces", class.package.interfaces) ?>
623     <?cs call:list("Classes", class.package.classes) ?>
624     <?cs call:list("Enums", class.package.enums) ?>
625     <?cs call:list("Exceptions", class.package.exceptions) ?>
626     <?cs call:list("Errors", class.package.errors) ?>
627   </ul>
628   <?cs elif:subcount(package) ?>
629   <ul data-reference-resources>
630     <?cs call:class_link_list("Annotations", package.annotations) ?>
631     <?cs call:class_link_list("Interfaces", package.interfaces) ?>
632     <?cs call:class_link_list("Classes", package.classes) ?>
633     <?cs call:class_link_list("Enums", package.enums) ?>
634     <?cs call:class_link_list("Exceptions", package.exceptions) ?>
635     <?cs call:class_link_list("Errors", package.errors) ?>
636   </ul>
637   <?cs /if ?>
638 </div>
639 <?cs /if ?>
640 
641 <?cs if:!devsite ?>
642 <?cs include:"footer.cs" ?>
643 <?cs include:"trailer.cs" ?>
644 <?cs /if ?>
645 </body>
646 </html>
647