update to gradle 4.9, README
This commit is contained in:
parent
fb6fe8522c
commit
2b284199bb
4 changed files with 55 additions and 9 deletions
48
README.adoc
48
README.adoc
|
@ -1,6 +1,4 @@
|
||||||
# Network classes for Java
|
# A consolidated Uniform Resource Locator implementation for Java
|
||||||
|
|
||||||
## Net-url: Uniform Resource Locator implementation
|
|
||||||
|
|
||||||
image:https://api.travis-ci.org/xbib/net-url.svg[title="Build status", link="https://travis-ci.org/xbib/net-url/"]
|
image:https://api.travis-ci.org/xbib/net-url.svg[title="Build status", link="https://travis-ci.org/xbib/net-url/"]
|
||||||
image:https://img.shields.io/sonar/http/nemo.sonarqube.com/org.xbib%3Anet/coverage.svg?style=flat-square[title="Coverage", link="https://sonarqube.com/dashboard/index?id=org.xbib%3Anet-url"]
|
image:https://img.shields.io/sonar/http/nemo.sonarqube.com/org.xbib%3Anet/coverage.svg?style=flat-square[title="Coverage", link="https://sonarqube.com/dashboard/index?id=org.xbib%3Anet-url"]
|
||||||
|
@ -8,6 +6,50 @@ image:https://maven-badges.herokuapp.com/maven-central/org.xbib/net-url/badge.sv
|
||||||
image:https://img.shields.io/badge/License-Apache%202.0-blue.svg[title="Apache License 2.0", link="https://opensource.org/licenses/Apache-2.0"]
|
image:https://img.shields.io/badge/License-Apache%202.0-blue.svg[title="Apache License 2.0", link="https://opensource.org/licenses/Apache-2.0"]
|
||||||
image:https://img.shields.io/twitter/url/https/twitter.com/xbib.svg?style=social&label=Follow%20%40xbib[title="Twitter", link="https://twitter.com/xbib"]
|
image:https://img.shields.io/twitter/url/https/twitter.com/xbib.svg?style=social&label=Follow%20%40xbib[title="Twitter", link="https://twitter.com/xbib"]
|
||||||
|
|
||||||
|
A Uniform Resource Locator (URL) is a compact representation of the
|
||||||
|
location and access method for a resource available via the Internet.
|
||||||
|
|
||||||
|
Historically, there are many different forms of internet resource representations, for example,
|
||||||
|
the URL (RFC 1738 as of 1994), the URI (RFC 2396 as of 1998), and IRI (RFC 3987 as of 2005),
|
||||||
|
and most of them have updated specifications.
|
||||||
|
|
||||||
|
This Java implementation serves as a universal point of handling all
|
||||||
|
different forms. It follows the syntax of the Uniform Resource Identifier (RFC 3986)
|
||||||
|
in accordance with the https://url.spec.whatwg.org/[WHATWG URL standard].
|
||||||
|
|
||||||
|
This alternative implementation of Uniform Resource Locator combines the features of the vanilla URI/URL Java SDK implementations
|
||||||
|
but removes it peculiarities and deficiencies, such as `java.lang.IllegalArgumentException: Illegal character in path at ... at java.net.URI.create()`
|
||||||
|
|
||||||
|
Normalization, NIO charset encoding/decoding, IPv6, an extensive set of schemes, and path matching have been added.
|
||||||
|
|
||||||
|
Fast building and parsing URLs, improved percent decoding/encoding, and URI templating features are included, to make
|
||||||
|
this library also useful in URI and IRI contexts.
|
||||||
|
|
||||||
|
While parsing and building, you have better control about address resolving. Only explicit `resolveFromhost` methods
|
||||||
|
will execute host lookup queries against DNS resolvers, otherwise, no resolving will occur under the hood.
|
||||||
|
|
||||||
|
You can build URLs with a fluent API, for example
|
||||||
|
|
||||||
|
```
|
||||||
|
URL.http().host("foo.com").toUrlString()
|
||||||
|
```
|
||||||
|
|
||||||
|
And you can parse URLs with a fluent API, for exmaple
|
||||||
|
|
||||||
|
```
|
||||||
|
URL url = URL.parser().parse("file:///foo/bar?foo=bar#fragment");
|
||||||
|
```
|
||||||
|
|
||||||
|
There is no external dependency. The size of the jar library is ~118k. The only dependency on `java.net` are the classes
|
||||||
|
|
||||||
|
```
|
||||||
|
java.net.IDN
|
||||||
|
java.net.Inet4Address
|
||||||
|
java.net.Inet6Address
|
||||||
|
java.net.InetAddress
|
||||||
|
```
|
||||||
|
|
||||||
|
which might get re-implemented in another library at a later time, in a project like Netty DNS resolver.
|
||||||
|
|
||||||
# License
|
# License
|
||||||
|
|
||||||
|
|
12
build.gradle
12
build.gradle
|
@ -45,10 +45,14 @@ subprojects {
|
||||||
wagon "org.apache.maven.wagon:wagon-ssh:${project.property('wagon.version')}"
|
wagon "org.apache.maven.wagon:wagon-ssh:${project.property('wagon.version')}"
|
||||||
}
|
}
|
||||||
|
|
||||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
compileJava {
|
||||||
targetCompatibility = JavaVersion.VERSION_1_8
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||||
|
targetCompatibility = JavaVersion.VERSION_1_8
|
||||||
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'
|
}
|
||||||
|
compileTestJava {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||||
|
targetCompatibility = JavaVersion.VERSION_1_8
|
||||||
|
}
|
||||||
tasks.withType(JavaCompile) {
|
tasks.withType(JavaCompile) {
|
||||||
options.compilerArgs << "-Xlint:all,-serial" << "-profile" << "compact1"
|
options.compilerArgs << "-Xlint:all,-serial" << "-profile" << "compact1"
|
||||||
}
|
}
|
||||||
|
|
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
4
gradle/wrapper/gradle-wrapper.properties
vendored
4
gradle/wrapper/gradle-wrapper.properties
vendored
|
@ -1,6 +1,6 @@
|
||||||
#Mon Jul 09 22:07:01 CEST 2018
|
#Fri Sep 14 16:19:33 CEST 2018
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8.1-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-4.9-all.zip
|
||||||
|
|
Loading…
Reference in a new issue