Version: 9.4.12.v20180830 |

Coding Standards
Previous | Chapter 35. Contributing to Jetty Home | Next

##### Contact the core Jetty developers at www.webtide.com

private support for your internal/customer projects ... custom extensions and distributions ... versioned snapshots for indefinite support ... scalability guidance for your apps and Ajax/Comet projects ... development services for sponsored feature development

## Coding Standards

Jetty uses number of conventions for its source code.

### Code Formatting

Jetty uses the code formatting the following project specifies.

Eclipse Java Formatting

### Code Templates

Jetty specifies the following code templates for use by the project developers.

Eclipse Code Templates

### Code Conventions

The following is an example of the Java formatting and naming styles to apply to Jetty:

    import some.exact.ClassName;      // GOOD
    import some.wildcard.package.*;   // BAD!

    package org.always.have.a.package;

    /* --------------------------------------------------------- */
    /** Always have some javadoc
     */
    class MyClassName
    {
        // indent by 4 spaces.
        // use spaced to indent
        // The code must format OK with default tabsize of 8.

        private static final int ALL_CAPS_FOR_PUBLIC_CONSTANTS=1;

        // Field prefixed with __ for static of _ for normal fields.
        // This convention is no longer mandatory, but any given
        // class should either consistently use this style or not.
        private static String __staticField;
        private Object _privateField;

        // use getters and setters rather than public fields.
        public void setPrivateField(Object privateField)
        {
            _privateField=privateField;
        }

        public Object getPrivateField()
        {
            return _privateField;
        }

        public void doSomething()
            throws SomeException
        {
            Object local_variable = _privateField;
            if (local_variable==null)
            {
                 // do Something
            }
        }
    }

Previous | Top | Next
Source Control and Building | Home | Issues, Features, and Bugs

See an error or something missing? Contribute to this documentation at Github!(Generated: 2018-08-30)