Source code: com/puppycrawl/tools/checkstyle/checks/blocks/BlockOption.java
1 ////////////////////////////////////////////////////////////////////////////////
2 // checkstyle: Checks Java source code for adherence to a set of rules.
3 // Copyright (C) 2001-2003 Oliver Burn
4 //
5 // This library is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU Lesser General Public
7 // License as published by the Free Software Foundation; either
8 // version 2.1 of the License, or (at your option) any later version.
9 //
10 // This library 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 library; if not, write to the Free Software
17 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 ////////////////////////////////////////////////////////////////////////////////
19 package com.puppycrawl.tools.checkstyle.checks.blocks;
20
21 import com.puppycrawl.tools.checkstyle.checks.AbstractOption;
22 import java.util.HashMap;
23 import java.util.Map;
24
25 /**
26 * Represents the policy for checking block statements.
27 * @see com.puppycrawl.tools.checkstyle.checks.blocks.EmptyBlockCheck
28 * @author Rick Giles
29 */
30 public final class BlockOption
31 extends AbstractOption
32 {
33 /** maps from a string representation to an option */
34 private static final Map STR_TO_OPT = new HashMap();
35
36 /**
37 * Represents the policy that there is some text in the block. For example:
38 *
39 * <pre>
40 * catch (Exception ex) {
41 * // This is a bad coding practice
42 * }
43 * </pre>
44 */
45 public static final BlockOption TEXT = new BlockOption("text");
46
47 /**
48 * Represents the policy that there is a statement in the block. For
49 * example:
50 *
51 * <pre>
52 * finally {
53 * lock.release();
54 * }
55 * </pre>
56 */
57 public static final BlockOption STMT = new BlockOption("stmt");
58
59 /**
60 * Creates a new <code>BlockOption</code> instance.
61 *
62 * @param aStrRep the string representation
63 */
64 private BlockOption(String aStrRep)
65 {
66 super(aStrRep);
67 }
68
69 /** @see com.puppycrawl.tools.checkstyle.checks.AbstractOption */
70 protected Map getStrToOpt()
71 {
72 return STR_TO_OPT;
73 }
74 }