build:
  maxIssues: 0
  weights:
    complexity: 2
    formatting: 1
    LongParameterList: 1
    comments: 1

complexity:
  active: true
  LongParameterList:
    active: true
    functionThreshold: 6
    constructorThreshold: 6
  TooManyFunctions:
    active: true
    thresholdInFiles: 60
    thresholdInClasses: 60
    thresholdInInterfaces: 60
    thresholdInObjects: 60
  CyclomaticComplexMethod:
    active: true
    threshold: 40
  NestedBlockDepth:
    active: true
    threshold: 5
  LongMethod:
    active: true
    threshold: 170
  LargeClass:
    active: true
    threshold: 1600
  ComplexCondition:
    active: true
    threshold: 6

comments:
  UndocumentedPublicClass:
    active: true
  UndocumentedPublicFunction:
    active: true
  UndocumentedPublicProperty:
    active: true
  EndOfSentenceFormat:
    active: true
    endOfSentenceFormat: ([.?!][ \t\n\r\f<])|([.?!:]$)

style:
  MaxLineLength:
    active: true
    maxLineLength: 160
  ReturnCount:
    active: true
    max: 8
  MagicNumber:
    active: false
  ThrowsCount:
    active: true
    max: 8
  ForbiddenComment:
    active: false  # Allow TODO, FIXME, STOPSHIP comments in code

exceptions:
  TooGenericExceptionCaught:
    active: false
  TooGenericExceptionThrown:
    active: true
    exceptionNames:
     - Throwable
     - Error
     - RuntimeException
