| Index: third_party/checkstyle/java/rules/mozilla_checks.xml | 
| diff --git a/third_party/checkstyle/java/rules/mozilla_checks.xml b/third_party/checkstyle/java/rules/mozilla_checks.xml | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..a9219e846f1c6c2690ae9ddfa5533664cb748d53 | 
| --- /dev/null | 
| +++ b/third_party/checkstyle/java/rules/mozilla_checks.xml | 
| @@ -0,0 +1,172 @@ | 
| +<?xml version="1.0"?> | 
| +<!DOCTYPE module PUBLIC | 
| +    "-//Puppy Crawl//DTD Check Configuration 1.2//EN" | 
| +    "http://www.puppycrawl.com/dtds/configuration_1_2.dtd"> | 
| + | 
| +<!-- | 
| + | 
| +    https://github.com/mozilla-services/mozilla-style/blob/master/java/checkstyle.xml | 
| + | 
| +    This file contains a Checkstyle configuration that checks for compliance with | 
| +    Mozilla's Java style conventions. | 
| + | 
| +    The file defines the modules and properties in alpabetical order. Each property | 
| +    should be documented with what it does. | 
| + | 
| +--> | 
| + | 
| +<module name="Checker"> | 
| +  <module name="TreeWalker"> | 
| + | 
| +    <!-- Annotations. http://checkstyle.sourceforge.net/config_annotation.html --> | 
| +    <module name="AnnotationUseStyle"/> | 
| +    <module name="MissingDeprecated"/> | 
| +    <module name="MissingOverride"/> | 
| +    <module name="SuppressWarnings"/> | 
| + | 
| +    <!-- Block checks. See http://checkstyle.sourceforge.net/config_blocks.html --> | 
| +    <module name="AvoidNestedBlocks"/> | 
| +    <module name="EmptyBlock"/> | 
| +    <module name="LeftCurly"/> | 
| +    <module name="NeedBraces"/> | 
| +    <module name="RightCurly"/> | 
| + | 
| +    <!-- Class Design. http://checkstyle.sourceforge.net/config_design.html --> | 
| +    <module name="DesignForExtension"/> | 
| +    <module name="FinalClass"/> | 
| +    <module name="HideUtilityClassConstructor"/> | 
| +    <module name="InterfaceIsType"/> | 
| +    <module name="InnerTypeLast"/> | 
| +    <module name="MutableException"/> | 
| +    <module name="VisibilityModifier"/> | 
| + | 
| +    <!-- Common coding problems. See http://checkstyle.sf.net/config_coding.html --> | 
| +    <module name="ArrayTrailingComma"/> | 
| +    <module name="CovariantEquals"/> | 
| +    <module name="DeclarationOrder"/> | 
| +    <module name="DefaultComesLast"/> | 
| +    <module name="EmptyStatement"/> | 
| +    <module name="EqualsHashCode"/> | 
| +    <module name="EqualsAvoidNull"/> | 
| +    <module name="ExplicitInitialization"/> | 
| +    <module name="HiddenField"/> | 
| +    <module name="IllegalCatch"/> | 
| +    <module name="IllegalInstantiation"/> | 
| +    <module name="IllegalThrows"/> | 
| +    <module name="IllegalToken"/> | 
| +    <module name="IllegalType"/> | 
| +    <module name="InnerAssignment"/> | 
| +    <module name="MagicNumber"/> | 
| +    <module name="MissingCtor"/> | 
| +    <module name="MissingSwitchDefault"/> | 
| +    <module name="ModifiedControlVariable"/> | 
| +    <module name="MultipleStringLiterals"/> | 
| +    <module name="MultipleVariableDeclarations"/> | 
| +    <module name="NestedForDepth"/> | 
| +    <module name="NoClone"/> | 
| +    <module name="NoFinalizer"/> | 
| +    <module name="OneStatementPerLine"/> | 
| +    <module name="PackageDeclaration"/> | 
| +    <module name="ParameterAssignment"/> | 
| +    <module name="SimplifyBooleanExpression"/> | 
| +    <module name="SimplifyBooleanReturn"/> | 
| +    <module name="StringLiteralEquality"/> | 
| +    <module name="UnnecessaryParentheses"/> | 
| + | 
| +    <!-- Duplicate code. http://checkstyle.sourceforge.net/config_duplicates.html --> | 
| + | 
| +    <!-- Header. See http://checkstyle.sourceforge.net/config_header.html --> | 
| +    <!-- TODO detect MPL 2.0 in all files. --> | 
| + | 
| +    <!-- Imports. See http://checkstyle.sf.net/config_import.html --> | 
| +    <module name="AvoidStarImport"/> | 
| +    <module name="IllegalImport"/> | 
| +    <module name="ImportOrder"> | 
| +      <!-- Android's import guidelines: http://source.android.com/source/code-style.html#order-import-statements --> | 
| +      <property name="groups" value="android,ch,com,net,org,java,javax"/> | 
| +      <property name="separated" value="true"/> | 
| +    </module> | 
| +    <module name="AvoidStaticImport"/> | 
| +    <module name="RedundantImport"/> | 
| +    <module name="UnusedImports"/> | 
| + | 
| +    <!-- Javadoc. See http://checkstyle.sourceforge.net/config_javadoc.html --> | 
| +    <module name="JavadocMethod"/> | 
| +    <module name="JavadocStyle"/> | 
| +    <module name="JavadocType"/> | 
| +    <module name="JavadocVariable"/> | 
| + | 
| +    <!-- Metrics. See http://checkstyle.sourceforge.net/config_metrics.html --> | 
| + | 
| +    <!-- Miscellaneous. See http://checkstyle.sourceforge.net/config_misc.html --> | 
| +    <module name="ArrayTypeStyle"/> | 
| +    <module name="Indentation"/> | 
| +    <module name="OuterTypeFilename"/> | 
| +    <module name="TodoComment"> | 
| +      <property name="format" value="FIX ?ME|TO-?DO|XXX"/> | 
| +    </module> | 
| +    <module name="UpperEll"/> | 
| + | 
| +    <!-- Modifiers. See http://checkstyle.sourceforge.net/config_modifier.html --> | 
| +    <module name="ModifierOrder"/> | 
| +    <module name="RedundantModifier"/> | 
| + | 
| +    <!-- Naming Conventions. See http://checkstyle.sourceforge.net/config_naming.html --> | 
| +    <module name="ConstantName"/> | 
| +    <module name="LocalFinalVariableName"/> | 
| +    <module name="LocalVariableName"/> | 
| +    <module name="MemberName"> | 
| +      <!-- We require member names to be prefixed with 'm'. --> | 
| +      <property name="format" value="^m[A-Z][a-zA-Z0-9]*$" /> | 
| +    </module> | 
| +    <module name="MethodName"/> | 
| +    <module name="PackageName"/> | 
| +    <module name="ParameterName"/> | 
| +    <module name="StaticVariableName"> | 
| +      <!-- We require static member names to be prefixed with 's'. --> | 
| +      <property name="format" value="^s[A-Z][a-zA-Z0-9]*$" /> | 
| +    </module> | 
| +    <module name="TypeName"/> | 
| + | 
| +    <!-- Regular expressions. See http://checkstyle.sourceforge.net/config_regexp.html --> | 
| + | 
| +    <!-- Size violations. See http://checkstyle.sourceforge.net/config_sizes.html --> | 
| +    <module name="AnonInnerLength"/> | 
| +    <module name="LineLength"> | 
| +      <property name="max" value="100" /> | 
| +    </module> | 
| +    <module name="MethodCount"/> | 
| +    <module name="MethodLength"/> | 
| +    <module name="OuterTypeNumber"/> | 
| +    <module name="ParameterNumber"/> | 
| + | 
| +    <!-- Whitespace. See http://checkstyle.sourceforge.net/config_whitespace.html --> | 
| +    <module name="EmptyForInitializerPad"/> | 
| +    <module name="EmptyForIteratorPad"/> | 
| +    <module name="GenericWhitespace"/> | 
| +    <module name="MethodParamPad"/> | 
| +    <module name="NoWhitespaceAfter"/> | 
| +    <module name="NoWhitespaceBefore"/> | 
| +    <module name="OperatorWrap"/> | 
| +    <module name="ParenPad"/> | 
| +    <module name="TypecastParenPad"/> | 
| +    <module name="WhitespaceAfter"/> | 
| +    <module name="WhitespaceAround"/> | 
| + | 
| +  </module> | 
| + | 
| +  <module name="FileLength"/> | 
| + | 
| +  <module name="FileTabCharacter"> | 
| +    <property name="eachLine" value="true"/> | 
| +  </module> | 
| + | 
| +  <module name="NewlineAtEndOfFile"/> | 
| + | 
| +  <module name="RegexpSingleline"> | 
| +    <!-- Check for trailing whitespace. --> | 
| +    <property name="format" value="\s+$"/> | 
| +    <property name="message" value="Line has trailing spaces."/> | 
| +  </module> | 
| + | 
| +</module> | 
|  |