...
- Four space indents for Java, and 2-space indents for XML. NO TABS
K&R style braces
Code Block if (code) { // code } else { // code }
- Do not use wildcard imports
- Write Javadocs for public methods and classes. Keep it short and to the point
- Avoid public instance variables; use accessors
- Use public methods sparingly; implementation details are not public
- Maximum length of lines is 96 80 characters.
Create Javadocs for types of at least the following descriptivity
Code Block /** * @author Joe Developer * @date MMM DD, YYYY */ public class MyClass
Each source file should contain a license header . The following is an example, but the actual license header should be inserted as part of build.much like the following:
Code Block language java /** * Copyright 2013 DuraSpace, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */
To Use the maven-license-plugin to check for and add missing headers:
Code Block language bash title Check for missing headers mvn license:check
To add missing headers
Code Block language bash title Add missing headers mvn license:format
IDE Setups
IDE settings can be found in fcrepo4/etc in are located in the project source. IDE users are strongly recommended to apply these formatting settings.
- Eclipse settings are here: fcrepo4/src/site/eclipse
- Intellij settings TBD
...
We're in the process of adding checkstyle enforcement to our modules (meaning, if you violate some of the major style rules, the build will fail).https://github.com/futures/fcrepo-build-tools
To check for violations, run the following command:
Code Block | ||
---|---|---|
| ||
mvn checkstyle:check |