HHH-16962 - General documentation improvements
HHH-17141 - Prepare for 6.3.0 release https://hibernate.atlassian.net/browse/HHH-16962 https://hibernate.atlassian.net/browse/HHH-17141
This commit is contained in:
parent
1b53e57750
commit
a2d45a2679
|
@ -190,68 +190,33 @@ else {
|
||||||
|
|
||||||
|
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
// aggregated JavaDoc
|
// aggregated Javadoc
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
def aggregateJavadocsTask = tasks.register( "aggregateJavadocs", Javadoc ) {
|
def aggregateJavadocsTask = tasks.register( "javadoc", Javadoc ) {
|
||||||
group = "documentation"
|
group = "documentation"
|
||||||
description = 'Builds an aggregated JavaDoc across all ORM sub-projects'
|
description = 'Builds JavaDoc aggregated across all ORM sub-projects'
|
||||||
|
|
||||||
inputs.property "ormVersion", project.ormVersion
|
|
||||||
|
|
||||||
destinationDir = mkdir( layout.buildDirectory.file( 'javadocs' ) )
|
destinationDir = mkdir( layout.buildDirectory.file( 'javadocs' ) )
|
||||||
source = configurations.javadocSources
|
source = configurations.javadocSources
|
||||||
classpath = configurations.javadocClasspath
|
classpath = configurations.javadocClasspath
|
||||||
|
|
||||||
// exclude any generated sources and internal packages
|
|
||||||
exclude '**/generated-src/**'
|
|
||||||
exclude '**/internal/**'
|
|
||||||
include '**/*.java'
|
|
||||||
|
|
||||||
maxMemory = '512m'
|
|
||||||
|
|
||||||
final int currentYear = new GregorianCalendar().get( Calendar.YEAR )
|
|
||||||
|
|
||||||
configure( options ) {
|
configure( options ) {
|
||||||
overview = 'src/main/javadoc/overview.html'
|
overview = rootProject.file( "shared/javadoc/overview.html" )
|
||||||
stylesheetFile = project.file( 'src/main/javadoc/stylesheet.css' )
|
|
||||||
windowTitle = 'Hibernate Javadocs'
|
windowTitle = 'Hibernate Javadocs'
|
||||||
docTitle = "Hibernate Javadoc ($project.version)"
|
docTitle = "Hibernate Javadoc ($project.version)"
|
||||||
bottom = "Copyright © 2001-$currentYear <a href=\"https://redhat.com\">Red Hat, Inc.</a> All Rights Reserved."
|
}
|
||||||
use = true
|
|
||||||
encoding = 'UTF-8'
|
|
||||||
|
|
||||||
tags(
|
if ( jdkVersions.explicit ) {
|
||||||
'todo:X',
|
|
||||||
'apiNote:a:API Note:',
|
|
||||||
'implSpec:a:Implementation Specification:',
|
|
||||||
'implNote:a:Implementation Note:',
|
|
||||||
'settingDefault:f:Default Value:'
|
|
||||||
)
|
|
||||||
|
|
||||||
links = [
|
|
||||||
'https://docs.oracle.com/en/java/javase/11/docs/api/',
|
|
||||||
'https://jakarta.ee/specifications/bean-validation/3.0/apidocs/',
|
|
||||||
'https://jakarta.ee/specifications/cdi/4.0/apidocs/',
|
|
||||||
'https://jakarta.ee/specifications/platform/9/apidocs/',
|
|
||||||
'https://www.javadoc.io/doc/javax.cache/cache-api/1.0.0/'
|
|
||||||
]
|
|
||||||
|
|
||||||
addStringOption( 'Xdoclint:none', '-quiet' )
|
|
||||||
//
|
|
||||||
// if ( jdkVersions.explicit ) {
|
|
||||||
// setJFlags(
|
// setJFlags(
|
||||||
// getProperty( 'toolchain.javadoc.jvmargs' ).toString().
|
// getProperty( 'toolchain.javadoc.jvmargs' ).toString().
|
||||||
// split( ' ' ).toList().findAll( { !it.isEmpty() } )
|
// split( ' ' ).toList().findAll( { !it.isEmpty() } )
|
||||||
// )
|
// )
|
||||||
// }
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( jdkVersions.explicit ) {
|
|
||||||
// Display version of Java tools
|
// Display version of Java tools
|
||||||
doFirst {
|
doFirst {
|
||||||
if ( javadocTool.present ) {
|
if ( javadocTool.present ) {
|
||||||
logger.lifecycle "Aggregating javadoc with '${javadocTool.get().metadata.installationPath}'"
|
logger.lifecycle "Building aggregated javadoc with '${javadocTool.get().metadata.installationPath}'"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -262,13 +227,16 @@ def aggregateJavadocsTask = tasks.register( "aggregateJavadocs", Javadoc ) {
|
||||||
: JavaLanguageVersion.of( JavaVersion.current().name )
|
: JavaLanguageVersion.of( JavaVersion.current().name )
|
||||||
|
|
||||||
if ( javaLanguageVersion.asInt() > 11 ) {
|
if ( javaLanguageVersion.asInt() > 11 ) {
|
||||||
println "`aggregateJavadocs` is being run with a JDK newer than version 11: \n" +
|
println "Aggregated Javadocs are bing built` using a JDK newer than version 11: \n" +
|
||||||
"\t* `stylesheet.css` will not be compatible\n" +
|
"\t* `stylesheet.css` will not be compatible\n" +
|
||||||
"\t* generating the User Guide settings fragment will not succeed"
|
"\t* generating the User Guide settings fragment will not succeed"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
apply from: rootProject.file( 'gradle/javadoc.gradle' )
|
||||||
|
|
||||||
|
|
||||||
asciidoctorj {
|
asciidoctorj {
|
||||||
requires 'rouge'
|
requires 'rouge'
|
||||||
modules {
|
modules {
|
||||||
|
@ -601,7 +569,7 @@ def generateSettingsDocTask = tasks.named( "generateSettingsDoc" ) {
|
||||||
: JavaLanguageVersion.of( JavaVersion.current().name )
|
: JavaLanguageVersion.of( JavaVersion.current().name )
|
||||||
|
|
||||||
if ( javaLanguageVersion.asInt() > 11 ) {
|
if ( javaLanguageVersion.asInt() > 11 ) {
|
||||||
println "`aggregateJavadocs` was run with a JDK newer than version 11; generating the settings User Guide fragment will not succeed"
|
println "Aggregated Javadocs was built using a JDK newer than version 11; generating the settings User Guide fragment will not succeed"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,11 +21,12 @@ buildscript {
|
||||||
import de.thetaphi.forbiddenapis.gradle.CheckForbiddenApis
|
import de.thetaphi.forbiddenapis.gradle.CheckForbiddenApis
|
||||||
import org.apache.tools.ant.filters.ReplaceTokens
|
import org.apache.tools.ant.filters.ReplaceTokens
|
||||||
|
|
||||||
apply from: rootProject.file( 'gradle/module.gradle' )
|
|
||||||
apply from: rootProject.file( 'gradle/libraries.gradle' )
|
|
||||||
apply from: rootProject.file( 'gradle/databases.gradle' )
|
|
||||||
|
|
||||||
apply plugin: 'java-library'
|
apply plugin: 'java-library'
|
||||||
|
|
||||||
|
apply from: rootProject.file( 'gradle/module.gradle' )
|
||||||
|
apply from: rootProject.file( 'gradle/databases.gradle' )
|
||||||
|
apply from: rootProject.file( 'gradle/javadoc.gradle' )
|
||||||
|
|
||||||
apply plugin: 'biz.aQute.bnd.builder'
|
apply plugin: 'biz.aQute.bnd.builder'
|
||||||
apply plugin: 'org.hibernate.orm.database-service'
|
apply plugin: 'org.hibernate.orm.database-service'
|
||||||
apply plugin: 'org.hibernate.orm.build.java-module'
|
apply plugin: 'org.hibernate.orm.build.java-module'
|
||||||
|
@ -58,6 +59,15 @@ if ( !project.description ) {
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
// Configurations and Dependencies
|
// Configurations and Dependencies
|
||||||
|
|
||||||
|
configurations.configureEach {
|
||||||
|
resolutionStrategy.eachDependency { details ->
|
||||||
|
//Force the "byte buddy agent" version to match the Byte Buddy version
|
||||||
|
// we use, as Mockito might pull in a mismatched version transitively
|
||||||
|
if (details.requested.group == "net.bytebuddy" && details.requested.name == 'byte-buddy-agent') {
|
||||||
|
details.useVersion libs.versions.byteBuddy.get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation libs.logging
|
implementation libs.logging
|
||||||
|
@ -383,7 +393,12 @@ task sourcesJar(type: Jar) {
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
// Javadoc
|
// Javadoc
|
||||||
|
|
||||||
apply from: rootProject.file( 'gradle/javadoc.gradle' )
|
tasks.named( "javadoc", Javadoc ) {
|
||||||
|
configure( options ) {
|
||||||
|
windowTitle = "Hibernate Javadocs ($project.name)"
|
||||||
|
docTitle = "Hibernate Javadocs ($project.name : $project.version)"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
// IDE
|
// IDE
|
||||||
|
|
|
@ -5,16 +5,20 @@
|
||||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// make sure Java plugin is applied
|
|
||||||
apply plugin : 'java'
|
|
||||||
|
|
||||||
apply from: rootProject.file( 'gradle/base-information.gradle' )
|
apply from: rootProject.file( 'gradle/base-information.gradle' )
|
||||||
|
|
||||||
javadoc {
|
tasks.named( "javadoc", Javadoc ) {
|
||||||
exclude( "**/internal/*" )
|
def currentYear = new GregorianCalendar().get( Calendar.YEAR )
|
||||||
exclude( "**/generated-src/**" )
|
|
||||||
|
|
||||||
final int currentYear = new GregorianCalendar().get( Calendar.YEAR )
|
inputs.property "ormVersion", project.ormVersion
|
||||||
|
inputs.property "currentYear", currentYear
|
||||||
|
|
||||||
|
// exclude any generated sources and internal packages
|
||||||
|
exclude '**/generated-src/**'
|
||||||
|
exclude '**/internal/**'
|
||||||
|
include '**/*.java'
|
||||||
|
|
||||||
|
maxMemory = '512m'
|
||||||
|
|
||||||
configure( options ) {
|
configure( options ) {
|
||||||
// this is the config needed to use asciidoclet for Javadoc rendering. It relies on a build from John's PR @ https://github.com/asciidoctor/asciidoclet/pull/91
|
// this is the config needed to use asciidoclet for Javadoc rendering. It relies on a build from John's PR @ https://github.com/asciidoctor/asciidoclet/pull/91
|
||||||
|
@ -25,14 +29,13 @@ javadoc {
|
||||||
// Travis CI JDK 11 build did not like this
|
// Travis CI JDK 11 build did not like this
|
||||||
// docletpath = configurations.asciidoclet.files.asType(List)
|
// docletpath = configurations.asciidoclet.files.asType(List)
|
||||||
// doclet = 'org.asciidoctor.Asciidoclet'
|
// doclet = 'org.asciidoctor.Asciidoclet'
|
||||||
overview = 'src/main/javadoc/overview.html'
|
|
||||||
stylesheetFile = project.file( 'src/main/javadoc/stylesheet.css' )
|
|
||||||
windowTitle = "$project.name JavaDocs"
|
|
||||||
docTitle = "$project.name JavaDocs ($project.version)"
|
|
||||||
bottom = "Copyright © 2001-$currentYear <a href=\"https://redhat.com\">Red Hat, Inc.</a> All Rights Reserved."
|
|
||||||
use = true
|
use = true
|
||||||
encoding = 'UTF-8'
|
encoding = 'UTF-8'
|
||||||
|
|
||||||
|
stylesheetFile = rootProject.file( "shared/javadoc/stylesheet.css" )
|
||||||
|
bottom = "Copyright © 2001-$currentYear <a href=\"https://redhat.com\">Red Hat, Inc.</a> All Rights Reserved."
|
||||||
|
|
||||||
links = [
|
links = [
|
||||||
'https://docs.oracle.com/en/java/javase/11/docs/api/',
|
'https://docs.oracle.com/en/java/javase/11/docs/api/',
|
||||||
'https://jakarta.ee/specifications/bean-validation/3.0/apidocs/',
|
'https://jakarta.ee/specifications/bean-validation/3.0/apidocs/',
|
||||||
|
@ -41,8 +44,6 @@ javadoc {
|
||||||
'https://www.javadoc.io/doc/javax.cache/cache-api/1.0.0/'
|
'https://www.javadoc.io/doc/javax.cache/cache-api/1.0.0/'
|
||||||
]
|
]
|
||||||
|
|
||||||
addStringOption( 'Xdoclint:none', '-quiet' )
|
|
||||||
|
|
||||||
tags(
|
tags(
|
||||||
'todo:X',
|
'todo:X',
|
||||||
'apiNote:a:API Note:',
|
'apiNote:a:API Note:',
|
||||||
|
@ -50,6 +51,8 @@ javadoc {
|
||||||
'implNote:a:Implementation Note:',
|
'implNote:a:Implementation Note:',
|
||||||
'settingDefault:f:Default Value:'
|
'settingDefault:f:Default Value:'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
addStringOption( 'Xdoclint:none', '-quiet' )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
/*
|
|
||||||
* Hibernate, Relational Persistence for Idiomatic Java
|
|
||||||
*
|
|
||||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
|
||||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
configurations.configureEach {
|
|
||||||
resolutionStrategy.eachDependency { details ->
|
|
||||||
//Force the "byte buddy agent" version to match the Byte Buddy version
|
|
||||||
// we use, as Mockito might pull in a mismatched version transitively
|
|
||||||
if (details.requested.group == "net.bytebuddy" && details.requested.name == 'byte-buddy-agent') {
|
|
||||||
details.useVersion libs.versions.byteBuddy.get()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -313,10 +313,9 @@ if ( jdkVersions.test.release.asInt() >= 17 && jdkVersions.explicit ) {
|
||||||
check.dependsOn testJava17
|
check.dependsOn testJava17
|
||||||
}
|
}
|
||||||
|
|
||||||
javadoc {
|
tasks.named( "javadoc", Javadoc ) {
|
||||||
configure(options) {
|
configure(options) {
|
||||||
overview = 'src/main/javadoc/overview.html'
|
overview = rootProject.file( "shared/javadoc/overview.html" )
|
||||||
stylesheetFile = new File(projectDir, 'src/main/javadoc/stylesheet.css')
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 2.8 KiB |
Binary file not shown.
Before Width: | Height: | Size: 719 B |
Binary file not shown.
Before Width: | Height: | Size: 270 B |
Binary file not shown.
Before Width: | Height: | Size: 13 KiB |
|
@ -1,257 +0,0 @@
|
||||||
<!--
|
|
||||||
~ Hibernate, Relational Persistence for Idiomatic Java
|
|
||||||
~
|
|
||||||
~ License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
|
||||||
~ See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
|
||||||
-->
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h2>Hibernate ORM aggregated API documentation</h2>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Hibernate is a library for object/relation mapping (ORM). It provides:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
a <em>native API</em> centered around {@link org.hibernate.SessionFactory} and
|
|
||||||
{@link org.hibernate.Session},
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
an implementation of the <em>Java (or Jakarta) Persistence API</em> (JPA),
|
|
||||||
where the equivalent central interfaces are {@link jakarta.persistence.EntityManagerFactory}
|
|
||||||
and {@link jakarta.persistence.EntityManager},
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
a set of <em>mapping annotations</em> which augment the O/R mapping annotations defined
|
|
||||||
by JPA, and which may be used with either API, and
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<em>compile-time tooling</em> for writing more type-safe code.
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>Native API</h3>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Along with {@link org.hibernate.SessionFactory} and {@link org.hibernate.Session}, applications
|
|
||||||
using the native API will often make use of the following interfaces:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>{@link org.hibernate.cfg.Configuration} to configure and bootstrap Hibernate,</li>
|
|
||||||
<li>{@link org.hibernate.StatelessSession} for processes involving many entity instances,</li>
|
|
||||||
<li>{@link org.hibernate.Cache} to manage the second-level cache,</li>
|
|
||||||
<li>{@link org.hibernate.Transaction} to control local transactions,</li>
|
|
||||||
<li>{@link org.hibernate.query.Query} to execute HQL queries,</li>
|
|
||||||
<li>{@link org.hibernate.query.NativeQuery} to execute native SQL queries,</li>
|
|
||||||
<li>{@link org.hibernate.Filter} to manage filters,</li>
|
|
||||||
<li>{@link org.hibernate.query.criteria.HibernateCriteriaBuilder} to construct criteria queries,
|
|
||||||
and</li>
|
|
||||||
<li>{@link org.hibernate.relational.SchemaManager} to execute DDL in tests.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>JPA</h3>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
The JPA interfaces are defined by the JPA specification. For details see the latest
|
|
||||||
<a href="https://jakarta.ee/specifications/persistence/">specification</a> along with the
|
|
||||||
<a href="https://jakarta.ee/specifications/persistence/2.2/apidocs/">API documentation</a>
|
|
||||||
for the package {@link jakarta.persistence}.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Note that since Hibernate 5.2, the native API extends the JPA API rather than wrapping it.
|
|
||||||
For example, <code>SessionFactory</code> extends <code>EntityManagerFactory</code>, and
|
|
||||||
<code>Session</code> extends <code>EntityManager</code>.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
It's always possible to fall back from JPA interfaces to native APIs, by calling
|
|
||||||
{@link jakarta.persistence.EntityManager#unwrap entityManager.unwrap(Session.class)},
|
|
||||||
{@link jakarta.persistence.EntityManagerFactory#unwrap entityManagerFactory.unwrap(SessionFactory.class)},
|
|
||||||
or {@link jakarta.persistence.Query#unwrap query.unwrap(Query.class)}. In certain cases
|
|
||||||
it's also possible to access native functionality by passing a
|
|
||||||
{@linkplain org.hibernate.jpa.SpecHints JPA-defined} or
|
|
||||||
{@linkplain org.hibernate.jpa.HibernateHints Hibernate-defined} hint, at the cost of a
|
|
||||||
loss of type-safety.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
These packages define additional extensions to the JPA APIs:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>{@link org.hibernate.query.criteria} packages extensions to {@link jakarta.persistence.criteria}, and</li>
|
|
||||||
<li>{@link org.hibernate.metamodel.model.domain} packages extensions to {@link jakarta.persistence.metamodel}.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>Mapping annotations</h3>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
The mapping annotations defined by the JPA specification provide a foundation for expressing
|
|
||||||
object/relational mappings in Hibernate and other JPA implementations.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
The annotations in the package {@link org.hibernate.annotations} extend this foundation and
|
|
||||||
accommodate more specialized requirements. These annotation are not tied to the native API,
|
|
||||||
and may be used in conjunction with the JPA API.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
The full power of Hibernate can only be unlocked via judicious use of these extra annotations.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h3>XML-based mappings</h3>
|
|
||||||
|
|
||||||
Annotation-based mappings are the best choice for most users, but Hibernate offers XML-based
|
|
||||||
mappings as an alternative.
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
The JPA-standard XML schema is
|
|
||||||
<a href="https://jakarta.ee/xml/ns/persistence/orm/orm_3_0.xsd">orm_3_0.xsd</a>.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
Hibernate extends this schema with some additional mapping elements. The extended schema is
|
|
||||||
<a href="https://hibernate.org/xsd/orm/mapping/mapping-3.1.0.xsd">mapping-3.1.0.xsd</a>.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
Prior to the existence of JPA, Hibernate had its own format for XML-based mappings,
|
|
||||||
which still works, though it has not been improved in a long time. The DTD is
|
|
||||||
<a href="http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">hibernate-mapping-3.0.dtd</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>Annotations driving compile-time tooling</h3>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
The annotations defined by {@link org.hibernate.annotations.processing} instruct the Metamodel
|
|
||||||
Generator to {@linkplain org.hibernate.annotations.processing.CheckHQL validate HQL at compile
|
|
||||||
time}, and to automatically generate the implementation of
|
|
||||||
{@linkplain org.hibernate.annotations.processing.Find finder methods} and
|
|
||||||
{@linkplain org.hibernate.annotations.processing.HQL query methods}.
|
|
||||||
<p>
|
|
||||||
|
|
||||||
<h3>Bootstrapping Hibernate</h3>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
There are four basic ways to obtain an instance of Hibernate:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
as a JPA <em>persistence provider</em>, by using
|
|
||||||
{@link jakarta.persistence.Persistence#createEntityManagerFactory},
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
by using the "simplified" {@link org.hibernate.cfg.Configuration} API,
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
for those who enjoy dirty hands, by using the APIs in {@link org.hibernate.boot}, or
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
in a <em>container environment</em> like
|
|
||||||
<a href="https://www.wildfly.org">WildFly</a> or <a href="https://quarkus.io">Quarkus</a>,
|
|
||||||
by letting the container take care of the bootstrap process and of injecting the
|
|
||||||
{@code EntityManagerFactory} or {@code SessionFactory}.
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<p>
|
|
||||||
All major Java application servers and microservice frameworks come with built-in support for
|
|
||||||
Hibernate. Such container environments also typically feature facilities to automatically
|
|
||||||
manage the lifecycle of a {@code EntityManager} or {@code Session} and its association with
|
|
||||||
container-managed transactions.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Example configuration files for JPA and native usage may be found {@linkplain org.hibernate.cfg
|
|
||||||
here}. A comprehensive list of configuration properties understood by Hibernate may be found in
|
|
||||||
the class {@link org.hibernate.cfg.AvailableSettings}. Most sensible programs will only ever need
|
|
||||||
to use a tiny handful of them.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h3>Popular extension points</h3>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Hibernate offers an enormous wealth of extension points for customizing almost any aspect of
|
|
||||||
its implementation. Most of these extension points are far too technical to be of interest to
|
|
||||||
the typical application developer.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
However, the following extension points are of quite general interest:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
{@link org.hibernate.boot.model.naming} allows the quantity of repetitive O/R mapping
|
|
||||||
metadata to be minimized via the use of naming strategies,
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
{@link org.hibernate.type.descriptor.jdbc} and {@link org.hibernate.type.descriptor.java}
|
|
||||||
contain the built-in {@code JdbcType}s and {@code JavaType}s for "compositional" basic
|
|
||||||
attribute type mappings,
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
{@link org.hibernate.usertype} defines support for user-defined custom attribute types,
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
{@link org.hibernate.generator} defines support for generated attribute values,
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
{@link org.hibernate.context.spi} defines support for context-bound "current" sessions
|
|
||||||
and contextual multi-tenancy, and
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
{@link org.hibernate.binder} allows for user-defined mapping annotations.
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<p>
|
|
||||||
More advanced extension points include:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
{@link org.hibernate.dialect} provides a framework for modelling dialects of SQL,
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
{@link org.hibernate.cache.spi} defines an SPI for integrating with second-level cache
|
|
||||||
providers,
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
{@link org.hibernate.engine.jdbc.connections.spi} defines an SPI for integrating with
|
|
||||||
JDBC connection pools.
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<p>
|
|
||||||
Finally, Hibernate ORM Core is itself a framework for advanced extensions like Hibernate Search,
|
|
||||||
Hibernate Reactive, and Envers, which do much more than just implementing a single well-defined
|
|
||||||
extension point. The starting points for such extensions are found in the packages
|
|
||||||
{@link org.hibernate.integrator.spi} and {@link org.hibernate.event.spi}.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h3>Package categories</h3>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
The organization of code into packages is based on the following classification:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<strong>API packages</strong> include classes and interfaces which are used directly by
|
|
||||||
a typical application. These packages never have <code>spi</code> nor <code>internal</code>
|
|
||||||
in their name, and are not under the namespace <code>org.hibernate.testing</code>.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<strong>SPI packages</strong> include classes and interfaces which are used by integrators,
|
|
||||||
library developers, and framework developers to develop extensions to Hibernate, or to alter
|
|
||||||
its behavior in some way. These packages usually have <code>spi</code> in their name.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
Some classes and interfaces are considered part of the internal implementation of Hibernate.
|
|
||||||
This category includes packages with <code>internal</code> in their name, along with any class
|
|
||||||
or interface annotated {@link org.hibernate.Internal @Internal}. Clients should avoid depending
|
|
||||||
directly on these types.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
The <code>hibernate-testing</code> module, and the namespace <code>org.hibernate.testing</code>
|
|
||||||
contain <strong>testing support</strong> used in the Hibernate test suite.
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>More information</h3>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Complete documentation may be found online at
|
|
||||||
<a href="http://hibernate.org/orm/documentation">http://hibernate.org/orm/documentation/</a>.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</body>
|
|
|
@ -1,948 +0,0 @@
|
||||||
/*
|
|
||||||
* Hibernate, Relational Persistence for Idiomatic Java
|
|
||||||
*
|
|
||||||
* Copyright (c) 2010, Red Hat Inc. or third-party contributors as
|
|
||||||
* indicated by the @author tags or express copyright attribution
|
|
||||||
* statements applied by the authors. All third-party contributions are
|
|
||||||
* distributed under license by Red Hat Inc.
|
|
||||||
*
|
|
||||||
* This copyrighted material is made available to anyone wishing to use, modify,
|
|
||||||
* copy, or redistribute it subject to the terms and conditions of the GNU
|
|
||||||
* Lesser General Public License, as published by the Free Software Foundation.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
|
|
||||||
* for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU Lesser General Public License
|
|
||||||
* along with this distribution; if not, write to:
|
|
||||||
* Free Software Foundation, Inc.
|
|
||||||
* 51 Franklin Street, Fifth Floor
|
|
||||||
* Boston, MA 02110-1301 USA
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Custom Hibernate javadoc style sheet
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Javadoc style sheet
|
|
||||||
*/
|
|
||||||
|
|
||||||
@import url('https://fonts.googleapis.com/css2?family=Inconsolata');
|
|
||||||
@import url('https://fonts.googleapis.com/css2?family=Lato');
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Styles for individual HTML elements.
|
|
||||||
*
|
|
||||||
* These are styles that are specific to individual HTML elements. Changing them affects the style of a particular
|
|
||||||
* HTML element throughout the page.
|
|
||||||
*/
|
|
||||||
|
|
||||||
body {
|
|
||||||
background-color:#ffffff;
|
|
||||||
color:#353833;
|
|
||||||
font-family:Lato, 'DejaVu Sans', Arial, Helvetica, sans-serif;
|
|
||||||
font-size:15px;
|
|
||||||
margin:0;
|
|
||||||
padding:0;
|
|
||||||
height:100%;
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
iframe {
|
|
||||||
margin:0;
|
|
||||||
padding:0;
|
|
||||||
height:100%;
|
|
||||||
width:100%;
|
|
||||||
overflow-y:scroll;
|
|
||||||
border:none;
|
|
||||||
}
|
|
||||||
a:link, a:visited {
|
|
||||||
text-decoration:none;
|
|
||||||
color:#4A6782;
|
|
||||||
}
|
|
||||||
a[href]:hover, a[href]:focus {
|
|
||||||
text-decoration:none;
|
|
||||||
color:#bb7a2a;
|
|
||||||
}
|
|
||||||
a[name] {
|
|
||||||
color:#353833;
|
|
||||||
}
|
|
||||||
a[name]:before, a[name]:target, a[id]:before, a[id]:target {
|
|
||||||
content:"";
|
|
||||||
display:inline-block;
|
|
||||||
position:relative;
|
|
||||||
padding-top:129px;
|
|
||||||
margin-top:-129px;
|
|
||||||
}
|
|
||||||
pre {
|
|
||||||
font-family:'Inconsolata', 'DejaVu Sans Mono', monospace;
|
|
||||||
font-size:15px;
|
|
||||||
}
|
|
||||||
h1 {
|
|
||||||
font-size:20px;
|
|
||||||
}
|
|
||||||
h2 {
|
|
||||||
font-size:18px;
|
|
||||||
}
|
|
||||||
h3 {
|
|
||||||
font-size:15px;
|
|
||||||
//font-style:italic;
|
|
||||||
}
|
|
||||||
h4 {
|
|
||||||
font-size:13px;
|
|
||||||
}
|
|
||||||
h5 {
|
|
||||||
font-size:12px;
|
|
||||||
}
|
|
||||||
h6 {
|
|
||||||
font-size:11px;
|
|
||||||
}
|
|
||||||
ul {
|
|
||||||
list-style-type:disc;
|
|
||||||
}
|
|
||||||
code, tt {
|
|
||||||
font-family:'Inconsolata', 'DejaVu Sans Mono', monospace;
|
|
||||||
font-size:15px;
|
|
||||||
padding-top:4px;
|
|
||||||
margin-top:8px;
|
|
||||||
line-height:1.4em;
|
|
||||||
}
|
|
||||||
dt code {
|
|
||||||
font-family:'Inconsolata', 'DejaVu Sans Mono', monospace;
|
|
||||||
font-size:15px;
|
|
||||||
padding-top:4px;
|
|
||||||
}
|
|
||||||
table tr td dt code {
|
|
||||||
font-family:'Inconsolata', 'DejaVu Sans Mono', monospace;
|
|
||||||
font-size:15px;
|
|
||||||
vertical-align:top;
|
|
||||||
padding-top:4px;
|
|
||||||
}
|
|
||||||
sup {
|
|
||||||
font-size:8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Styles for HTML generated by javadoc.
|
|
||||||
*
|
|
||||||
* These are style classes that are used by the standard doclet to generate HTML documentation.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Styles for document title and copyright.
|
|
||||||
*/
|
|
||||||
.clear {
|
|
||||||
clear:both;
|
|
||||||
height:0px;
|
|
||||||
overflow:hidden;
|
|
||||||
}
|
|
||||||
.aboutLanguage {
|
|
||||||
float:right;
|
|
||||||
padding:0px 21px;
|
|
||||||
font-size:11px;
|
|
||||||
z-index:200;
|
|
||||||
margin-top:-9px;
|
|
||||||
}
|
|
||||||
.legalCopy {
|
|
||||||
margin-left:.5em;
|
|
||||||
}
|
|
||||||
.bar a, .bar a:link, .bar a:visited, .bar a:active {
|
|
||||||
color:#FFFFFF;
|
|
||||||
text-decoration:none;
|
|
||||||
}
|
|
||||||
.bar a:hover, .bar a:focus {
|
|
||||||
color:#bb7a2a;
|
|
||||||
}
|
|
||||||
.tab {
|
|
||||||
background-color:#0066FF;
|
|
||||||
color:#ffffff;
|
|
||||||
padding:8px;
|
|
||||||
width:5em;
|
|
||||||
font-weight:bold;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for navigation bar.
|
|
||||||
*/
|
|
||||||
.bar {
|
|
||||||
background-color:rgb(89, 102, 108);
|
|
||||||
color:#FFFFFF;
|
|
||||||
padding:.8em .5em .4em .8em;
|
|
||||||
height:auto;/*height:1.8em;*/
|
|
||||||
font-size:11px;
|
|
||||||
margin:0;
|
|
||||||
}
|
|
||||||
.navPadding {
|
|
||||||
padding-top: 107px;
|
|
||||||
}
|
|
||||||
.fixedNav {
|
|
||||||
position:fixed;
|
|
||||||
width:100%;
|
|
||||||
z-index:999;
|
|
||||||
background-color:#ffffff;
|
|
||||||
}
|
|
||||||
.topNav {
|
|
||||||
background-color:rgb(89, 102, 108);
|
|
||||||
color:#FFFFFF;
|
|
||||||
float:left;
|
|
||||||
padding:0;
|
|
||||||
width:100%;
|
|
||||||
clear:right;
|
|
||||||
height:2.8em;
|
|
||||||
padding-top:10px;
|
|
||||||
overflow:hidden;
|
|
||||||
font-size:12px;
|
|
||||||
}
|
|
||||||
.bottomNav {
|
|
||||||
margin-top:10px;
|
|
||||||
background-color:rgb(89, 102, 108);
|
|
||||||
color:#FFFFFF;
|
|
||||||
float:left;
|
|
||||||
padding:0;
|
|
||||||
width:100%;
|
|
||||||
clear:right;
|
|
||||||
height:2.8em;
|
|
||||||
padding-top:10px;
|
|
||||||
overflow:hidden;
|
|
||||||
font-size:12px;
|
|
||||||
}
|
|
||||||
.subNav {
|
|
||||||
background-color:rgb(188, 174, 121, 0.5);
|
|
||||||
float:left;
|
|
||||||
width:100%;
|
|
||||||
overflow:hidden;
|
|
||||||
font-size:12px;
|
|
||||||
}
|
|
||||||
.subNav div {
|
|
||||||
clear:left;
|
|
||||||
float:left;
|
|
||||||
padding:0 0 5px 6px;
|
|
||||||
text-transform:uppercase;
|
|
||||||
}
|
|
||||||
ul.navList, ul.subNavList {
|
|
||||||
float:left;
|
|
||||||
margin:0 25px 0 0;
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
ul.navList li{
|
|
||||||
list-style:none;
|
|
||||||
float:left;
|
|
||||||
padding: 5px 6px;
|
|
||||||
text-transform:uppercase;
|
|
||||||
}
|
|
||||||
ul.navListSearch {
|
|
||||||
float:right;
|
|
||||||
margin:0 0 0 0;
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
ul.navListSearch li {
|
|
||||||
list-style:none;
|
|
||||||
float:right;
|
|
||||||
padding: 5px 6px;
|
|
||||||
text-transform:uppercase;
|
|
||||||
}
|
|
||||||
ul.navListSearch li label {
|
|
||||||
position:relative;
|
|
||||||
right:-16px;
|
|
||||||
}
|
|
||||||
ul.subNavList li {
|
|
||||||
list-style:none;
|
|
||||||
float:left;
|
|
||||||
}
|
|
||||||
.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited {
|
|
||||||
color:#FFFFFF;
|
|
||||||
text-decoration:none;
|
|
||||||
text-transform:uppercase;
|
|
||||||
}
|
|
||||||
.topNav a:hover, .bottomNav a:hover {
|
|
||||||
text-decoration:none;
|
|
||||||
color:#bb7a2a;
|
|
||||||
text-transform:uppercase;
|
|
||||||
}
|
|
||||||
.navBarCell1Rev {
|
|
||||||
background-color:rgb(248, 152, 29);
|
|
||||||
color:#253441;
|
|
||||||
margin: auto 5px;
|
|
||||||
}
|
|
||||||
.skipNav {
|
|
||||||
position:absolute;
|
|
||||||
top:auto;
|
|
||||||
left:-9999px;
|
|
||||||
overflow:hidden;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for page header and footer.
|
|
||||||
*/
|
|
||||||
.header, .footer {
|
|
||||||
clear:both;
|
|
||||||
margin:0 20px;
|
|
||||||
padding:5px 0 0 0;
|
|
||||||
}
|
|
||||||
.indexNav {
|
|
||||||
position:relative;
|
|
||||||
font-size:12px;
|
|
||||||
background-color:rgb(188, 174, 121, 0.5);
|
|
||||||
}
|
|
||||||
.indexNav ul {
|
|
||||||
margin-top:0;
|
|
||||||
padding:5px;
|
|
||||||
}
|
|
||||||
.indexNav ul li {
|
|
||||||
display:inline;
|
|
||||||
list-style-type:none;
|
|
||||||
padding-right:10px;
|
|
||||||
text-transform:uppercase;
|
|
||||||
}
|
|
||||||
.indexNav h1 {
|
|
||||||
font-size:13px;
|
|
||||||
}
|
|
||||||
.title {
|
|
||||||
color:#2c4557;
|
|
||||||
margin:10px 0;
|
|
||||||
}
|
|
||||||
.subTitle {
|
|
||||||
margin:5px 0 0 0;
|
|
||||||
}
|
|
||||||
.header ul {
|
|
||||||
margin:0 0 15px 0;
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
.footer ul {
|
|
||||||
margin:20px 0 5px 0;
|
|
||||||
}
|
|
||||||
.header ul li, .footer ul li {
|
|
||||||
list-style:none;
|
|
||||||
font-size:13px;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for headings.
|
|
||||||
*/
|
|
||||||
div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 {
|
|
||||||
background-color:rgb(188, 174, 121, 0.5);
|
|
||||||
border:1px solid #d0d9e0;
|
|
||||||
margin:0 0 6px -8px;
|
|
||||||
padding:7px 5px;
|
|
||||||
}
|
|
||||||
ul.blockList ul.blockList ul.blockList li.blockList h3 {
|
|
||||||
background-color:rgb(188, 174, 121, 0.5);
|
|
||||||
border:1px solid #d0d9e0;
|
|
||||||
margin:0 0 6px -8px;
|
|
||||||
padding:7px 5px;
|
|
||||||
}
|
|
||||||
ul.blockList ul.blockList li.blockList h3 {
|
|
||||||
padding:0;
|
|
||||||
margin:15px 0;
|
|
||||||
}
|
|
||||||
ul.blockList li.blockList h2 {
|
|
||||||
padding:0px 0 20px 0;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for page layout containers.
|
|
||||||
*/
|
|
||||||
.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer,
|
|
||||||
.allClassesContainer, .allPackagesContainer {
|
|
||||||
clear:both;
|
|
||||||
padding:10px 20px;
|
|
||||||
position:relative;
|
|
||||||
}
|
|
||||||
.indexContainer {
|
|
||||||
margin:10px;
|
|
||||||
position:relative;
|
|
||||||
font-size:14px;
|
|
||||||
}
|
|
||||||
.indexContainer h2 {
|
|
||||||
font-size:13px;
|
|
||||||
padding:0 0 3px 0;
|
|
||||||
}
|
|
||||||
.indexContainer ul {
|
|
||||||
margin:0;
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
.indexContainer ul li {
|
|
||||||
list-style:none;
|
|
||||||
padding-top:2px;
|
|
||||||
}
|
|
||||||
.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt {
|
|
||||||
font-size:14px;
|
|
||||||
font-weight:bold;
|
|
||||||
margin:10px 0 0 0;
|
|
||||||
color:#4E4E4E;
|
|
||||||
}
|
|
||||||
.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd {
|
|
||||||
margin:5px 0 10px 0px;
|
|
||||||
font-size:15px;
|
|
||||||
font-family:Lato, 'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
|
|
||||||
}
|
|
||||||
.serializedFormContainer dl.nameValue dt {
|
|
||||||
margin-left:1px;
|
|
||||||
font-size:1.1em;
|
|
||||||
display:inline;
|
|
||||||
font-weight:bold;
|
|
||||||
}
|
|
||||||
.serializedFormContainer dl.nameValue dd {
|
|
||||||
margin:0 0 0 1px;
|
|
||||||
font-size:1.1em;
|
|
||||||
display:inline;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for lists.
|
|
||||||
*/
|
|
||||||
li.circle {
|
|
||||||
list-style:circle;
|
|
||||||
}
|
|
||||||
ul.horizontal li {
|
|
||||||
display:inline;
|
|
||||||
font-size:0.9em;
|
|
||||||
}
|
|
||||||
ul.inheritance {
|
|
||||||
margin:0;
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
ul.inheritance li {
|
|
||||||
display:inline;
|
|
||||||
list-style:none;
|
|
||||||
}
|
|
||||||
ul.inheritance li ul.inheritance {
|
|
||||||
margin-left:15px;
|
|
||||||
padding-left:15px;
|
|
||||||
padding-top:1px;
|
|
||||||
}
|
|
||||||
ul.blockList, ul.blockListLast {
|
|
||||||
margin:10px 0 10px 0;
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
ul.blockList li.blockList, ul.blockListLast li.blockList {
|
|
||||||
list-style:none;
|
|
||||||
margin-bottom:15px;
|
|
||||||
line-height:1.4;
|
|
||||||
}
|
|
||||||
ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList {
|
|
||||||
padding:0px 20px 5px 10px;
|
|
||||||
border:1px solid #ededed;
|
|
||||||
background-color:#f8f8f8;
|
|
||||||
}
|
|
||||||
ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList {
|
|
||||||
padding:0 0 5px 8px;
|
|
||||||
background-color:#ffffff;
|
|
||||||
border:none;
|
|
||||||
}
|
|
||||||
ul.blockList ul.blockList ul.blockList ul.blockList li.blockList {
|
|
||||||
margin-left:0;
|
|
||||||
padding-left:0;
|
|
||||||
padding-bottom:15px;
|
|
||||||
border:none;
|
|
||||||
}
|
|
||||||
ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast {
|
|
||||||
list-style:none;
|
|
||||||
border-bottom:none;
|
|
||||||
padding-bottom:0;
|
|
||||||
}
|
|
||||||
table tr td dl, table tr td dl dt, table tr td dl dd {
|
|
||||||
margin-top:0;
|
|
||||||
margin-bottom:1px;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for tables.
|
|
||||||
*/
|
|
||||||
.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary,
|
|
||||||
.requiresSummary, .packagesSummary, .providesSummary, .usesSummary {
|
|
||||||
width:100%;
|
|
||||||
border-spacing:0;
|
|
||||||
border-left:1px solid #EEE;
|
|
||||||
border-right:1px solid #EEE;
|
|
||||||
border-bottom:1px solid #EEE;
|
|
||||||
}
|
|
||||||
.overviewSummary, .memberSummary, .requiresSummary, .packagesSummary, .providesSummary, .usesSummary {
|
|
||||||
padding:0px;
|
|
||||||
}
|
|
||||||
.overviewSummary caption, .memberSummary caption, .typeSummary caption,
|
|
||||||
.useSummary caption, .constantsSummary caption, .deprecatedSummary caption,
|
|
||||||
.requiresSummary caption, .packagesSummary caption, .providesSummary caption, .usesSummary caption {
|
|
||||||
position:relative;
|
|
||||||
text-align:left;
|
|
||||||
background-repeat:no-repeat;
|
|
||||||
color:#253441;
|
|
||||||
font-weight:bold;
|
|
||||||
clear:none;
|
|
||||||
overflow:hidden;
|
|
||||||
padding:0px;
|
|
||||||
padding-top:10px;
|
|
||||||
padding-left:1px;
|
|
||||||
margin:0px;
|
|
||||||
white-space:pre;
|
|
||||||
}
|
|
||||||
.constantsSummary caption a:link, .constantsSummary caption a:visited,
|
|
||||||
.useSummary caption a:link, .useSummary caption a:visited {
|
|
||||||
color:#1f389c;
|
|
||||||
}
|
|
||||||
.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link,
|
|
||||||
.deprecatedSummary caption a:link,
|
|
||||||
.requiresSummary caption a:link, .packagesSummary caption a:link, .providesSummary caption a:link,
|
|
||||||
.usesSummary caption a:link,
|
|
||||||
.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover,
|
|
||||||
.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover,
|
|
||||||
.requiresSummary caption a:hover, .packagesSummary caption a:hover, .providesSummary caption a:hover,
|
|
||||||
.usesSummary caption a:hover,
|
|
||||||
.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active,
|
|
||||||
.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active,
|
|
||||||
.requiresSummary caption a:active, .packagesSummary caption a:active, .providesSummary caption a:active,
|
|
||||||
.usesSummary caption a:active,
|
|
||||||
.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited,
|
|
||||||
.deprecatedSummary caption a:visited,
|
|
||||||
.requiresSummary caption a:visited, .packagesSummary caption a:visited, .providesSummary caption a:visited,
|
|
||||||
.usesSummary caption a:visited {
|
|
||||||
color:#FFFFFF;
|
|
||||||
}
|
|
||||||
.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span,
|
|
||||||
.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span,
|
|
||||||
.requiresSummary caption span, .packagesSummary caption span, .providesSummary caption span,
|
|
||||||
.usesSummary caption span {
|
|
||||||
white-space:nowrap;
|
|
||||||
padding-top:5px;
|
|
||||||
padding-bottom:8px;
|
|
||||||
padding-left:12px;
|
|
||||||
padding-right:12px;
|
|
||||||
display:inline-block;
|
|
||||||
float:left;
|
|
||||||
background-color:rgb(248, 152, 29);
|
|
||||||
border:none;
|
|
||||||
height:15px;
|
|
||||||
font-size:14px;
|
|
||||||
}
|
|
||||||
.memberSummary caption span.activeTableTab span, .packagesSummary caption span.activeTableTab span,
|
|
||||||
.overviewSummary caption span.activeTableTab span, .typeSummary caption span.activeTableTab span {
|
|
||||||
white-space:nowrap;
|
|
||||||
padding-top:5px;
|
|
||||||
padding-bottom:8px;
|
|
||||||
padding-left:12px;
|
|
||||||
padding-right:12px;
|
|
||||||
display:inline-block;
|
|
||||||
float:left;
|
|
||||||
background-color:rgb(248, 152, 29);
|
|
||||||
border:none;
|
|
||||||
height:15px;
|
|
||||||
font-size:14px;
|
|
||||||
}
|
|
||||||
.memberSummary caption span.tableTab span, .packagesSummary caption span.tableTab span,
|
|
||||||
.overviewSummary caption span.tableTab span, .typeSummary caption span.tableTab span {
|
|
||||||
white-space:nowrap;
|
|
||||||
padding-top:5px;
|
|
||||||
padding-left:12px;
|
|
||||||
padding-right:12px;
|
|
||||||
margin-right:3px;
|
|
||||||
display:inline-block;
|
|
||||||
float:left;
|
|
||||||
background-color:rgb(89, 102, 108);
|
|
||||||
height:15px;
|
|
||||||
}
|
|
||||||
.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab,
|
|
||||||
.packagesSummary caption span.tableTab, .packagesSummary caption span.activeTableTab,
|
|
||||||
.overviewSummary caption span.tableTab, .overviewSummary caption span.activeTableTab,
|
|
||||||
.typeSummary caption span.tableTab, .typeSummary caption span.activeTableTab {
|
|
||||||
padding-top:0px;
|
|
||||||
padding-left:0px;
|
|
||||||
padding-right:0px;
|
|
||||||
background-image:none;
|
|
||||||
float:none;
|
|
||||||
display:inline;
|
|
||||||
}
|
|
||||||
.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd,
|
|
||||||
.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd,
|
|
||||||
.requiresSummary .tabEnd, .packagesSummary .tabEnd, .providesSummary .tabEnd, .usesSummary .tabEnd {
|
|
||||||
display:none;
|
|
||||||
width:5px;
|
|
||||||
position:relative;
|
|
||||||
float:left;
|
|
||||||
background-color:rgb(248, 152, 29);
|
|
||||||
}
|
|
||||||
.memberSummary .activeTableTab .tabEnd, .packagesSummary .activeTableTab .tabEnd,
|
|
||||||
.overviewSummary .activeTableTab .tabEnd, .typeSummary .activeTableTab .tabEnd {
|
|
||||||
display:none;
|
|
||||||
width:5px;
|
|
||||||
margin-right:3px;
|
|
||||||
position:relative;
|
|
||||||
float:left;
|
|
||||||
background-color:rgb(248, 152, 29);
|
|
||||||
}
|
|
||||||
.memberSummary .tableTab .tabEnd, .packagesSummary .tableTab .tabEnd,
|
|
||||||
.overviewSummary .tableTab .tabEnd, .typeSummary .tableTab .tabEnd {
|
|
||||||
display:none;
|
|
||||||
width:5px;
|
|
||||||
margin-right:3px;
|
|
||||||
position:relative;
|
|
||||||
background-color:rgb(89, 102, 108);
|
|
||||||
float:left;
|
|
||||||
}
|
|
||||||
.rowColor th, .altColor th {
|
|
||||||
font-weight:normal;
|
|
||||||
}
|
|
||||||
.overviewSummary td, .memberSummary td, .typeSummary td,
|
|
||||||
.useSummary td, .constantsSummary td, .deprecatedSummary td,
|
|
||||||
.requiresSummary td, .packagesSummary td, .providesSummary td, .usesSummary td {
|
|
||||||
text-align:left;
|
|
||||||
padding:0px 0px 12px 10px;
|
|
||||||
}
|
|
||||||
th.colFirst, th.colSecond, th.colLast, th.colConstructorName, th.colDeprecatedItemName, .useSummary th,
|
|
||||||
.constantsSummary th, .packagesSummary th, td.colFirst, td.colSecond, td.colLast, .useSummary td,
|
|
||||||
.constantsSummary td {
|
|
||||||
vertical-align:top;
|
|
||||||
padding-right:0px;
|
|
||||||
padding-top:5px;
|
|
||||||
padding-bottom:5px;
|
|
||||||
}
|
|
||||||
th.colFirst, th.colSecond, th.colLast, th.colConstructorName, th.colDeprecatedItemName, .constantsSummary th,
|
|
||||||
.packagesSummary th {
|
|
||||||
background:rgb(188, 174, 121, 0.5);
|
|
||||||
text-align:left;
|
|
||||||
padding-top:5px;
|
|
||||||
padding-bottom:5px;
|
|
||||||
padding-left:10px;
|
|
||||||
}
|
|
||||||
td.colFirst, th.colFirst {
|
|
||||||
font-size:13px;
|
|
||||||
}
|
|
||||||
td.colSecond, th.colSecond, td.colLast, th.colConstructorName, th.colDeprecatedItemName, th.colLast {
|
|
||||||
font-size:13px;
|
|
||||||
}
|
|
||||||
.constantsSummary th, .packagesSummary th {
|
|
||||||
font-size:13px;
|
|
||||||
}
|
|
||||||
.providesSummary th.colFirst, .providesSummary th.colLast, .providesSummary td.colFirst,
|
|
||||||
.providesSummary td.colLast {
|
|
||||||
white-space:normal;
|
|
||||||
font-size:13px;
|
|
||||||
}
|
|
||||||
.overviewSummary td.colFirst, .overviewSummary th.colFirst,
|
|
||||||
.requiresSummary td.colFirst, .requiresSummary th.colFirst,
|
|
||||||
.packagesSummary td.colFirst, .packagesSummary td.colSecond, .packagesSummary th.colFirst, .packagesSummary th,
|
|
||||||
.usesSummary td.colFirst, .usesSummary th.colFirst,
|
|
||||||
.providesSummary td.colFirst, .providesSummary th.colFirst,
|
|
||||||
.memberSummary td.colFirst, .memberSummary th.colFirst,
|
|
||||||
.memberSummary td.colSecond, .memberSummary th.colSecond, .memberSummary th.colConstructorName,
|
|
||||||
.typeSummary td.colFirst, .typeSummary th.colFirst {
|
|
||||||
vertical-align:top;
|
|
||||||
}
|
|
||||||
.packagesSummary th.colLast, .packagesSummary td.colLast {
|
|
||||||
white-space:normal;
|
|
||||||
}
|
|
||||||
td.colFirst a:link, td.colFirst a:visited,
|
|
||||||
td.colSecond a:link, td.colSecond a:visited,
|
|
||||||
th.colFirst a:link, th.colFirst a:visited,
|
|
||||||
th.colSecond a:link, th.colSecond a:visited,
|
|
||||||
th.colConstructorName a:link, th.colConstructorName a:visited,
|
|
||||||
th.colDeprecatedItemName a:link, th.colDeprecatedItemName a:visited,
|
|
||||||
.constantValuesContainer td a:link, .constantValuesContainer td a:visited,
|
|
||||||
.allClassesContainer td a:link, .allClassesContainer td a:visited,
|
|
||||||
.allPackagesContainer td a:link, .allPackagesContainer td a:visited {
|
|
||||||
font-weight:bold;
|
|
||||||
}
|
|
||||||
.tableSubHeadingColor {
|
|
||||||
background-color:#EEEEFF;
|
|
||||||
}
|
|
||||||
.altColor, .altColor th {
|
|
||||||
background-color:#FFFFFF;
|
|
||||||
}
|
|
||||||
.rowColor, .rowColor th {
|
|
||||||
background-color:#EEEEEF;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for contents.
|
|
||||||
*/
|
|
||||||
.description pre {
|
|
||||||
margin-top:0;
|
|
||||||
}
|
|
||||||
.deprecatedContent {
|
|
||||||
margin:0;
|
|
||||||
padding:10px 0;
|
|
||||||
}
|
|
||||||
.docSummary {
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
ul.blockList ul.blockList ul.blockList li.blockList h3 {
|
|
||||||
font-style:normal;
|
|
||||||
}
|
|
||||||
div.block {
|
|
||||||
font-size:15px;
|
|
||||||
font-family:Lato, 'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
|
|
||||||
}
|
|
||||||
td.colLast div {
|
|
||||||
padding-top:0px;
|
|
||||||
}
|
|
||||||
td.colLast a {
|
|
||||||
padding-bottom:3px;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for formatting effect.
|
|
||||||
*/
|
|
||||||
.sourceLineNo {
|
|
||||||
color:green;
|
|
||||||
padding:0 30px 0 0;
|
|
||||||
}
|
|
||||||
h1.hidden {
|
|
||||||
visibility:hidden;
|
|
||||||
overflow:hidden;
|
|
||||||
font-size:10px;
|
|
||||||
}
|
|
||||||
.block {
|
|
||||||
display:block;
|
|
||||||
margin:3px 10px 2px 0px;
|
|
||||||
color:#474747;
|
|
||||||
}
|
|
||||||
.deprecatedLabel, .descfrmTypeLabel, .implementationLabel, .memberNameLabel, .memberNameLink,
|
|
||||||
.moduleLabelInPackage, .moduleLabelInType, .overrideSpecifyLabel, .packageLabelInType,
|
|
||||||
.packageHierarchyLabel, .paramLabel, .returnLabel, .seeLabel, .simpleTagLabel,
|
|
||||||
.throwsLabel, .typeNameLabel, .typeNameLink, .searchTagLink {
|
|
||||||
font-weight:bold;
|
|
||||||
}
|
|
||||||
.deprecationComment, .emphasizedPhrase, .interfaceName {
|
|
||||||
font-style:italic;
|
|
||||||
}
|
|
||||||
.deprecationBlock {
|
|
||||||
font-size:15px;
|
|
||||||
font-family:Lato, 'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
|
|
||||||
border-style:solid;
|
|
||||||
border-width:thin;
|
|
||||||
//border-radius:10px;
|
|
||||||
padding:10px;
|
|
||||||
margin-bottom:10px;
|
|
||||||
margin-right:10px;
|
|
||||||
display:inline-block;
|
|
||||||
}
|
|
||||||
div.block div.deprecationComment, div.block div.block span.emphasizedPhrase,
|
|
||||||
div.block div.block span.interfaceName {
|
|
||||||
font-style:normal;
|
|
||||||
}
|
|
||||||
div.contentContainer ul.blockList li.blockList h2 {
|
|
||||||
padding-bottom:0px;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for IFRAME.
|
|
||||||
*/
|
|
||||||
.mainContainer {
|
|
||||||
margin:0 auto;
|
|
||||||
padding:0;
|
|
||||||
height:100%;
|
|
||||||
width:100%;
|
|
||||||
position:fixed;
|
|
||||||
top:0;
|
|
||||||
left:0;
|
|
||||||
}
|
|
||||||
.leftContainer {
|
|
||||||
height:100%;
|
|
||||||
position:fixed;
|
|
||||||
width:320px;
|
|
||||||
}
|
|
||||||
.leftTop {
|
|
||||||
position:relative;
|
|
||||||
float:left;
|
|
||||||
width:315px;
|
|
||||||
top:0;
|
|
||||||
left:0;
|
|
||||||
height:30%;
|
|
||||||
border-right:6px solid #ccc;
|
|
||||||
border-bottom:6px solid #ccc;
|
|
||||||
}
|
|
||||||
.leftBottom {
|
|
||||||
position:relative;
|
|
||||||
float:left;
|
|
||||||
width:315px;
|
|
||||||
bottom:0;
|
|
||||||
left:0;
|
|
||||||
height:70%;
|
|
||||||
border-right:6px solid #ccc;
|
|
||||||
border-top:1px solid #000;
|
|
||||||
}
|
|
||||||
.rightContainer {
|
|
||||||
position:absolute;
|
|
||||||
left:320px;
|
|
||||||
top:0;
|
|
||||||
bottom:0;
|
|
||||||
height:100%;
|
|
||||||
right:0;
|
|
||||||
border-left:1px solid #000;
|
|
||||||
}
|
|
||||||
.rightIframe {
|
|
||||||
margin:0;
|
|
||||||
padding:0;
|
|
||||||
height:100%;
|
|
||||||
right:30px;
|
|
||||||
width:100%;
|
|
||||||
overflow:visible;
|
|
||||||
margin-bottom:30px;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles specific to HTML5 elements.
|
|
||||||
*/
|
|
||||||
main, nav, header, footer, section {
|
|
||||||
display:block;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Styles for javadoc search.
|
|
||||||
*/
|
|
||||||
.ui-autocomplete-category {
|
|
||||||
font-weight:bold;
|
|
||||||
font-size:15px;
|
|
||||||
padding:7px 0 7px 3px;
|
|
||||||
background-color:rgb(89, 102, 108);
|
|
||||||
color:#FFFFFF;
|
|
||||||
}
|
|
||||||
.resultItem {
|
|
||||||
font-size:13px;
|
|
||||||
}
|
|
||||||
.ui-autocomplete {
|
|
||||||
max-height:85%;
|
|
||||||
max-width:65%;
|
|
||||||
overflow-y:scroll;
|
|
||||||
overflow-x:scroll;
|
|
||||||
white-space:nowrap;
|
|
||||||
box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
|
|
||||||
}
|
|
||||||
ul.ui-autocomplete {
|
|
||||||
position:fixed;
|
|
||||||
z-index:999999;
|
|
||||||
background-color: #FFFFFF;
|
|
||||||
}
|
|
||||||
ul.ui-autocomplete li {
|
|
||||||
float:left;
|
|
||||||
clear:both;
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
.resultHighlight {
|
|
||||||
font-weight:bold;
|
|
||||||
}
|
|
||||||
.ui-autocomplete .result-item {
|
|
||||||
font-size: inherit;
|
|
||||||
}
|
|
||||||
#search {
|
|
||||||
background-image:url('resources/glass.png');
|
|
||||||
background-size:13px;
|
|
||||||
background-repeat:no-repeat;
|
|
||||||
background-position:2px 3px;
|
|
||||||
padding-left:20px;
|
|
||||||
position:relative;
|
|
||||||
right:-18px;
|
|
||||||
}
|
|
||||||
#reset {
|
|
||||||
background-color: rgb(255,255,255);
|
|
||||||
background-image:url('resources/x.png');
|
|
||||||
background-position:center;
|
|
||||||
background-repeat:no-repeat;
|
|
||||||
background-size:12px;
|
|
||||||
border:0 none;
|
|
||||||
width:15px;
|
|
||||||
height:17px;
|
|
||||||
position:relative;
|
|
||||||
left:-4px;
|
|
||||||
top:-4px;
|
|
||||||
font-size:0px;
|
|
||||||
}
|
|
||||||
.watermark {
|
|
||||||
color:#545454;
|
|
||||||
}
|
|
||||||
.searchTagDescResult {
|
|
||||||
font-style:italic;
|
|
||||||
font-size:11px;
|
|
||||||
}
|
|
||||||
.searchTagHolderResult {
|
|
||||||
font-style:italic;
|
|
||||||
font-size:12px;
|
|
||||||
}
|
|
||||||
.searchTagResult:before, .searchTagResult:target {
|
|
||||||
color:red;
|
|
||||||
}
|
|
||||||
.moduleGraph span {
|
|
||||||
display:none;
|
|
||||||
position:absolute;
|
|
||||||
}
|
|
||||||
.moduleGraph:hover span {
|
|
||||||
display:block;
|
|
||||||
margin: -100px 0 0 100px;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
|
||||||
.methodSignature {
|
|
||||||
white-space:normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Styles for user-provided tables.
|
|
||||||
*
|
|
||||||
* borderless:
|
|
||||||
* No borders, vertical margins, styled caption.
|
|
||||||
* This style is provided for use with existing doc comments.
|
|
||||||
* In general, borderless tables should not be used for layout purposes.
|
|
||||||
*
|
|
||||||
* plain:
|
|
||||||
* Plain borders around table and cells, vertical margins, styled caption.
|
|
||||||
* Best for small tables or for complex tables for tables with cells that span
|
|
||||||
* rows and columns, when the "striped" style does not work well.
|
|
||||||
*
|
|
||||||
* striped:
|
|
||||||
* Borders around the table and vertical borders between cells, striped rows,
|
|
||||||
* vertical margins, styled caption.
|
|
||||||
* Best for tables that have a header row, and a body containing a series of simple rows.
|
|
||||||
*/
|
|
||||||
|
|
||||||
table.borderless,
|
|
||||||
table.plain,
|
|
||||||
table.striped {
|
|
||||||
margin-top: 10px;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
|
||||||
table.borderless > caption,
|
|
||||||
table.plain > caption,
|
|
||||||
table.striped > caption {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: smaller;
|
|
||||||
}
|
|
||||||
table.borderless th, table.borderless td,
|
|
||||||
table.plain th, table.plain td,
|
|
||||||
table.striped th, table.striped td {
|
|
||||||
padding: 2px 5px;
|
|
||||||
}
|
|
||||||
table.borderless,
|
|
||||||
table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th,
|
|
||||||
table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td {
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
table.plain {
|
|
||||||
border-collapse: collapse;
|
|
||||||
border: 1px solid black;
|
|
||||||
}
|
|
||||||
table.plain > thead > tr, table.plain > tbody tr, table.plain > tr {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th,
|
|
||||||
table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td {
|
|
||||||
border: 1px solid black;
|
|
||||||
}
|
|
||||||
table.striped {
|
|
||||||
border-collapse: collapse;
|
|
||||||
border: 1px solid black;
|
|
||||||
}
|
|
||||||
table.striped > thead {
|
|
||||||
background-color: #E3E3E3;
|
|
||||||
}
|
|
||||||
table.striped > thead > tr > th, table.striped > thead > tr > td {
|
|
||||||
border: 1px solid black;
|
|
||||||
}
|
|
||||||
table.striped > tbody > tr:nth-child(even) {
|
|
||||||
background-color: #EEE
|
|
||||||
}
|
|
||||||
table.striped > tbody > tr:nth-child(odd) {
|
|
||||||
background-color: #FFF
|
|
||||||
}
|
|
||||||
table.striped > tbody > tr > th, table.striped > tbody > tr > td {
|
|
||||||
border-left: 1px solid black;
|
|
||||||
border-right: 1px solid black;
|
|
||||||
}
|
|
||||||
table.striped > tbody > tr > th {
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
.ui-widget {
|
|
||||||
font-family: Lato!important;
|
|
||||||
font-size:14px;
|
|
||||||
}
|
|
|
@ -136,6 +136,13 @@ else {
|
||||||
" Using the JDK that runs Gradle for Groovy compilation." )
|
" Using the JDK that runs Gradle for Groovy compilation." )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tasks.named( "javadoc", Javadoc ) {
|
||||||
|
configure( options ) {
|
||||||
|
windowTitle = "Hibernate Javadocs ($project.name)"
|
||||||
|
docTitle = "Hibernate Javadocs ($project.name : $project.version)"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
checkstyle {
|
checkstyle {
|
||||||
sourceSets = [ project.sourceSets.main ]
|
sourceSets = [ project.sourceSets.main ]
|
||||||
configFile = rootProject.file( 'shared/config/checkstyle/checkstyle.xml' )
|
configFile = rootProject.file( 'shared/config/checkstyle/checkstyle.xml' )
|
||||||
|
|
Loading…
Reference in New Issue