1. Project Clover database Sat Feb 2 2019 06:45:20 CET
  2. Package org.xwiki.rendering.listener

File CompositeListener.java

 

Coverage histogram

../../../../img/srcFileCovDistChart2.png
83% of files have more coverage

Code metrics

0
108
55
1
521
389
55
0.51
1.96
55
1

Classes

Class Line # Actions
CompositeListener 35 108 0% 55 129
0.2085889620.9%
 

Contributing tests

This file is covered by 109 tests. .

Source view

1    /*
2    * See the NOTICE file distributed with this work for additional
3    * information regarding copyright ownership.
4    *
5    * This is free software; you can redistribute it and/or modify it
6    * under the terms of the GNU Lesser General Public License as
7    * published by the Free Software Foundation; either version 2.1 of
8    * the License, or (at your option) any later version.
9    *
10    * This software is distributed in the hope that it will be useful,
11    * but WITHOUT ANY WARRANTY; without even the implied warranty of
12    * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13    * Lesser General Public License for more details.
14    *
15    * You should have received a copy of the GNU Lesser General Public
16    * License along with this software; if not, write to the Free
17    * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
18    * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
19    */
20    package org.xwiki.rendering.listener;
21   
22    import java.util.ArrayList;
23    import java.util.List;
24    import java.util.Map;
25   
26    import org.xwiki.rendering.listener.reference.ResourceReference;
27    import org.xwiki.rendering.syntax.Syntax;
28   
29    /**
30    * Send events to a list of {@link Listener}s.
31    *
32    * @version $Id: f555b67594daeeb5442991233eec19bd1ee048f4 $
33    * @since 2.1M1
34    */
 
