<?xml version="1.0" encoding="UTF-8" ?>
<!--
- Maven2(or3) POM definition file
+ Maven3 POM definition file
-->
<project
<mailingLists/>
<prerequisites>
- <maven>2.2</maven>
+ <maven>3.3</maven>
</prerequisites>
<modules/>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>4.11</version>
+ <version>4.12</version>
<scope>test</scope>
</dependency>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
- <version>1.3.1</version>
+ <version>1.4.1</version>
<configuration>
<rules>
<requireMavenVersion>
- <version>[3.0,)</version>
+ <version>[3.3,)</version>
</requireMavenVersion>
<requireJavaVersion>
<version>[1.6,)</version>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
- <version>2.4</version>
+ <version>2.5.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
- <version>2.5</version>
+ <version>3.0.0</version>
<configuration>
<filesets>
<fileset>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
- <version>3.1</version>
+ <version>3.5.1</version>
<configuration>
<source>1.6</source> <!-- for NetBeans IDE -->
<target>1.6</target>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
- <version>2.4</version>
+ <version>3.0.0</version>
<configuration>
<archive>
<manifest>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
- <version>2.1</version>
+ <version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
- <version>2.4</version>
+ <version>2.6</version>
<configuration>
<archiveBaseDirectory>.</archiveBaseDirectory>
<descriptors>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
- <version>2.2.1</version>
+ <version>3.0.0</version>
<configuration>
<includePom>true</includePom>
<archive>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
- <version>2.6</version>
+ <version>3.0.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
- <version>2.16</version>
+ <version>2.19.1</version>
<configuration>
<skipTests>false</skipTests>
<enableAssertions>true</enableAssertions>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
- <version>3.3</version>
+ <version>3.5.1</version>
<configuration>
<generateReports>true</generateReports>
<locales>ja</locales>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
- <version>2.10</version>
+ <version>2.15</version>
<!-- config from property value -->
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
- <version>3.0.1</version>
+ <version>3.6</version>
<configuration>
<targetJdk>${maven.compiler.target}</targetJdk>
<rulesets>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
- <version>2.5.2</version>
+ <version>3.0.3</version>
<configuration>
<effort>Max</effort>
<threshold>Low</threshold>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
- <version>2.5.2</version>
+ <version>2.7</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<formats>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
- <version>2.7</version>
+ <version>2.9</version>
<configuration>
<linkOnly>true</linkOnly>
<offline>true</offline>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
- <version>2.9.1</version>
+ <version>2.10.3</version>
<configuration>
<skip>false</skip>
<notimestamp>true</notimestamp>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
- <version>2.3</version>
+ <version>2.5</version>
<configuration>
<skip>false</skip>
</configuration>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
- <version>2.16</version>
+ <version>2.19.1</version>
<configuration>
<showSuccess>false</showSuccess>
</configuration>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
- <version>2.5.2</version>
+ <version>2.7</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<formats>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
- <version>2.10</version>
+ <version>2.15</version>
<configuration>
<skip>false</skip>
<!-- config from property value -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
- <version>3.0.1</version>
+ <version>3.6</version>
<configuration>
<skip>false</skip>
<targetJdk>${maven.compiler.target}</targetJdk>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
- <version>2.5.2</version>
+ <version>3.0.3</version>
<configuration>
<skip>false</skip>
<effort>Max</effort>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>javancss-maven-plugin</artifactId>
- <version>2.0</version>
+ <version>2.1</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jdepend-maven-plugin</artifactId>
- <version>2.0-beta-2</version>
+ <version>2.0</version>
</plugin>
</plugins>
<!--
Checkstyle用チェック項目定義。
- Checkstyle 5.5 以降向けに記述。
+ Checkstyle 6.1 以降向けに記述。
[ http://checkstyle.sourceforge.net/ ]
<!-- Filters -->
<module name="SeverityMatchFilter" />
+ <module name="SuppressionCommentFilter" />
<module name="SuppressionFilter">
<property name="file" value="src/main/config/suppressions.xml" />
</module>
- <module name="SuppressionCommentFilter" />
+ <module name="SuppressWarningsFilter" />
<module name="SuppressWithNearbyCommentFilter" />
- <!-- Duplicate Code -->
- <module name="StrictDuplicateCode">
- <property name="min" value="20" />
- </module>
-
-
<!-- Headers -->
<module name="RegexpHeader">
<property name="header" value="^/\*$\n^ \*( .*)?$\n^ \*/$\n" />
<property name="fileExtensions" value="java" />
</module>
<module name="Translation" />
+ <module name="UniqueProperties" />
<!-- Regexp -->
+ <module name="RegexpMultiline">
+ <property name="format" value="[\u000b\f\u001a]" />
+ </module>
+<!--<module name="RegexpOnFilename" /> 6.15 or later -->
<module name="RegexpSingleline">
<property name="format" value="\s+$" />
- <property name="minimum" value="0" />
- <property name="maximum" value="0" />
+ </module>
+ <module name="RegexpSingleline">
+ <!-- scm conflict -->
+ <property name="format" value="<<<<<" />
</module>
<!-- Size Violations -->
- <module name="FileLength" />
+ <module name="FileLength">
+ <property name="max" value="2000"/>
+ </module>
<!-- Whitespace -->
<module name="TreeWalker">
- <module name="FileContentsHolder" />
+ <property name="tabWidth" value="8"/>
<!-- Annotations -->
+ <module name="AnnotationLocation" />
<module name="AnnotationUseStyle" />
<module name="MissingDeprecated" />
<module name="MissingOverride" />
<module name="PackageAnnotation" />
<module name="SuppressWarnings" />
+ <module name="SuppressWarningsHolder" />
<!-- Block Checks -->
-
+ <module name="AvoidNestedBlocks" />
<module name="EmptyBlock" />
+<!-- <module name="EmptyCatchBlock" /> 6.4 or later -->
<module name="LeftCurly" />
<module name="NeedBraces">
<property name="tokens" value="LITERAL_DO" />
</module>
<module name="RightCurly" />
- <module name="AvoidNestedBlocks" />
<!-- Class Design -->
- <module name="VisibilityModifier" />
+ <module name="DesignForExtension" />
<module name="FinalClass" />
- <module name="InterfaceIsType" />
<module name="HideUtilityClassConstructor" />
-<!-- <module name="DesignForExtension" /> -->
+ <module name="InnerTypeLast" />
+ <module name="InterfaceIsType" />
<module name="MutableException" />
+ <module name="OneTopLevelClass" />
<module name="ThrowsCount">
<property name="max" value="4" />
</module>
- <module name="InnerTypeLast" />
+ <module name="VisibilityModifier" />
<!-- Coding -->
<module name="ArrayTrailingComma" />
<module name="AvoidInlineConditionals" />
<module name="CovariantEquals" />
-<!-- <module name="DoubleCheckedLocking" /> 5.6 obsolete -->
+ <module name="DeclarationOrder" />
+ <module name="DefaultComesLast" />
<module name="EmptyStatement" />
<module name="EqualsAvoidNull" />
<module name="EqualsHashCode" />
-<!-- <module name="FinalLocalVariable" /> -->
+ <module name="ExplicitInitialization" />
+ <module name="FallThrough" />
+ <module name="FinalLocalVariable" />
<module name="HiddenField">
<property name="ignoreConstructorParameter" value="true" />
<property name="ignoreSetter" value="true" />
<property name="ignoreAbstractMethods" value="true" />
</module>
+ <module name="IllegalCatch" />
<module name="IllegalInstantiation" />
+ <module name="IllegalThrows" />
<module name="IllegalToken">
- <property name="tokens" value="LITERAL_NATIVE, STATIC_IMPORT" />
+ <property name="tokens" value="LITERAL_NATIVE" />
</module>
<module name="IllegalTokenText">
<property name="tokens" value="NUM_INT, NUM_LONG" />
- <property name="format" value="^0[^lx]" />
- <property name="ignoreCase" value="true" />
+ <property name="format" value="^0_*[0-7]" />
+ <property name="message" value="inhibit octal number" />
</module>
+ <module name="IllegalType" />
<module name="InnerAssignment" />
<module name="MagicNumber" />
+ <module name="MissingCtor" />
<module name="MissingSwitchDefault" />
<module name="ModifiedControlVariable" />
- <module name="RedundantThrows">
- <property name="allowUnchecked" value="true" />
- <property name="allowSubclasses" value="true" />
- </module>
+ <module name="MultipleStringLiterals" />
+ <module name="MultipleVariableDeclarations" />
<module name="SimplifyBooleanExpression" />
<module name="SimplifyBooleanReturn" />
<module name="StringLiteralEquality" />
<module name="NestedTryDepth" />
<module name="NoClone" />
<module name="NoFinalizer" />
- <module name="SuperClone" />
- <module name="SuperFinalize" />
- <module name="IllegalCatch" />
- <module name="IllegalThrows" />
+ <module name="OneStatementPerLine" />
+ <module name="OverloadMethodsDeclarationOrder" />
<module name="PackageDeclaration" />
- <module name="JUnitTestCase" />
- <module name="ReturnCount">
- <property name="max" value="5" />
- </module>
- <module name="IllegalType" />
- <module name="DeclarationOrder" />
<module name="ParameterAssignment" />
-<!-- <module name="ExplicitInitialization" /> -->
- <module name="DefaultComesLast" />
- <module name="MissingCtor" />
- <module name="FallThrough" />
- <module name="MultipleStringLiterals" />
- <module name="MultipleVariableDeclarations" />
<module name="RequireThis">
<property name="checkMethods" value="false" />
</module>
+ <module name="ReturnCount">
+ <property name="max" value="5" />
+ </module>
+ <module name="SimplifyBooleanExpression" />
+ <module name="SimplifyBooleanReturn" />
+ <module name="StringLiteralEquality" />
+ <module name="SuperClone" />
+ <module name="SuperFinalize" />
<module name="UnnecessaryParentheses" />
- <module name="OneStatementPerLine" />
+ <module name="VariableDeclarationUsageDistance">
+ <property name="allowedDistance" value="5" />
+ </module>
<!-- Imports -->
<module name="AvoidStarImport" />
<module name="AvoidStaticImport" />
+ <module name="CustomImportOrder" />
<module name="IllegalImport" />
+ <module name="ImportControl" />
+ <module name="ImportOrder" />
<module name="RedundantImport" />
<module name="UnusedImports" />
- <module name="ImportOrder" />
-<!-- <module name="ImportControl" /> -->
<!-- Javadoc Comments -->
- <module name="JavadocType" />
+ <module name="AtclauseOrder" />
<module name="JavadocMethod" />
- <module name="JavadocVariable">
- <property name="scope" value="protected" />
- </module>
+ <module name="JavadocParagraph" />
<module name="JavadocStyle">
<property
name="endOfSentenceFormat"
<property name="checkEmptyJavadoc" value="true" />
<property name="checkHtml" value="true" />
</module>
-<!-- <module name="WriteTag" /> -->
+ <module name="JavadocTagContinuationIndentation" />
+ <module name="JavadocType" />
+ <module name="JavadocVariable">
+ <property name="scope" value="protected" />
+ </module>
+ <module name="NonEmptyAtclauseDescription" />
+ <module name="SingleLineJavadoc" />
+ <module name="SummaryJavadocCheck" />
+ <module name="WriteTag" />
<!-- Metrics -->
<module name="ClassDataAbstractionCoupling" />
<module name="ClassFanOutComplexity" />
<module name="CyclomaticComplexity" />
- <module name="NPathComplexity" />
<module name="JavaNCSS" />
+ <module name="NPathComplexity" />
<!-- Miscellaneous -->
- <module name="TodoComment">
- <property name="format" value="TODO" />
- </module>
- <module name="UncommentedMain" />
- <module name="UpperEll" />
<module name="ArrayTypeStyle" />
-<!-- <module name="FinalParameters" /> -->
-<!-- <module name="DescendantToken" /> -->
-<!--
+ <module name="AvoidEscapedUnicodeCharacters">
+ <property name="allowEscapesForControlCharacters" value="true"/>
+ <property name="allowByTailComment" value="true"/>
+ <property name="allowIfAllCharactersEscaped" value="true"/>
+ <property name="allowNonPrintableEscapes" value="true"/>
+ </module>
+<!-- <module name="CommentsIndentation" /> 6.10 or later -->
+ <module name="DescendantToken" />
+ <module name="FileContentsHolder" />
+ <module name="FinalParameters" />
<module name="Indentation">
<property name="caseIndent" value="0" />
</module>
--->
-<!-- <module name="TrailingComment" /> -->
- <module name="Regexp">
- <property name="format" value="@author" />
- <property name="illegalPattern" value="true" />
- </module>
- <module name="Regexp">
- <property name="format" value="^ \* Copyright\(c\)" />
- </module>
- <module name="Regexp">
- <property name="format" value="^ \* License : The MIT License" />
- <property name="duplicateLimit" value="1" />
- </module>
<module name="OuterTypeFilename" />
+ <module name="TodoComment">
+ <property name="format" value="TODO" />
+ </module>
+ <module name="TrailingComment" />
+ <module name="UncommentedMain" />
+ <module name="UpperEll" />
<!-- Modifiers -->
<!-- Naming Conventions -->
+ <module name="AbbreviationAsWordInName" />
<module name="AbstractClassName">
<property
name="format"
value="^Abstract.*$|^.*Factory$|^.*Builder$|^.*Adapter$"
/>
</module>
+<!-- <module name="CatchParameterName" /> 6.14 or later -->
<module name="ClassTypeParameterName" />
<module name="ConstantName" />
+ <module name="InterfaceTypeParameterName" />
<module name="LocalFinalVariableName">
<property name="format" value="^[a-z][_a-zA-Z0-9]*$" />
</module>
<module name="TypeName" />
+ <!-- Regex -->
+
+ <module name="Regexp">
+ <property name="format" value="@author" />
+ <property name="illegalPattern" value="true" />
+ </module>
+ <module name="Regexp">
+ <property name="format" value="^ \* Copyright\(c\)" />
+ </module>
+ <module name="Regexp">
+ <property name="format" value="^ \* License : The MIT License" />
+ <property name="duplicateLimit" value="1" />
+ </module>
+ <module name="RegexpSinglelineJava">
+ <property name="format" value="\u0000" />
+ </module>
+
+
<!-- Size Violations -->
+ <module name="AnonInnerLength" />
<module name="ExecutableStatementCount" />
<module name="LineLength">
<property name="max" value="78" />
</module>
+ <module name="MethodCount" />
<module name="MethodLength" />
- <module name="AnonInnerLength" />
- <module name="ParameterNumber" />
<module name="OuterTypeNumber" />
- <module name="MethodCount" />
+ <module name="ParameterNumber" />
<!-- Whitespace -->
- <module name="GenericWhitespace" />
<module name="EmptyForInitializerPad" />
<module name="EmptyForIteratorPad" />
+ <module name="EmptyLineSeparator">
+ <property
+ name="tokens"
+ value="PACKAGE_DEF,
+ IMPORT,
+ CLASS_DEF,
+ INTERFACE_DEF,
+ ENUM_DEF,
+ STATIC_INIT,
+ INSTANCE_INIT,
+ METHOD_DEF,
+ CTOR_DEF,
+ "
+ />
+ </module>
+ <module name="GenericWhitespace" />
<module name="MethodParamPad">
<property
name="tokens"
value="CTOR_DEF, LITERAL_NEW, METHOD_DEF, SUPER_CTOR_CALL"
/>
</module>
+ <module name="NoLineWrap" />
<module name="NoWhitespaceAfter">
<property name="allowLineBreaks" value="false" />
- <property name="tokens" value="DEC, DOT, INC" />
+ <property name="tokens" value="INC, DEC, DOT" />
</module>
<module name="NoWhitespaceBefore">
<property name="allowLineBreaks" value="false" />
- <property name="tokens" value="POST_DEC, POST_INC" />
+ <property name="tokens" value="COMMA, POST_INC, POST_DEC" />
</module>
<module name="NoWhitespaceBefore">
<property name="allowLineBreaks" value="true" />
BAND_ASSIGN, BOR_ASSIGN, BXOR_ASSIGN,
PLUS_ASSIGN, MINUS_ASSIGN,
STAR_ASSIGN, DIV_ASSIGN, MOD_ASSIGN,
- SL_ASSIGN, SR_ASSIGN"
+ SL_ASSIGN, SR_ASSIGN, BSR_ASSIGN"
/>
</module>
<module name="OperatorWrap">
<property name="option" value="nl" />
<property
name="tokens"
- value="BAND, BOR, BXOR,
- MINUS, STAR, DIV, MOD,
+ value="QUESTION,
+ BAND, BOR, BXOR,
+ PLUS, MINUS, STAR, DIV, MOD,
LAND, LOR,
- EQUAL"
+ EQUAL, NOT_EQUAL"
/>
</module>
<module name="ParenPad">
value="CTOR_CALL, METHOD_CALL, SUPER_CTOR_CALL"
/>
</module>
- <module name="TypecastParenPad" />
- <module name="WhitespaceAfter">
- <property name="tokens" value="COMMA, SEMI" />
+ <module name="SeparatorWrap">
+ <property name="tokens" value="DOT" />
+ <property name="option" value="nl" />
</module>
+ <module name="TypecastParenPad" />
+ <module name="WhitespaceAfter" />
<module name="WhitespaceAround">
<property
name="tokens"
</module>
-<!-- 代用品で解決
- <module name="Header" />
- <module name="RegexpSingleline" />
- <module name="RegexpMultiline" />
- <module name="RegexpSinglelineJava" />
--->
-
-<!-- Obsolated
- <module name="TabCharacter" />
--->
-
</module>
</module>