Skip to content

Commit

Permalink
Adds checkstyle, fixes hard errors (#55)
Browse files Browse the repository at this point in the history
  • Loading branch information
StrongestNumber9 authored Sep 19, 2024
1 parent 2fd51f9 commit 056f179
Show file tree
Hide file tree
Showing 8 changed files with 215 additions and 17 deletions.
206 changes: 206 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,212 @@
<directory>${project.basedir}/target</directory>
<finalName>rlo_06</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.5.0</version>
<executions>
<!-- These are all errors that will fail the build if triggered -->
<execution>
<id>scan-errors</id>
<goals>
<goal>check</goal>
</goals>
<phase>process-classes</phase>
<configuration>
<violationSeverity>error</violationSeverity>
<logViolationsToConsole>true</logViolationsToConsole>
<failOnViolation>true</failOnViolation>
<failsOnError>false</failsOnError>
<checkstyleRules>
<module name="Checker">
<module name="TreeWalker">
<module name="ClassMemberImpliedModifier"></module>
<module name="CovariantEquals"></module>
<module name="DefaultComesLast"></module>
<module name="EmptyBlock"></module>
<module name="EmptyCatchBlock"></module>
<module name="EmptyStatement"></module>
<module name="EqualsAvoidNull"></module>
<module name="EqualsHashCode"></module>
<module name="FallThrough"></module>
<module name="FinalClass"></module>
<module name="HiddenField">
<property name="ignoreConstructorParameter" value="true"></property>
<property name="ignoreSetter" value="true"></property>
</module>
<module name="IllegalCatch"></module>
<module name="IllegalImport"></module>
<module name="IllegalThrows"></module>
<module name="IllegalToken"></module>
<module name="IllegalType"></module>
<module name="InnerAssignment"></module>
<module name="InterfaceMemberImpliedModifier"></module>
<module name="MissingOverride"></module>
<module name="MissingSwitchDefault"></module>
<module name="ModifiedControlVariable">
<property name="skipEnhancedForLoopVariable" value="true"></property>
</module>
<module name="ModifierOrder"></module>
<module name="MutableException"></module>
<module name="NeedBraces"></module>
<module name="NestedForDepth">
<property name="max" value="2"></property>
</module>
<module name="NestedTryDepth"></module>
<module name="NoClone"></module>
<module name="NoFinalizer"></module>
<module name="OneTopLevelClass"></module>
<module name="PackageDeclaration"></module>
<module name="PackageName">
<property name="format" value="^com\.teragrep\.[a-z]{3}_\d{2}(?:.[a-zA-Z]\w*)*$"></property>
</module>
<module name="ReturnCount">
<property name="max" value="5"></property>
</module>
<module name="StringLiteralEquality"></module>
<module name="SuperClone"></module>
<module name="SuperFinalize"></module>
<module name="TypeName"></module>
<module name="UpperEll"></module>
<module name="VisibilityModifier">
<property name="allowPublicFinalFields" value="true"></property>
</module>
</module>
<module name="Translation"></module>
<module name="UniqueProperties"></module>
</module>
</checkstyleRules>
</configuration>
</execution>
<!-- These are warnings but will not fail the build -->
<execution>
<id>scan-warnings</id>
<goals>
<goal>check</goal>
</goals>
<phase>process-classes</phase>
<configuration>
<violationSeverity>warning</violationSeverity>
<logViolationsToConsole>true</logViolationsToConsole>
<failOnViolation>false</failOnViolation>
<failsOnError>false</failsOnError>
<checkstyleRules>
<module name="Checker">
<module name="TreeWalker">
<module name="ArrayTypeStyle">
<property name="severity" value="warning"></property>
</module>
<module name="AvoidNestedBlocks">
<property name="allowInSwitchCase" value="true"></property>
<property name="severity" value="warning"></property>
</module>
<module name="AvoidNoArgumentSuperConstructorCall">
<property name="severity" value="warning"></property>
</module>
<module name="AvoidStarImport">
<property name="severity" value="warning"></property>
</module>
<module name="AvoidStaticImport">
<property name="severity" value="warning"></property>
</module>
<module name="DeclarationOrder">
<property name="severity" value="warning"></property>
</module>
<module name="FinalLocalVariable">
<property name="severity" value="warning"></property>
</module>
<module name="FinalParameters">
<property name="severity" value="warning"></property>
</module>
<module name="MagicNumber">
<property name="severity" value="warning"></property>
</module>
<module name="MissingDeprecated">
<property name="severity" value="warning"></property>
</module>
<module name="MultipleVariableDeclarations">
<property name="severity" value="warning"></property>
</module>
<module name="NestedForDepth">
<property name="max" value="1"></property>
<property name="severity" value="warning"></property>
</module>
<module name="NestedIfDepth">
<property name="severity" value="warning"></property>
</module>
<module name="NoArrayTrailingComma">
<property name="severity" value="warning"></property>
</module>
<module name="NoCodeInFile">
<property name="severity" value="warning"></property>
</module>
<module name="NoEnumTrailingComma">
<property name="severity" value="warning"></property>
</module>
<module name="OneStatementPerLine">
<property name="severity" value="warning"></property>
</module>
<module name="OuterTypeFilename">
<property name="severity" value="warning"></property>
</module>
<module name="ParameterAssignment">
<property name="severity" value="warning"></property>
</module>
<module name="RedundantImport">
<property name="severity" value="warning"></property>
</module>
<module name="RequireThis">
<property name="checkFields" value="false"></property>
<property name="checkMethods" value="false"></property>
<property name="validateOnlyOverlapping" value="true"></property>
<property name="severity" value="warning"></property>
</module>
<module name="ReturnCount">
<property name="max" value="1"></property>
<property name="severity" value="warning"></property>
</module>
<module name="SimplifyBooleanExpression">
<property name="severity" value="warning"></property>
</module>
<module name="SimplifyBooleanReturn">
<property name="severity" value="warning"></property>
</module>
<module name="UnnecessarySemicolonAfterOuterTypeDeclaration">
<property name="severity" value="warning"></property>
</module>
<module name="UnnecessarySemicolonAfterTypeMemberDeclaration">
<property name="severity" value="warning"></property>
</module>
<module name="UnnecessarySemicolonInEnumeration">
<property name="severity" value="warning"></property>
</module>
<module name="UnnecessarySemicolonInTryWithResources">
<property name="severity" value="warning"></property>
</module>
<module name="UnusedLocalVariable">
<property name="severity" value="warning"></property>
</module>
<module name="VariableDeclarationUsageDistance">
<property name="severity" value="warning"></property>
</module>
<module name="VisibilityModifier">
<property name="allowPublicFinalFields" value="false"></property>
<property name="severity" value="warning"></property>
</module>
</module>
<module name="NewlineAtEndOfFile">
<property name="severity" value="warning"></property>
</module>
<module name="OrderedProperties">
<property name="severity" value="warning"></property>
</module>
</module>
</checkstyleRules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.diffplug.spotless</groupId>
<artifactId>spotless-maven-plugin</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/teragrep/rlo_06/Byteable.java
Original file line number Diff line number Diff line change
Expand Up @@ -47,5 +47,5 @@

public interface Byteable {

byte[] toBytes();
public abstract byte[] toBytes();
}
4 changes: 2 additions & 2 deletions src/main/java/com/teragrep/rlo_06/Cache.java
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@

interface Cache<T> {

T take();
public abstract T take();

void put(T t);
public abstract void put(T t);
}
2 changes: 1 addition & 1 deletion src/main/java/com/teragrep/rlo_06/Clearable.java
Original file line number Diff line number Diff line change
Expand Up @@ -47,5 +47,5 @@

interface Clearable {

void clear();
public abstract void clear();
}
2 changes: 1 addition & 1 deletion src/main/java/com/teragrep/rlo_06/Fragment.java
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ public final class Fragment implements Consumer<Stream>, Clearable, Matchable, B
Fragment() {
this.isStub = true;
this.buffer = ByteBuffer.allocateDirect(0);
this.parseRule = (stream, buffer) -> ByteBuffer.allocateDirect(0);
this.parseRule = (stream, bytebuffer) -> ByteBuffer.allocateDirect(0);
this.fragmentState = FragmentState.EMPTY;
}

Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/teragrep/rlo_06/Matchable.java
Original file line number Diff line number Diff line change
Expand Up @@ -49,5 +49,5 @@

public interface Matchable {

boolean matches(ByteBuffer buffer);
public abstract boolean matches(ByteBuffer buffer);
}
10 changes: 2 additions & 8 deletions src/main/java/com/teragrep/rlo_06/PriorityFunction.java
Original file line number Diff line number Diff line change
Expand Up @@ -97,17 +97,11 @@ public ByteBuffer apply(Stream stream, ByteBuffer buffer) {
throw new PriorityParseException("PRIORITY > missing");
}
}
else if (stream.get() == 62) { // third may be a '>'
// omit '>'
}
else {
else if (stream.get() != 62) { // must be a '>'
throw new PriorityParseException("PRIORITY number incorrect");
}
}
else if (stream.get() == 62) { // second may be a '>'
// omit '>'
}
else {
else if (stream.get() != 62) { // must be a '>'
throw new PriorityParseException("PRIORITY number incorrect");
}
buffer.flip();
Expand Down
4 changes: 1 addition & 3 deletions src/main/java/com/teragrep/rlo_06/SDElement.java
Original file line number Diff line number Diff line change
Expand Up @@ -90,11 +90,9 @@ public void accept(Stream stream) {
b = stream.get();
}

if (b == 93) { // ']', sdId only here: Payload:'[ID_A@1]' or Payload:'[ID_A@1][ID_B@1]'
if (b != 93) { // not ']', sdId only here: Payload:'[ID_A@1]' or Payload:'[ID_A@1][ID_B@1]'
// MSG may not exist, no \n either, Parsing may be complete. get sets this.returnAfter to false
// Total payload: '<14>1 2015-06-20T09:14:07.12345+00:00 host02 serverd DEA MSG-01 [ID_A@1]'
}
else {
throw new StructuredDataParseException("SP missing after SD_ID or SD_ID too long");
}
fragmentState = FragmentState.WRITTEN;
Expand Down

0 comments on commit 056f179

Please sign in to comment.