35    public class CompositeListener implements Listener
36    {
37    /**
38    * The listeners.
39    */
40    private List<Listener> listeners = new ArrayList<Listener>();
41   
42    /**
43    * Add a nex listener to the list.
44    *
45    * @param listener a listener
46    */
 
47  29869 toggle public void addListener(Listener listener)
48    {
49  29871 this.listeners.add(listener);
50    }
51   
52    /**
53    * Get listener at the provided position in the list.
54    *
55    * @param i the index of the listener in the list
56    * @return the listener
57    */
 
58  29871 toggle public Listener getListener(int i)
59    {
60  29879 return this.listeners.get(i);
61    }
62   
 
63  0 toggle @Override
64    public void beginDefinitionDescription()
65    {
66  0 for (Listener listener : this.listeners) {
67  0 listener.beginDefinitionDescription();
68    }
69    }
70   
 
71  0 toggle @Override
72    public void beginDefinitionList(Map<String, String> parameters)
73    {
74  0 for (Listener listener : this.listeners) {
75  0 listener.beginDefinitionList(parameters);
76    }
77    }
78   
 
79  0 toggle @Override
80    public void beginDefinitionTerm()
81    {
82  0 for (Listener listener : this.listeners) {
83  0 listener.beginDefinitionTerm();
84    }
85    }
86   
87    /**
88    * {@inheritDoc}
89    *
90    * @since 3.0M2
91    */
 
92  0 toggle @Override
93    public void beginDocument(MetaData metadata)
94    {
95  0 for (Listener listener : this.listeners) {
96  0 listener.beginDocument(metadata);
97    }
98    }
99   
 
100  97 toggle @Override
101    public void beginFormat(Format format, Map<String, String> parameters)
102    {
103  97 for (Listener listener : this.listeners) {
104  194 listener.beginFormat(format, parameters);
105    }
106    }
107   
 
108  0 toggle @Override
109    public void beginGroup(Map<String, String> parameters)
110    {
111  0 for (Listener listener : this.listeners) {
112  0 listener.beginGroup(parameters);
113    }
114    }
115   
 
116  0 toggle @Override
117    public void beginHeader(HeaderLevel level, String id, Map<String, String> parameters)
118    {
119  0 for (Listener listener : this.listeners) {
120  0 listener.beginHeader(level, id, parameters);
121    }
122    }
123   
 
124  0 toggle @Override
125    public void beginList(ListType type, Map<String, String> parameters)
126    {
127  0 for (Listener listener : this.listeners) {
128  0 listener.beginList(type, parameters);
129    }
130    }
131   
 
132  0 toggle @Override
133    public void beginListItem()
134    {
135  0 for (Listener listener : this.listeners) {
136  0 listener.beginListItem();
137    }
138    }
139   
 
140  0 toggle @Override
141    public void beginListItem(Map<String, String> parameters)
142    {
143  0 for (Listener listener : this.listeners) {
144  0 listener.beginListItem(parameters);
145    }
146    }
147   
 
148  0 toggle @Override
149    public void beginMacroMarker(String name, Map<String, String> macroParameters, String content, boolean isInline)
150    {
151  0 for (Listener listener : this.listeners) {
152  0 listener.beginMacroMarker(name, macroParameters, content, isInline);
153    }
154    }
155   
 
156  0 toggle @Override
157    public void beginParagraph(Map<String, String> parameters)
158    {
159  0 for (Listener listener : this.listeners) {
160  0 listener.beginParagraph(parameters);
161    }
162    }
163   
 
164  0 toggle @Override
165    public void beginQuotation(Map<String, String> parameters)
166    {
167  0 for (Listener listener : this.listeners) {
168  0 listener.beginQuotation(parameters);
169    }
170    }
171   
 
172  0 toggle @Override
173    public void beginQuotationLine()
174    {
175  0 for (Listener listener : this.listeners) {
176  0 listener.beginQuotationLine();
177    }
178    }
179   
 
180  0 toggle @Override
181    public void beginSection(Map<String, String> parameters)
182    {
183  0 for (Listener listener : this.listeners) {
184  0 listener.beginSection(parameters);
185    }
186    }
187   
 
188  0 toggle @Override
189    public void beginTable(Map<String, String> parameters)
190    {
191  0 for (Listener listener : this.listeners) {
192  0 listener.beginTable(parameters);
193    }
194    }
195   
 
196  0 toggle @Override
197    public void beginTableCell(Map<String, String> parameters)
198    {
199  0 for (Listener listener : this.listeners) {
200  0 listener.beginTableCell(parameters);
201    }
202    }
203   
 
204  0 toggle @Override
205    public void beginTableHeadCell(Map<String, String> parameters)
206    {
207  0 for (Listener listener : this.listeners) {
208  0 listener.beginTableHeadCell(parameters);
209    }
210    }
211   
 
212  0 toggle @Override
213    public void beginTableRow(Map<String, String> parameters)
214    {
215  0 for (Listener listener : this.listeners) {
216  0 listener.beginTableRow(parameters);
217    }
218    }
219   
 
220  0 toggle @Override
221    public void endDefinitionDescription()
222    {
223  0 for (Listener listener : this.listeners) {
224  0 listener.endDefinitionDescription();
225    }
226    }
227   
 
228  0 toggle @Override
229    public void endDefinitionList(Map<String, String> parameters)
230    {
231  0 for (Listener listener : this.listeners) {
232  0 listener.endDefinitionList(parameters);
233    }
234    }
235   
 
236  0 toggle @Override
237    public void endDefinitionTerm()
238    {
239  0 for (Listener listener : this.listeners) {
240  0 listener.endDefinitionTerm();
241    }
242    }
243   
244    /**
245    * {@inheritDoc}
246    *
247    * @since 3.0M2
248    */
 
249  0 toggle @Override
250    public void endDocument(MetaData metadata)
251    {
252  0 for (Listener listener : this.listeners) {
253  0 listener.endDocument(metadata);
254    }
255    }
256   
 
257  97 toggle @Override
258    public void endFormat(Format format, Map<String, String> parameters)
259    {
260  97 for (Listener listener : this.listeners) {
261  194 listener.endFormat(format, parameters);
262    }
263    }
264   
 
265  0 toggle @Override
266    public void endGroup(Map<String, String> parameters)
267    {
268  0 for (Listener listener : this.listeners) {
269  0 listener.endGroup(parameters);
270    }
271    }
272   
 
273  0 toggle @Override
274    public void endHeader(HeaderLevel level, String id, Map<String, String> parameters)
275    {
276  0 for (Listener listener : this.listeners) {
277  0 listener.endHeader(level, id, parameters);
278    }
279    }
280   
 
281  0 toggle @Override
282    public void endList(ListType type, Map<String, String> parameters)
283    {
284  0 for (Listener listener : this.listeners) {
285  0 listener.endList(type, parameters);
286    }
287    }
288   
 
289  0 toggle @Override
290    public void endListItem()
291    {
292  0 for (Listener listener : this.listeners) {
293  0 listener.endListItem();
294    }
295    }
296   
 
297  0 toggle @Override
298    public void endListItem(Map<String, String> parameters)
299    {
300  0 for (Listener listener : this.listeners) {
301  0 listener.endListItem(parameters);
302    }
303    }
304   
 
305  0 toggle @Override
306    public void endMacroMarker(String name, Map<String, String> macroParameters, String content, boolean isInline)
307    {
308  0 for (Listener listener : this.listeners) {
309  0 listener.endMacroMarker(name, macroParameters, content, isInline);
310    }
311    }
312   
 
313  0 toggle @Override
314    public void endParagraph(Map<String, String> parameters)
315    {
316  0 for (Listener listener : this.listeners) {
317  0 listener.endParagraph(parameters);
318    }
319    }
320   
 
321  0 toggle @Override
322    public void endQuotation(Map<String, String> parameters)
323    {
324  0 for (Listener listener : this.listeners) {
325  0 listener.endQuotation(parameters);
326    }
327    }
328   
 
329  0 toggle @Override
330    public void endQuotationLine()
331    {
332  0 for (Listener listener : this.listeners) {
333  0 listener.endQuotationLine();
334    }
335    }
336   
 
337  0 toggle @Override
338    public void endSection(Map<String, String> parameters)
339    {
340  0 for (Listener listener : this.listeners) {
341  0 listener.endSection(parameters);
342    }
343    }
344   
 
345  0 toggle @Override
346    public void endTable(Map<String, String> parameters)
347    {
348  0 for (Listener listener : this.listeners) {
349  0 listener.endTable(parameters);
350    }
351    }
352   
 
353  0 toggle @Override
354    public void endTableCell(Map<String, String> parameters)
355    {
356  0 for (Listener listener : this.listeners) {
357  0 listener.endTableCell(parameters);
358    }
359    }
360   
 
361  0 toggle @Override
362    public void endTableHeadCell(Map<String, String> parameters)
363    {
364  0 for (Listener listener : this.listeners) {
365  0 listener.endTableHeadCell(parameters);
366    }
367    }
368   
 
369  0 toggle @Override
370    public void endTableRow(Map<String, String> parameters)
371    {
372  0 for (Listener listener : this.listeners) {
373  0 listener.endTableRow(parameters);
374    }
375    }
376   
 
377  0 toggle @Override
378    public void onEmptyLines(int count)
379    {
380  0 for (Listener listener : this.listeners) {
381  0 listener.onEmptyLines(count);
382    }
383    }
384   
 
385  0 toggle @Override
386    public void onHorizontalLine(Map<String, String> parameters)
387    {
388  0 for (Listener listener : this.listeners) {
389  0 listener.onHorizontalLine(parameters);
390    }
391    }
392   
 
393  0 toggle @Override
394    public void onId(String name)
395    {
396  0 for (Listener listener : this.listeners) {
397  0 listener.onId(name);
398    }
399    }
400   
 
401  3150 toggle @Override
402    public void onMacro(String id, Map<String, String> parameters, String content, boolean inline)
403    {
404  3150 for (Listener listener : this.listeners) {
405  6300 listener.onMacro(id, parameters, content, inline);
406    }
407    }
408   
 
409  18 toggle @Override
410    public void onNewLine()
411    {
412  18 for (Listener listener : this.listeners) {
413  36 listener.onNewLine();
414    }
415    }
416   
 
417  0 toggle @Override
418    public void onRawText(String text, Syntax syntax)
419    {
420  0 for (Listener listener : this.listeners) {
421  0 listener.onRawText(text, syntax);
422    }
423    }
424   
 
425  13472 toggle @Override
426    public void onSpace()
427    {
428  13476 for (Listener listener : this.listeners) {
429  26949 listener.onSpace();
430    }
431    }
432   
 
433  3359 toggle @Override
434    public void onSpecialSymbol(char symbol)
435    {
436  3359 for (Listener listener : this.listeners) {
437  6718 listener.onSpecialSymbol(symbol);
438    }
439    }
440   
 
441  0 toggle @Override
442    public void onVerbatim(String content, boolean inline, Map<String, String> parameters)
443    {
444  0 for (Listener listener : this.listeners) {
445  0 listener.onVerbatim(content, inline, parameters);
446    }
447    }
448   
 
449  27682 toggle @Override
450    public void onWord(String word)
451    {
452  27684 for (Listener listener : this.listeners) {
453  55360 listener.onWord(word);
454    }
455    }
456   
457    /**
458    * {@inheritDoc}
459    *
460    * @since 2.5RC1
461    */
 
462  625 toggle @Override
463    public void beginLink(ResourceReference reference, boolean freestanding, Map<String, String> parameters)
464    {
465  625 for (Listener listener : this.listeners) {
466  1250 listener.beginLink(reference, freestanding, parameters);
467    }
468    }
469   
470    /**
471    * {@inheritDoc}
472    *
473    * @since 2.5RC1
474    */
 
475  625 toggle @Override
476    public void endLink(ResourceReference reference, boolean freestanding, Map<String, String> parameters)
477    {
478  625 for (Listener listener : this.listeners) {
479  1250 listener.endLink(reference, freestanding, parameters);
480    }
481    }
482   
483    /**
484    * {@inheritDoc}
485    *
486    * @since 2.5RC1
487    */
 
488  20 toggle @Override
489    public void onImage(ResourceReference reference, boolean freestanding, Map<String, String> parameters)
490    {
491  20 for (Listener listener : this.listeners) {
492  40 listener.onImage(reference, freestanding, parameters);
493    }
494    }
495   
496    /**
497    * {@inheritDoc}
498    *
499    * @since 3.0M2
500    */
 
501  0 toggle @Override
502    public void beginMetaData(MetaData metadata)
503    {
504  0 for (Listener listener : this.listeners) {
505  0 listener.beginMetaData(metadata);
506    }
507    }
508   
509    /**
510    * {@inheritDoc}
511    *
512    * @since 3.0M2
513    */
 
514  0 toggle @Override
515    public void endMetaData(MetaData metadata)
516    {
517  0 for (Listener listener : this.listeners) {
518  0 listener.endMetaData(metadata);
519    }
520    }
521    }