reorder badges
[null-analysis.git] / README.asciidoc
blob874cd7e15b5af351978ac43007ee5ad8e53b8141
1 = Null-Analysis
2 Sebastian Hoß <http://seb.xn--ho-hia.de/[@sebhoss]>
3 :github-org: sebhoss
4 :project-name: null-analysis
5 :project-group: de.xn--ho-hia.quality
7 image:https://img.shields.io/badge/license-cc%20zero-000000.svg?style=flat-square["CC Zero", link="http://creativecommons.org/publicdomain/zero/1.0/"]
8 pass:[<span class="image"><a class="image" href="https://maven-badges.herokuapp.com/maven-central/de.xn--ho-hia.quality/null-analysis"><img src="https://img.shields.io/maven-central/v/de.xn--ho-hia.quality/null-analysis.svg?style=flat-square" alt="Maven Central"></a></span>]
9 image:https://www.openhub.net/p/{project-name}/widgets/project_thin_badge.gif["Open Hub statistics", link="https://www.openhub.net/p/{project-name}"]
10 image:https://img.shields.io/badge/email-%40metio-brightgreen.svg?style=social&label=email["Discuss on Google Groups", link="https://groups.google.com/forum/#!forum/metio"]
11 image:https://img.shields.io/badge/irc-%23metio.wtf-brightgreen.svg?style=social&label=IRC["Chat on IRC", link="http://webchat.freenode.net/?channels=metio.wtf"]
13 image:https://img.shields.io/travis/{github-org}/{project-name}/master.svg?style=flat-square["Build Status", link="https://travis-ci.org/{github-org}/{project-name}"]
14 image:https://img.shields.io/coveralls/{github-org}/{project-name}/master.svg?style=flat-square["Code Coverage", link="https://coveralls.io/github/{github-org}/{project-name}"]
16 Utility library for null analysis in Java projects.
18 == Usage
20 Convert any `@Nullable` reference from legacy code to a `@NonNull` reference by using the `Nullsafe` utility class:
22 [source, java]
23 ----
24 @Nullable Object myObject = ...
25 @NonNull Object nonNullObject = Nullsafe.nonNull(myObject);
26 ----
28 An `IllegalArgumentException` is thrown in case `myObject` is `null`.
30 === Integration
32 To use this project just declare the following dependency inside your POM:
34 [source, xml, subs="attributes,verbatim"]
35 ----
36 <dependency>
37   <groupId>{project-group}</groupId>
38   <artifactId>{project-name}</artifactId>
39   <version>${version.null-analysis}</version>
40 </dependency
41 ----
43 Replace `${version.null-analysis}` with the pass:[<a href="http://search.maven.org/#search%7Cga%7C1%7Cg%3Ade.xn--ho-hia.quality%20a%3Anull-analysis">latest release</a>]. This project follows the link:http://semver.org/[semantic versioning guidelines].
45 === Compatibility
47 This project is compatible with the following Java versions:
49 .Java compatibility
50 |===
51 | | 3.X.Y
53 | Java 8
54 | ✓
55 |===
58 == License
60 To the extent possible under law, the author(s) have dedicated all copyright
61 and related and neighboring rights to this software to the public domain
62 worldwide. This software is distributed without any warranty.
64 You should have received a copy of the CC0 Public Domain Dedication along
65 with this software. If not, see http://creativecommons.org/publicdomain/zero/1.0/.
67 == Mirrors
69 * https://github.com/sebhoss/{project-name}
70 * https://bitbucket.org/sebhoss/{project-name}
71 * https://gitlab.com/sebastian.hoss/{project-name}
72 * http://repo.or.cz/{project-name}.git