# $Id$

# Checkstyle configuration for the Apache FOP project.
# See http://xml.apache.org/fop for information about FOP.
# The entries here are sorted in the order of the Checkstyle 2.4 documentation
# for easier reference.

# Javadoc Comments
checkstyle.javadoc.scope = protected
checkstyle.require.packagehtml = false
checkstyle.require.version = false
checkstyle.allow.noauthor = yes
checkstyle.javadoc.checkUnusedThrows = false

# Naming Conventions
# non-static members
checkstyle.pattern.member = ^[a-z][a-zA-Z0-9]*$
# non-static, public members
checkstyle.pattern.publicmember = ^[a-z][a-zA-Z0-9]*$
# constants (static & final)
checkstyle.pattern.const = ^[A-Z](_?[A-Z0-9]+)*$
# other static
checkstyle.pattern.static = ^[a-z][a-zA-Z0-9]*$
# method parameters
checkstyle.pattern.parameter = ^[a-z][a-zA-Z0-9]*$
# packages
checkstyle.pattern.package = ^[a-z]+(\.[a-zA-Z_][a-zA-Z_0-9]*)*$
# classes and interfaces
checkstyle.pattern.type = ^[A-Z][a-zA-Z0-9]*$
# methods
checkstyle.pattern.method = ^[a-z][a-zA-Z0-9]*$
# local variables
checkstyle.pattern.localvar = ^[a-z][a-zA-Z0-9]*$
# final local variables
checkstyle.pattern.localfinalvar = ^[a-z][a-zA-Z0-9]*$

# Headers
checkstyle.header.file = checkstyle.header
checkstyle.header.ignoreline
checkstyle.header.regexp = yes

# Imports
checkstyle.ignore.imports = false
checkstyle.illegal.imports = sun

# Size Violations
checkstyle.maxlinelen = 100
checkstyle.tab.width = 4
checkstyle.ignore.importlength = yes
checkstyle.ignore.maxlinelen = ^$
checkstyle.maxmethodlen = 150
checkstyle.maxconstructorlen = 150
checkstyle.maxfilelen = 2000
checkstyle.maxparameters = 7

# Whitespace
checkstyle.allow.tabs = no
checkstyle.ignore.whitespace = false
checkstyle.ignore.whitespace.cast = yes
checkstyle.paren.pad = nospace
checkstyle.wrap.operator = nl

# Modifiers
checkstyle.ignore.public.in.interface = false
checkstyle.allow.protected = yes
checkstyle.allow.package = false
# Note -- checkstyle.pattern.publicmember is documented in this location
#   in the checkstyle documentation. However, it is also included in the "Naming
#   Conventions" section above. Please do not add it here, as having two in the
#   file will result in changes to only one being ignored (checkstyle appears to
#   use the last definition).

# Blocks
checkstyle.ignore.braces = false
checkstyle.block.try = stmt
checkstyle.block.catch = text
checkstyle.block.finally = stmt
checkstyle.lcurly.type = eol
checkstyle.lcurly.method = eol
checkstyle.lcurly.other = eol
checkstyle.rcurly = same

# Miscellaneous Checks
checkstyle.pattern.todo = TODO:
checkstyle.ignore.longell = false
checkstyle.illegal.instantiations =

# Last Line of $RCSfile$
