diff --git a/pom.xml b/pom.xml index 7e75be69..0cc369bd 100755 --- a/pom.xml +++ b/pom.xml @@ -1,7 +1,50 @@ + 4.0.0 + org.springframework.cloud + spring-cloud-task-parent + 1.0.0.BUILD-SNAPSHOT + pom + Spring Cloud Task Build + Spring Cloud Task Build + https://cloud.spring.io/spring-cloud-task/ + + Pivotal Software, Inc. + https://www.spring.io + + + + Apache License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0 + + + + https://github.com/spring-cloud/spring-cloud-task + + + + mminella + Michael Minella + mminella at pivotal.io + Pivotal Software, Inc. + https://www.spring.io + + Project Lead + + + + cppwfs + Glenn Renfro + grenfro at pivotal.io + Pivotal Software, Inc. + https://www.spring.io + + + + 3.2.1 + @@ -15,18 +58,12 @@ - 4.0.0 - org.springframework.cloud - spring-cloud-task-parent - pom - spring-cloud-task-parent - 1.0.0.BUILD-SNAPSHOT - Spring Cloud Task Parent spring-cloud-task-core spring-cloud-task-samples + spring-cloud-task-docs diff --git a/spring-cloud-task-docs/pom.xml b/spring-cloud-task-docs/pom.xml new file mode 100644 index 00000000..bda88a6b --- /dev/null +++ b/spring-cloud-task-docs/pom.xml @@ -0,0 +1,300 @@ + + + 4.0.0 + + org.springframework.cloud + spring-cloud-task-parent + 1.0.0.BUILD-SNAPSHOT + + spring-cloud-task-docs + Spring Cloud Task Docs + Spring Cloud Task Docs + + ${basedir}/.. + + + + + + full + + + + org.codehaus.mojo + xml-maven-plugin + 1.0 + + + + transform + + + + + + + ${project.build.directory}/external-resources + src/main/xslt/dependencyVersions.xsl + + + .adoc + + + ${project.build.directory}/generated-resources + + + + + + org.asciidoctor + asciidoctor-maven-plugin + 1.5.2 + + + + + org.jruby + jruby-complete + 9.0.0.0 + + + + + generate-docbook + generate-resources + + process-asciidoc + + + index.adoc + docbook5 + book + + true + ${project.version} + ${project.version} + ${spring-boot-repo} + ${spring.version} + ${spring-security.version} + true + ${github-tag} + + + + + + + com.agilejava.docbkx + docbkx-maven-plugin + 2.0.15 + + ${basedir}/target/generated-docs + index.xml + true + false + ${basedir}/src/main/docbook/xsl/pdf.xsl + 1 + 1 + ${basedir}/src/main/docbook/xsl/xslthl-config.xml + + + + net.sf.xslthl + xslthl + 2.1.0 + + + net.sf.docbook + docbook-xml + 5.0-all + resources + zip + runtime + + + + + html-single + + generate-html + + generate-resources + + ${basedir}/src/main/docbook/xsl/html-singlepage.xsl + ${basedir}/target/docbook/htmlsingle + + + + + + + + + + + + + + + + + + + html + + generate-html + + generate-resources + + ${basedir}/src/main/docbook/xsl/html-multipage.xsl + ${basedir}/target/docbook/html + true + + + + + + + + + + + + + + + + + + + pdf + + generate-pdf + + generate-resources + + ${basedir}/src/main/docbook/xsl/pdf.xsl + ${basedir}/target/docbook/pdf + + + + + + + + + + + + epub + + generate-epub3 + + generate-resources + + ${basedir}/src/main/docbook/xsl/epub.xsl + ${basedir}/target/docbook/epub + + + + + + + + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + ant-contrib + ant-contrib + 1.0b3 + + + ant + ant + + + + + org.apache.ant + ant-nodeps + 1.8.1 + + + org.tigris.antelope + antelopetasks + 3.2.10 + + + + + package-and-attach-docs-zip + package + + run + + + + + + + + + + + setup-maven-properties + validate + + run + + + true + + + + + + + + + + + + + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + + + attach-zip + + attach-artifact + + + + + ${project.build.directory}/${project.artifactId}-${project.version}.zip + zip;zip.type=docs;zip.deployed=false + + + + + + + + + + + diff --git a/spring-cloud-task-docs/src/main/asciidoc/.gitignore b/spring-cloud-task-docs/src/main/asciidoc/.gitignore new file mode 100644 index 00000000..bbc34111 --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/.gitignore @@ -0,0 +1,2 @@ +*.html +*.css diff --git a/spring-cloud-task-docs/src/main/asciidoc/Guardfile b/spring-cloud-task-docs/src/main/asciidoc/Guardfile new file mode 100644 index 00000000..bdd4d729 --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/Guardfile @@ -0,0 +1,20 @@ +require 'asciidoctor' +require 'erb' + +guard 'shell' do + watch(/.*\.adoc$/) {|m| + Asciidoctor.render_file('index.adoc', \ + :in_place => true, \ + :safe => Asciidoctor::SafeMode::UNSAFE, \ + :attributes=> { \ + 'source-highlighter' => 'prettify', \ + 'icons' => 'font', \ + 'linkcss'=> 'true', \ + 'copycss' => 'true', \ + 'doctype' => 'book'}) + } +end + +guard 'livereload' do + watch(%r{^.+\.(css|js|html)$}) +end diff --git a/spring-cloud-task-docs/src/main/asciidoc/appendix-building-the-documentation.adoc b/spring-cloud-task-docs/src/main/asciidoc/appendix-building-the-documentation.adoc new file mode 100644 index 00000000..f7e917e8 --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/appendix-building-the-documentation.adoc @@ -0,0 +1,6 @@ + +[[appendix-building-the-documentation]] +== Building this documentation + +This project uses Maven to generate this documentation. To generate it for yourself, +execute the command: `$ ./mvnw clean package -P full`. diff --git a/spring-cloud-task-docs/src/main/asciidoc/appendix-task-repository-schema.adoc b/spring-cloud-task-docs/src/main/asciidoc/appendix-task-repository-schema.adoc new file mode 100644 index 00000000..550fff10 --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/appendix-task-repository-schema.adoc @@ -0,0 +1,11 @@ + +[[appendix-task-repository-schema]] +== Task repository schema + +[[partintro]] +-- +This appendix provides an ERD for the database schema used in the task repository. +-- + +image::task_schema.png[] + diff --git a/spring-cloud-task-docs/src/main/asciidoc/appendix.adoc b/spring-cloud-task-docs/src/main/asciidoc/appendix.adoc new file mode 100644 index 00000000..34185ba3 --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/appendix.adoc @@ -0,0 +1,6 @@ + +[[appendix]] += Appendices + +include::appendix-task-repository-schema.adoc[] +include::appendix-building-the-documentation.adoc[] diff --git a/spring-cloud-task-docs/src/main/asciidoc/features.adoc b/spring-cloud-task-docs/src/main/asciidoc/features.adoc new file mode 100644 index 00000000..ac77f912 --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/features.adoc @@ -0,0 +1,171 @@ + +[[features]] += Features + +[[partintro]] +-- +This section goes into more detail about Spring Cloud Task. How to use it, how to +configure it, as well as the appropriate extension points are all covered in this section. +-- + +[[features-lifecycle]] +== The lifecycle of a Spring Cloud Task + +In most cases, the modern cloud environment is designed around the execution of processes +that are not expected to end. If they do, they are typically restarted. While most +platforms do have some method to execute a process that isn't restarted when it ends, the + results of that execution are typically not maintained in a consumable way. Spring Cloud + Task brings the ability to execute short lived processes in an environment and record the + results. This allows for a microservices architecture around short lived processes as + well as longer running services. + +While this functionality is useful in a cloud environment, the same issues can arise in a +traditional deployment model as well. When executing Spring Boot applications via a +scheduler like cron, it can be useful to be able to monitor the results of the application +after it's completion. + +A Spring Cloud Task takes the approach that a Spring Boot application can have a start and an +end and still be successful. Batch applications are just one example of where short lived +processes can be helpful. Spring Cloud Task records lifecycle events of a given task. + +The lifecycle consists of a single task execution. This is a physical execution of a +Spring Boot application configured to be a task (annotated with the `@EnableTask` +annotation). + +At the beginning of a task, an entry in the `TaskRepository` is created recording the +start event. This event is triggered via the `ContextRefreshEvent` being triggered by +Spring Framework. + +NOTE: As Spring Cloud Task is expected to consist of a single application context. If +multiple application contexts are used (parent/child relationships for example), the first +`ContextRefreshEvent` that is published by Spring will be recorded as the start of the +task. + +NOTE: The recording of a task will only occur upon the successful bootstrapping of an +`ApplicationContext`. If the context fails to bootstrap at all, the task's execution will +not be recorded. + +Upon completion of all of the `*Runner#run` calls from Spring Boot or the failure of an +`ApplicationContext` (indicated via a `ApplicationFailedEvent`), the task execution is +updated in the repository with the results. + +[[features-task-execution-details]] +=== The TaskExecution + +The information stored in the `TaskRepository` is modeled in the `TaskExecution` class and +consists of the following information: + +|=== +|Field |Description + +|`executionid` +|The unique id for the task's execution. + +|`exitCode` +|The exit code generated from an `ExitCodeExceptionMapper` implementation. If there is no +exit code generated, but an `ApplicationFailedEvent` is thrown, 1 is set. Otherwise, it's +assumed to be 0. + +|`taskName` +|The name for the task as determined by the configured `TaskNameResolver`. + +|`starTime` +|The time the task was started as indicated by the `ContextRefreshEvent`. + +|`endTime` +|The time the task was completed as indicated by the `ContextClosedEvent`. + +|`exitMessage` +|Any information available at the time of exit. If an exception is the cause of the end +of the task (as indicated via an `ApplicationFailedEvent`), the stack trace for that +exception will be stored here. + +|`parameters` +|A `List` of the string parameters as they were passed into the executable boot +application. +|=== + +[[features-lifecycle-exit-codes]] +=== Mapping Exit Codes + +When a task completes, it will want to return an exit code to the OS. If we take a look +at our original example, we can see that we are not controlling that aspect of our +application. So if an exception is thrown, the JVM will return a code that may or may not +be of any use to you in the debugging of that. + +As such, Spring Boot provides an interface, `ExitCodeExceptionMapper` that allows you to +map uncaught exceptions to exit codes. This allows you to be able to indicate at that +level what went wrong. Also, by mapping exit codes in this manor, Spring Cloud Task will +record the exit code returned. + +[[features-configuration]] +== Configuration + +Spring Cloud Task provides an out of the box configuration as defined in the + `DefaultTaskConfigurer` and `SimpleTaskConfiguration`. This section will walk through +the defaults as well as how to customize Spring Cloud Task for your needs + +[[features-data-source]] +=== DataSource + +Spring Cloud Task utilizes a datasource for storing the results of task executions. By +default, we provide an in memory instance of H2 to provide a simple method of +bootstrapping development. However, in a production environment, you'll want to configure +your own `DataSource`. + +If your application utilizes only a single `DataSource` and that will serve as both your +business schema as well as the task repository, all you need to do is provide any +`DataSource` (via Spring Boot's configuration conventions is the easiest way). This will +be automatically used by Spring Cloud Task for the repository. + +If your application utilizes more than one `DataSource`, you'll need to configure the +task repository with the appropriate `DataSource`. This customization can be done via an +implementation of the `TaskConfigurer`. + +[[features-task-configurer]] +=== TaskConfigurer + +The `TaskConfigurer` is a strategy interface allowing for users to customize the way +components of Spring Cloud Task are configured. By default, we provide the +`DefaultTaskConfigurer` that provides logical defaults (`Map` based in memory components +useful for development if no `DataSource` is provided and JDBC based components if there +is a `DataSource` available. + +The `TaskConfigurer` allows the configuration of three main components: + +|=== +|Component |Description |Default (provided by `DefaultTaskConfigurer`) + +|`TaskRepository` +|The implementation of the `TaskRepository` to be used. +|`SimpleTaskRepository` + +|`TaskExplorer` +|The implementation of the `TaskExplorer` (a component for read only access to the task +repository) to be used. +|`SimpleTaskExplorer` + +|`PlatformTransactionManager` +|A transaction manager to be used when executing updates for tasks. +|`DataSourceTransactionManager` if a `DataSource` is used, +`ResourcelessTransactionManager` if it is not. +|=== + +[[features-task-name]] +=== Task Name + +In most cases, the name of the task will be the application name as configured via Spring +Boot. However, there are some cases, where you may want to map the run of a task to a +different name. Spring Data Flow is an example of this (where you want the task to be run +with the name of the task definition). Because of this, we offer the ability to customize +how the task is named via the `TaskNameResolver` interface. + +By default, Spring Cloud Task provides the `SimpleTaskNameResolver` which will use the +following options (in order of precedence): + +. A Spring Boot property (configured any of the ways Spring Boot allows) +`spring.cloud.task.name`. +. The application name as resolved using Spring Boot's rules (obtained via +`ApplicationContext#getId`). + + diff --git a/spring-cloud-task-docs/src/main/asciidoc/getting-started.adoc b/spring-cloud-task-docs/src/main/asciidoc/getting-started.adoc new file mode 100644 index 00000000..3392df6e --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/getting-started.adoc @@ -0,0 +1,276 @@ + +[[getting-started]] += Getting started + +[[partintro]] +-- +If you're just getting started with Spring Cloud Task, this is the section +for you! Here we answer the basic "`what?`", "`how?`" and "`why?`" questions. You'll +find a gentle introduction to Spring Cloud Task. We'll then build our first Spring Cloud +Task application, discussing some core principles as we go. +-- + +[[getting-started-introducing-spring-cloud-task]] +== Introducing Spring Cloud Task + +Spring Cloud Task makes it easy to create short lived microservices. We provide +capabilities that allow short lived JVM processes to be executed on demand in a production +environment. + +[[getting-started-system-requirements]] +== System Requirements + +You need Java installed (Java 7 or better, we recommend Java 8) and to build you need to have Maven installed as well. + +=== Database Requirements + +Spring Cloud Task uses a relational database to store the results of an executed task. +While you can begin developing a task without a database (the status of the task is logged + as part of the task repository's updates), for production environments, you'll want to +utilize a supported database. Below is a list of the ones currently supported: + +- H2 +- HSQLDB +- MySql +- Oracle +- Postgres + +[[getting-started-developing-first-task]] +== Developing your first Spring Cloud Task application + +A good place to start is with a simple "Hello World!" application so we'll create the +Spring Cloud Task equivalent to highlight the features of the framework. We'll use Apache +Maven as a build tool for this project since most IDEs have good support for it. + +NOTE: The spring.io web site contains many “Getting Started” guides that use Spring Boot. +If you’re looking to solve a specific problem; check there first. You can shortcut the +steps below by going to start.spring.io and creating a new project. This will +automatically generate a new project structure so that you can start coding right the way. +Check the documentation for more details. + +Before we begin, open a terminal to check that you have valid versions of Java and Maven +installed. + +[source] +$ java -version +java version "1.8.0_31" +Java(TM) SE Runtime Environment (build 1.8.0_31-b13) +Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode) + +[source] +$ mvn -v +Apache Maven 3.2.3 (33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4; 2014-08-11T15:58:10-05:00) +Maven home: /usr/local/Cellar/maven/3.2.3/libexec +Java version: 1.8.0_31, vendor: Oracle Corporation + +NOTE: This sample needs to be created in its own folder. Subsequent instructions assume +you have created a suitable folder and that it is your "current directory". + +[[getting-started-creating-the-pom]] +=== Creating the POM + +We need to start by creating a Maven `pom.xml` file. The `pom.xml` is the recipe that +will be used to build your project. Open your favorite text editor and add the following: + +[code,xml] +---- + + + + 4.0.0 + + com.example + myproject + jar + 0.0.1-SNAPSHOT + + + org.springframework.boot + spring-boot-starter-parent + 1.3.2.RELEASE + + + + com.example.SampleTask + + + + + org.springframework.boot + spring-boot-starter + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + +---- + +This should give you a working build. You can test it out by running `mvn package` (you +can ignore the "jar will be empty - no content was marked for inclusion!" warning for +now). + +NOTE: At this point you could import the project into an IDE (most modern Java IDE's +include built-in support for Maven). For simplicity we will continue to use a plain text +editor for this example. + +[[getting-started-adding-classpath-dependencies]] +=== Adding classpath dependencies + +A Spring Cloud Task is made up of a Spring Boot application that is expected to end. In +our POM above, we created the shell of a Spring Boot application from a dependency +perspective by setting our parent to use the `spring-boot-starter-parent`. + +Spring Boot provides a number of additional "Starter POMs". Some of which are appropriate +for use within tasks (`spring-boot-starter-batch`, `spring-boot-starter-jdbc`, etc) and +some may not be ('spring-boot-starter-web` is probably not going to be used in a task). +The indicator of if a starter makes sense or not comes down to if the resulting +application will end (batch based applications typically end, the +`spring-boot-starter-web` dependency bootstraps a servlet container which probably wont'). + +For this example, we'll only need to add a single additional dependency, the one for +Spring Cloud Task itself: + +[source,xml] + + org.springframework.cloud + spring-cloud-task-core + 1.0.0.BUILD-SNAPSHOT + + +[[getting-started-writing-the-code]] +=== Writing the code + +To finish our application, we need to create a single Java file. Maven will compile the +sources from `src/main/java` by default so you need to create that folder structure. Then +add a file named `src/main/java/com/example/SampleTask.java`: + +[source,java] +---- +package com.example; + +import org.springframework.boot.*; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.task.configuration.EnableTask; +import org.springframework.context.annotation.Bean; + +@SpringBootApplication +@EnableTask +public class SampleTask { + + @Bean + public CommandLineRunner commandLineRunner() { + return new HelloWorldCommandLineRunner(); + } + + public static void main(String[] args) { + SpringApplication.run(SampleTask.class, args); + } + + public static class HelloWorldCommandLineRunner implements CommandLineRunner { + + @Override + public void run(String... strings) throws Exception { + System.out.println("Hello World!"); + } + } +} +---- + +While it may not look like much, quite a bit is going on. To read more about the Spring +Boot specifics, take a look at their reference documentation here: +http://docs.spring.io/spring-boot/docs/current/reference/html/[http://docs.spring.io/spring-boot/docs/current/reference/html/] + +[[getting-started-at-task]] +==== The @EnableTask annotation + +The first non boot annotation in our example is the `@EnableTask` annotation. This class +level annotation tells Spring Cloud Task to bootstrap it's functionality. This occurs by +importing an additional configuration class, `SimpleTaskConfiguration` by default. This +additional configuration registers the `TaskRepository` and the infrastructure for its +use. + +Out of the box, the `TaskRepository` will use an in memory `Map` to record the results +of a task. Obviously this isn't a practical solution for a production environment since +the `Map` goes away once the task ends. However, for a quick getting started +experience we use this as a default as well as echoing to the logs what is being updated +in that repository. Later in this documentation we'll cover how to customize the +configuration of the pieces provided by Spring Cloud Task. + +When our sample application is run, Spring Boot will launch our +`HelloWorldCommandLineRunner` outputting our "Hello World!" message to standard out. The +`TaskLifecyceListener` will record the start of the task and the end of the task in the +repository. + +[[getting-started-main-method]] +==== The main method + +The main method serves as the entry point to any java application. Our main method +delegates to Spring Boot's `SpringApplication` class. You can read more about it in the +Spring Boot documentation. + +[[getting-started-clr]] +==== The CommandLineRunner + +In Spring, there are many ways to bootstrap an application's logic. Spring Boot provides +a convenient method of doing so in an organized manor via their `*Runner` interfaces +(`CommandLineRunner` or `ApplicationRunner`). A well behaved task will bootstrap any +logic via one of these two runners. + +The lifecycle of a task is considered from before the `*Runner#run` methods are executed +to once they are all complete. Spring Boot allows an application to use multiple +`*Runner` implementation and Spring Cloud Task doesn't attempt to impede on this convention. + +NOTE: Any processing bootstrapped from mechanisms other than a `CommandLineRunner` or +`ApplicationRunner` (using `InitializingBean#afterPropertiesSet` for example) will not be + recorded by Spring Cloud Task. + +[[getting-started-running-the-example]] +=== Running the example + +At this point, your application should work. Since this application is Spring Boot based, + we can run it from the command line via the command `$ mvn spring-boot:run` from the root + of our applicaiton: + +[source] +---- +$ mvn clean spring-boot:run +....... . . . +....... . . . (Maven log output here) +....... . . . + + + . ____ _ __ _ _ + /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ +( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ + \\/ ___)| |_)| | | | | || (_| | ) ) ) ) + ' |____| .__|_| |_|_| |_\__, | / / / / + =========|_|==============|___/=/_/_/_/ + :: Spring Boot :: (v1.3.2.RELEASE) + +2016-01-25 11:08:10.183 INFO 12943 --- [ main] com.example.SampleTask : Starting SampleTask on Michaels-MacBook-Pro-2.local with PID 12943 (/Users/mminella/Documents/IntelliJWorkspace/spring-cloud-task-example/target/classes started by mminella in /Users/mminella/Documents/IntelliJWorkspace/spring-cloud-task-example) +2016-01-25 11:08:10.185 INFO 12943 --- [ main] com.example.SampleTask : No active profile set, falling back to default profiles: default +2016-01-25 11:08:10.226 INFO 12943 --- [ main] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@2a2c3676: startup date [Mon Jan 25 11:08:10 CST 2016]; root of context hierarchy +2016-01-25 11:08:11.051 INFO 12943 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup +2016-01-25 11:08:11.065 INFO 12943 --- [ main] o.s.c.t.r.support.SimpleTaskRepository : Creating: TaskExecution{executionId=0, externalExecutionID='null', exitCode=0, taskName='application', startTime=Mon Jan 25 11:08:11 CST 2016, endTime=null, statusCode='null', exitMessage='null', parameters=[]} +Hello World! +2016-01-25 11:08:11.071 INFO 12943 --- [ main] com.example.SampleTask : Started SampleTask in 1.095 seconds (JVM running for 3.826) +2016-01-25 11:08:11.220 INFO 12943 --- [ Thread-1] s.c.a.AnnotationConfigApplicationContext : Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@2a2c3676: startup date [Mon Jan 25 11:08:10 CST 2016]; root of context hierarchy +2016-01-25 11:08:11.222 INFO 12943 --- [ Thread-1] o.s.c.t.r.support.SimpleTaskRepository : Updating: TaskExecution{executionId=0, externalExecutionID='null', exitCode=0, taskName='application', startTime=Mon Jan 25 11:08:11 CST 2016, endTime=Mon Jan 25 11:08:11 CST 2016, statusCode='null', exitMessage='null', parameters=[]} +2016-01-25 11:08:11.222 INFO 12943 --- [ Thread-1] o.s.j.e.a.AnnotationMBeanExporter : Unregistering JMX-exposed beans on shutdown +---- + +If you notice, there are three lines of interest in the above output: + +* `SimpleTaskRepository` logged out the creation of the entry in the `TaskRepository`. +* The execution of our `CommandLineRunner`, demonstrated by the "Helo World!" output. +* `SimpleTaskREpository` logging the completion of the task in the `TaskRepository`. + diff --git a/spring-cloud-task-docs/src/main/asciidoc/index-docinfo.xml b/spring-cloud-task-docs/src/main/asciidoc/index-docinfo.xml new file mode 100644 index 00000000..8188ce41 --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/index-docinfo.xml @@ -0,0 +1,14 @@ +Spring Cloud Task +{spring-boot-version} + + 2015-2016 + Pivotal Software, Inc. + + + + Copies of this document may be made for your own use and for distribution to + others, provided that you do not charge any fee for such copies and further + provided that each copy contains this Copyright Notice, whether distributed in + print or electronically. + + diff --git a/spring-cloud-task-docs/src/main/asciidoc/index.adoc b/spring-cloud-task-docs/src/main/asciidoc/index.adoc new file mode 100644 index 00000000..4bad9751 --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/index.adoc @@ -0,0 +1,47 @@ += Spring Cloud Task Reference Guide +Michael Minella, Glenn Renfro +:doctype: book +:toc: +:toclevels: 4 +:source-highlighter: prettify +:numbered: +:icons: font +:hide-uri-scheme: +:spring-cloud-task-repo: snapshot +:github-tag: master +:spring-cloud-task-docs-version: current +:spring-cloud-task-docs: http://docs.spring.io/spring-cloud-task/docs/{version}/reference +:spring-cloud-task-docs-current: http://docs.spring.io/spring-cloud-task/docs/current-SNAPSHOT/reference/html/ +:github-repo: spring-cloud/spring-cloud-task +:github-raw: http://raw.github.com/{github-repo}/{github-tag} +:github-code: http://github.com/{github-repo}/tree/{github-tag} +:github-wiki: http://github.com/{github-repo}/wiki +:github-master-code: http://github.com/{github-repo}/tree/master +:sc-ext: java +:sc-spring-boot: {github-code}/spring-boot/src/main/java/org/springframework/boot +:dc-ext: html +:dc-root: http://docs.spring.io/spring-cloud-task/docs/{spring-cloud-dataflow-docs-version}/api +:dc-spring-boot: {dc-root}/org/springframework/boot +:dependency-management-plugin: https://github.com/spring-gradle-plugins/dependency-management-plugin +:dependency-management-plugin-documentation: {dependency-management-plugin}/blob/master/README.md +:spring-boot-maven-plugin-site: http://docs.spring.io/spring-boot/docs/{spring-boot-docs-version}/maven-plugin +:spring-reference: http://docs.spring.io/spring/docs/{spring-docs-version}/spring-framework-reference/htmlsingle +:spring-security-reference: http://docs.spring.io/spring-security/site/docs/{spring-security-docs-version}/reference/htmlsingle +:spring-javadoc: http://docs.spring.io/spring/docs/{spring-docs-version}/javadoc-api/org/springframework +:spring-amqp-javadoc: http://docs.spring.io/spring-amqp/docs/current/api/org/springframework/amqp +:spring-data-javadoc: http://docs.spring.io/spring-data/jpa/docs/current/api/org/springframework/data/jpa +:spring-data-commons-javadoc: http://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data +:spring-data-mongo-javadoc: http://docs.spring.io/spring-data/mongodb/docs/current/api/org/springframework/data/mongodb +:spring-data-rest-javadoc: http://docs.spring.io/spring-data/rest/docs/current/api/org/springframework/data/rest +:gradle-userguide: http://www.gradle.org/docs/current/userguide +:propdeps-plugin: https://github.com/spring-projects/gradle-plugins/tree/master/propdeps-plugin +:ant-manual: http://ant.apache.org/manual +:attributes: allow-uri-read +// ====================================================================================== + +include::preface.adoc[] +include::getting-started.adoc[] +include::features.adoc[] +include::appendix.adoc[] + +// ====================================================================================== diff --git a/spring-cloud-task-docs/src/main/asciidoc/preface.adoc b/spring-cloud-task-docs/src/main/asciidoc/preface.adoc new file mode 100644 index 00000000..7121f20b --- /dev/null +++ b/spring-cloud-task-docs/src/main/asciidoc/preface.adoc @@ -0,0 +1,44 @@ +[[preface]] += Preface + +[[task-documentation-about]] + +This section provides a brief overview of the Spring Cloud Task reference documentation. +Think of it as a map for the rest of the document. You can read this reference guide in a +linear fashion, or you can skip sections if something doesn't interest you. + +== About the documentation +The Spring Cloud Task reference guide is available as {spring-cloud-task-docs}/html[html], +{spring-cloud-task-docs}/pdf/spring-cloud-task-reference.pdf[pdf] +and {spring-cloud-task-docs}/epub/spring-cloud-task-reference.epub[epub] documents. The latest copy +is available at {spring-cloud-task-docs-current}. + +Copies of this document may be made for your own use and for +distribution to others, provided that you do not charge any fee for such copies and +further provided that each copy contains this Copyright Notice, whether distributed in +print or electronically. + +[[task-documentation-getting-help]] +== Getting help +Having trouble with Spring Cloud Task, We'd like to help! + +* Ask a question - we monitor http://stackoverflow.com[stackoverflow.com] for questions + tagged with http://stackoverflow.com/tags/spring-cloud[`spring-cloud`]. +* Report bugs with Spring Cloud Task at https://github.com/spring-cloud/spring-cloud-task/issues. + +NOTE: All of Spring Cloud Task is open source, including the documentation! If you find problems +with the docs; or if you just want to improve them, please {github-code}[get involved]. + +[[task-documentation-first-steps]] +== First Steps +If you're just getting started with Spring Cloud Task, or 'Spring' in general, +<> + +* *From scratch:* + <> | + <> +* *Tutorial:* + <> +* *Running your example:* + <> + diff --git a/spring-cloud-task-docs/src/main/docbook/css/highlight.css b/spring-cloud-task-docs/src/main/docbook/css/highlight.css new file mode 100644 index 00000000..ffefef72 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/css/highlight.css @@ -0,0 +1,35 @@ +/* + code highlight CSS resemblign the Eclipse IDE default color schema + @author Costin Leau +*/ + +.hl-keyword { + color: #7F0055; + font-weight: bold; +} + +.hl-comment { + color: #3F5F5F; + font-style: italic; +} + +.hl-multiline-comment { + color: #3F5FBF; + font-style: italic; +} + +.hl-tag { + color: #3F7F7F; +} + +.hl-attribute { + color: #7F007F; +} + +.hl-value { + color: #2A00FF; +} + +.hl-string { + color: #2A00FF; +} \ No newline at end of file diff --git a/spring-cloud-task-docs/src/main/docbook/css/manual-multipage.css b/spring-cloud-task-docs/src/main/docbook/css/manual-multipage.css new file mode 100644 index 00000000..0c484531 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/css/manual-multipage.css @@ -0,0 +1,9 @@ +@IMPORT url("manual.css"); + +body.firstpage { + background: url("../images/background.png") no-repeat center top; +} + +div.part h1 { + border-top: none; +} diff --git a/spring-cloud-task-docs/src/main/docbook/css/manual-singlepage.css b/spring-cloud-task-docs/src/main/docbook/css/manual-singlepage.css new file mode 100644 index 00000000..4a7fd140 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/css/manual-singlepage.css @@ -0,0 +1,6 @@ +@IMPORT url("manual.css"); + +body { + background: url("../images/background.png") no-repeat center top; +} + diff --git a/spring-cloud-task-docs/src/main/docbook/css/manual.css b/spring-cloud-task-docs/src/main/docbook/css/manual.css new file mode 100644 index 00000000..0ecbe2e8 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/css/manual.css @@ -0,0 +1,344 @@ +@IMPORT url("highlight.css"); + +html { + padding: 0pt; + margin: 0pt; +} + +body { + color: #333333; + margin: 15px 30px; + font-family: Helvetica, Arial, Freesans, Clean, Sans-serif; + line-height: 1.6; + -webkit-font-smoothing: antialiased; +} + +code { + font-size: 16px; + font-family: Consolas, "Liberation Mono", Courier, monospace; +} + +:not(a)>code { + color: #6D180B; +} + +:not(pre)>code { + background-color: #F2F2F2; + border: 1px solid #CCCCCC; + border-radius: 4px; + padding: 1px 3px 0; + text-shadow: none; + white-space: nowrap; +} + +body>*:first-child { + margin-top: 0 !important; +} + +div { + margin: 0pt; +} + +hr { + border: 1px solid #CCCCCC; + background: #CCCCCC; +} + +h1,h2,h3,h4,h5,h6 { + color: #000000; + cursor: text; + font-weight: bold; + margin: 30px 0 10px; + padding: 0; +} + +h1,h2,h3 { + margin: 40px 0 10px; +} + +h1 { + margin: 70px 0 30px; + padding-top: 20px; +} + +div.part h1 { + border-top: 1px dotted #CCCCCC; +} + +h1,h1 code { + font-size: 32px; +} + +h2,h2 code { + font-size: 24px; +} + +h3,h3 code { + font-size: 20px; +} + +h4,h1 code,h5,h5 code,h6,h6 code { + font-size: 18px; +} + +div.book,div.chapter,div.appendix,div.part,div.preface { + min-width: 300px; + max-width: 1200px; + margin: 0 auto; +} + +p.releaseinfo { + font-weight: bold; + margin-bottom: 40px; + margin-top: 40px; +} + +div.authorgroup { + line-height: 1; +} + +p.copyright { + line-height: 1; + margin-bottom: -5px; +} + +.legalnotice p { + font-style: italic; + font-size: 14px; + line-height: 1; +} + +div.titlepage+p,div.titlepage+p { + margin-top: 0; +} + +pre { + line-height: 1.0; + color: black; +} + +a { + color: #4183C4; + text-decoration: none; +} + +p { + margin: 15px 0; + text-align: left; +} + +ul,ol { + padding-left: 30px; +} + +li p { + margin: 0; +} + +div.table { + margin: 1em; + padding: 0.5em; + text-align: center; +} + +div.table table,div.informaltable table { + display: table; + width: 100%; +} + +div.table td { + padding-left: 7px; + padding-right: 7px; +} + +.sidebar { + line-height: 1.4; + padding: 0 20px; + background-color: #F8F8F8; + border: 1px solid #CCCCCC; + border-radius: 3px 3px 3px 3px; +} + +.sidebar p.title { + color: #6D180B; +} + +pre.programlisting,pre.screen { + font-size: 15px; + padding: 6px 10px; + background-color: #F8F8F8; + border: 1px solid #CCCCCC; + border-radius: 3px 3px 3px 3px; + clear: both; + overflow: auto; + line-height: 1.4; + font-family: Consolas, "Liberation Mono", Courier, monospace; +} + +table { + border-collapse: collapse; + border-spacing: 0; + border: 1px solid #DDDDDD !important; + border-radius: 4px !important; + border-collapse: separate !important; + line-height: 1.6; +} + +table thead { + background: #F5F5F5; +} + +table tr { + border: none; + border-bottom: none; +} + +table th { + font-weight: bold; +} + +table th,table td { + border: none !important; + padding: 6px 13px; +} + +table tr:nth-child(2n) { + background-color: #F8F8F8; +} + +td p { + margin: 0 0 15px 0; +} + +div.table-contents td p { + margin: 0; +} + +div.important *,div.note *,div.tip *,div.warning *,div.navheader *,div.navfooter *,div.calloutlist * + { + border: none !important; + background: none !important; + margin: 0; +} + +div.important p,div.note p,div.tip p,div.warning p { + color: #6F6F6F; + line-height: 1.6; +} + +div.important code,div.note code,div.tip code,div.warning code { + background-color: #F2F2F2 !important; + border: 1px solid #CCCCCC !important; + border-radius: 4px !important; + padding: 1px 3px 0 !important; + text-shadow: none !important; + white-space: nowrap !important; +} + +.note th,.tip th,.warning th { + display: none; +} + +.note tr:first-child td,.tip tr:first-child td,.warning tr:first-child td + { + border-right: 1px solid #CCCCCC !important; + padding-top: 10px; +} + +div.calloutlist p,div.calloutlist td { + padding: 0; + margin: 0; +} + +div.calloutlist>table>tbody>tr>td:first-child { + padding-left: 10px; + width: 30px !important; +} + +div.important,div.note,div.tip,div.warning { + margin-left: 0px !important; + margin-right: 20px !important; + margin-top: 20px; + margin-bottom: 20px; + padding-top: 10px; + padding-bottom: 10px; +} + +div.toc { + line-height: 1.2; +} + +dl,dt { + margin-top: 1px; + margin-bottom: 0; +} + +div.toc>dl>dt { + font-size: 32px; + font-weight: bold; + margin: 30px 0 10px 0; + display: block; +} + +div.toc>dl>dd>dl>dt { + font-size: 24px; + font-weight: bold; + margin: 20px 0 10px 0; + display: block; +} + +div.toc>dl>dd>dl>dd>dl>dt { + font-weight: bold; + font-size: 20px; + margin: 10px 0 0 0; +} + +tbody.footnotes * { + border: none !important; +} + +div.footnote p { + margin: 0; + line-height: 1; +} + +div.footnote p sup { + margin-right: 6px; + vertical-align: middle; +} + +div.navheader { + border-bottom: 1px solid #CCCCCC; +} + +div.navfooter { + border-top: 1px solid #CCCCCC; +} + +.title { + margin-left: -1em; + padding-left: 1em; +} + +.title>a { + position: absolute; + visibility: hidden; + display: block; + font-size: 0.85em; + margin-top: 0.05em; + margin-left: -1em; + vertical-align: text-top; + color: black; +} + +.title>a:before { + content: "\00A7"; +} + +.title:hover>a,.title>a:hover,.title:hover>a:hover { + visibility: visible; +} + +.title:focus>a,.title>a:focus,.title:focus>a:focus { + outline: 0; +} diff --git a/spring-cloud-task-docs/src/main/docbook/images/background.png b/spring-cloud-task-docs/src/main/docbook/images/background.png new file mode 100644 index 00000000..d4195e5b Binary files /dev/null and b/spring-cloud-task-docs/src/main/docbook/images/background.png differ diff --git a/spring-cloud-task-docs/src/main/docbook/images/caution.png b/spring-cloud-task-docs/src/main/docbook/images/caution.png new file mode 100644 index 00000000..8a5e4fca Binary files /dev/null and b/spring-cloud-task-docs/src/main/docbook/images/caution.png differ diff --git a/spring-cloud-task-docs/src/main/docbook/images/important.png b/spring-cloud-task-docs/src/main/docbook/images/important.png new file mode 100644 index 00000000..ec54df65 Binary files /dev/null and b/spring-cloud-task-docs/src/main/docbook/images/important.png differ diff --git a/spring-cloud-task-docs/src/main/docbook/images/logo.png b/spring-cloud-task-docs/src/main/docbook/images/logo.png new file mode 100644 index 00000000..45f1978f Binary files /dev/null and b/spring-cloud-task-docs/src/main/docbook/images/logo.png differ diff --git a/spring-cloud-task-docs/src/main/docbook/images/note.png b/spring-cloud-task-docs/src/main/docbook/images/note.png new file mode 100644 index 00000000..88d997b1 Binary files /dev/null and b/spring-cloud-task-docs/src/main/docbook/images/note.png differ diff --git a/spring-cloud-task-docs/src/main/docbook/images/task_schema.png b/spring-cloud-task-docs/src/main/docbook/images/task_schema.png new file mode 100644 index 00000000..11f14fba Binary files /dev/null and b/spring-cloud-task-docs/src/main/docbook/images/task_schema.png differ diff --git a/spring-cloud-task-docs/src/main/docbook/images/tip.png b/spring-cloud-task-docs/src/main/docbook/images/tip.png new file mode 100644 index 00000000..6530abb4 Binary files /dev/null and b/spring-cloud-task-docs/src/main/docbook/images/tip.png differ diff --git a/spring-cloud-task-docs/src/main/docbook/images/warning.png b/spring-cloud-task-docs/src/main/docbook/images/warning.png new file mode 100644 index 00000000..0d5b5244 Binary files /dev/null and b/spring-cloud-task-docs/src/main/docbook/images/warning.png differ diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/common.xsl b/spring-cloud-task-docs/src/main/docbook/xsl/common.xsl new file mode 100644 index 00000000..157bf9d8 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/common.xsl @@ -0,0 +1,45 @@ + + + + + + + + 1 + 0 + 1 + + + + images/ + .png + + + book toc,title + 3 + + + + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/epub.xsl b/spring-cloud-task-docs/src/main/docbook/xsl/epub.xsl new file mode 100644 index 00000000..031406ca --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/epub.xsl @@ -0,0 +1,31 @@ + + + + + + + + + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/html-multipage.xsl b/spring-cloud-task-docs/src/main/docbook/xsl/html-multipage.xsl new file mode 100644 index 00000000..be9cc52d --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/html-multipage.xsl @@ -0,0 +1,73 @@ + + + + + + + + + + css/manual-multipage.css + + '5' + '1' + + + + + + + + + + + + + + + + + + + + firstpage + + + + + + + + + + + + + + + + + + + + + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/html-singlepage.xsl b/spring-cloud-task-docs/src/main/docbook/xsl/html-singlepage.xsl new file mode 100644 index 00000000..6bd4ac81 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/html-singlepage.xsl @@ -0,0 +1,30 @@ + + + + + + + + + + css/manual-singlepage.css + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/html.xsl b/spring-cloud-task-docs/src/main/docbook/xsl/html.xsl new file mode 100644 index 00000000..fd96f9a7 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/html.xsl @@ -0,0 +1,141 @@ + + + + + + + + + + + 1 + + + 1 + + + + 120 + images/callouts/ + .png + + + text/css + + text-align: left + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + , + + + + + + + +
+

Authors

+ +
+
+ + + + + + + + + + + + + + + + + # + + + + + + +
diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/pdf.xsl b/spring-cloud-task-docs/src/main/docbook/xsl/pdf.xsl new file mode 100644 index 00000000..77360a7b --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/pdf.xsl @@ -0,0 +1,582 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + auto + + + + + underline + #204060 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + , + + + + + + + + + + + Copyright © + + + + + + + + + + + + + + + + + + + + + + + + + + + + -5em + -5em + 8pt + + + + + + + + + + + + + + + please define title in your docbook file! + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 8pt + + + + + + + + + + + + + + + + + + + + + + + + + please define title in your docbook file! + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 0 + + + + false + + + Helvetica + 10 + 8 + Helvetica + + + 1.4 + + + + left + bold + + + pt + + + + + + + + + + + + + + + 0.6em + 0.6em + 0.6em + + + pt + + 0.1em + 0.1em + 0.1em + + + + 0.4em + 0.4em + 0.4em + + + pt + + 0.1em + 0.1em + 0.1em + + + + 0.4em + 0.4em + 0.4em + + + pt + + 0.1em + 0.1em + 0.1em + + + + 0.3em + 0.3em + 0.3em + + + pt + + 0.1em + 0.1em + 0.1em + + + + + + + + 4pt + 4pt + 4pt + 4pt + + + + 0.1pt + 0.1pt + + + + + + + + + + + + + + + + 7pt + wrap + 1 + + + + 1em + 1em + 1em + 0.1em + 0.1em + 0.1em + + #444444 + solid + 0.1pt + 0.5em + 0.5em + 0.5em + 0.5em + 0.5em + 0.5em + + + + 1 + + #F0F0F0 + + + + 0.1em + 0.1em + 0.1em + 0.1em + 0.1em + 0.1em + + + + 0.5em + 0.5em + 0.5em + 0.1em + 0.1em + 0.1em + + + + #444444 + solid + 0.1pt + #F0F0F0 + + + + + + + normal + italic + + + pt + + false + 0.1em + 0.1em + 0.1em + + + + + + 0 + 1 + + + 90 + + + + + + figure after + example after + equation before + table before + procedure before + + + + 1 + 0pt + + + + + + + + + + + + + + + + + + + + 0.1em + 2em + .75pt + solid + #5c5c4f + 0.5em + 1.5em + 1.5em + 1.5em + 1.5em + 1.5em + 1.5em + + + + 10pt + bold + false + always + 0 + + + + 0em + 0em + 0em + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl-config.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl-config.xml new file mode 100644 index 00000000..e4d677fc --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl-config.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/asciidoc-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/asciidoc-hl.xml new file mode 100644 index 00000000..5478b1d6 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/asciidoc-hl.xml @@ -0,0 +1,41 @@ + + + + + //// + //// + + + // + + + + ^(={1,6} .+)$ + + MULTILINE + + + ^(\.[^\.\s].+)$ + + MULTILINE + + + ^(:!?\w.*?:) + + MULTILINE + + + ^(-|\*{1,5}|\d*\.{1,5})(?= .+$) + + MULTILINE + + + ^(\[.+\])$ + + MULTILINE + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/bourne-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/bourne-hl.xml new file mode 100644 index 00000000..e2cd98d8 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/bourne-hl.xml @@ -0,0 +1,95 @@ + + + + # + + << + ' + " + - + + + + + " + \ + + + ' + \ + + + + 0x + + + + . + + + + + + if + then + else + elif + fi + case + esac + for + while + until + do + done + + exec + shift + exit + times + break + export + trap + continue + readonly + wait + eval + return + + cd + echo + hash + pwd + read + set + test + type + ulimit + umask + unset + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/c-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/c-hl.xml new file mode 100644 index 00000000..176cc379 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/c-hl.xml @@ -0,0 +1,117 @@ + + + + + /** + */ + + + + + + + + /* + */ + + // + + + # + \ + + + + + " + \ + + + ' + \ + + + 0x + ul + lu + u + l + + + + . + + e + ul + lu + u + f + l + + + + auto + _Bool + break + case + char + _Complex + const + continue + default + do + double + else + enum + extern + float + for + goto + if + _Imaginary + inline + int + long + register + restrict + return + short + signed + sizeof + static + struct + switch + typedef + union + unsigned + void + volatile + while + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/cpp-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/cpp-hl.xml new file mode 100644 index 00000000..ef83c4f5 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/cpp-hl.xml @@ -0,0 +1,151 @@ + + + + + /** + */ + + + + + + + + /* + */ + + // + + + # + \ + + + + + " + \ + + + ' + \ + + + 0x + ul + lu + u + l + + + + . + + e + ul + lu + u + f + l + + + + + auto + _Bool + break + case + char + _Complex + const + continue + default + do + double + else + enum + extern + float + for + goto + if + _Imaginary + inline + int + long + register + restrict + return + short + signed + sizeof + static + struct + switch + typedef + union + unsigned + void + volatile + while + + asm + dynamic_cast + namespace + reinterpret_cast + try + bool + explicit + new + static_cast + typeid + catch + false + operator + template + typename + class + friend + private + this + using + const_cast + inline + public + throw + virtual + delete + mutable + protected + true + wchar_t + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/csharp-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/csharp-hl.xml new file mode 100644 index 00000000..d57e6310 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/csharp-hl.xml @@ -0,0 +1,194 @@ + + + + + /** + */ + + + + /// + + + + /* + */ + + // + + + [ + ] + ( + ) + + + + # + \ + + + + + + @" + " + \ + + + + " + \ + + + ' + \ + + + 0x + ul + lu + u + l + + + + . + + e + ul + lu + u + f + d + m + l + + + + abstract + as + base + bool + break + byte + case + catch + char + checked + class + const + continue + decimal + default + delegate + do + double + else + enum + event + explicit + extern + false + finally + fixed + float + for + foreach + goto + if + implicit + in + int + interface + internal + is + lock + long + namespace + new + null + object + operator + out + override + params + private + protected + public + readonly + ref + return + sbyte + sealed + short + sizeof + stackalloc + static + string + struct + switch + this + throw + true + try + typeof + uint + ulong + unchecked + unsafe + ushort + using + virtual + void + volatile + while + + + + add + alias + from + get + global + group + into + join + orderby + partial + remove + select + set + value + where + yield + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/css-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/css-hl.xml new file mode 100644 index 00000000..164c48c3 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/css-hl.xml @@ -0,0 +1,176 @@ + + + + + /* + */ + + + " + \ + + + + ' + \ + + + + . + + + + @charset + @import + @media + @page + + + + - + azimuth + background-attachment + background-color + background-image + background-position + background-repeat + background + border-collapse + border-color + border-spacing + border-style + border-top + border-right + border-bottom + border-left + border-top-color + border-right-color + border-bottom-color + border-left-color + border-top-style + border-right-style + border-bottom-style + border-left-style + border-top-width + border-right-width + border-bottom-width + border-left-width + border-width + border + bottom + caption-side + clear + clip + color + content + counter-increment + counter-reset + cue-after + cue-before + cue + cursor + direction + display + elevation + empty-cells + float + font-family + font-size + font-style + font-variant + font-weight + font + height + left + letter-spacing + line-height + list-style-image + list-style-position + list-style-type + list-style + margin-right + margin-left + margin-top + margin-bottom + margin + max-height + max-width + min-height + min-width + orphans + outline-color + outline-style + outline-width + outline + overflow + padding-top + padding-right + padding-bottom + padding-left + padding + page-break-after + page-break-before + page-break-inside + pause-after + pause-before + pause + pitch-range + pitch + play-during + position + quotes + richness + right + speak-header + speak-numeral + speak-punctuation + speak + speech-rate + stress + table-layout + text-align + text-decoration + text-indent + text-transform + top + unicode-bidi + vertical-align + visibility + voice-family + volume + white-space + widows + width + word-spacing + z-index + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/html-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/html-hl.xml new file mode 100644 index 00000000..5b6761ba --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/html-hl.xml @@ -0,0 +1,122 @@ + + + + + + + a + abbr + address + area + article + aside + audio + b + base + bdi + blockquote + body + br + button + caption + canvas + cite + code + command + col + colgroup + dd + del + dialog + div + dl + dt + em + embed + fieldset + figcaption + figure + font + form + footer + h1 + h2 + h3 + h4 + h5 + h6 + head + header + hr + html + i + iframe + img + input + ins + kbd + label + legend + li + link + map + mark + menu + menu + meta + nav + noscript + object + ol + optgroup + option + p + param + pre + q + samp + script + section + select + small + source + span + strong + style + sub + summary + sup + table + tbody + td + textarea + tfoot + th + thead + time + title + tr + track + u + ul + var + video + wbr + xmp + + + + + xsl: + + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/ini-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/ini-hl.xml new file mode 100644 index 00000000..34c10363 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/ini-hl.xml @@ -0,0 +1,45 @@ + + + + ; + + + ^(\[.+\]\s*)$ + + MULTILINE + + + + ^(.+)(?==) + + MULTILINE + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/java-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/java-hl.xml new file mode 100644 index 00000000..f7bb1641 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/java-hl.xml @@ -0,0 +1,117 @@ + + + + + /** + */ + + + + /* + */ + + // + + " + \ + + + ' + \ + + + @ + ( + ) + + + 0x + + + + . + e + f + d + l + + + + abstract + boolean + break + byte + case + catch + char + class + const + continue + default + do + double + else + extends + final + finally + float + for + goto + if + implements + import + instanceof + int + interface + long + native + new + package + private + protected + public + return + short + static + strictfp + super + switch + synchronized + this + throw + throws + transient + try + void + volatile + while + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/javascript-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/javascript-hl.xml new file mode 100644 index 00000000..99b8a71e --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/javascript-hl.xml @@ -0,0 +1,147 @@ + + + + + /* + */ + + // + + " + \ + + + ' + \ + + + 0x + + + + . + e + + + + break + case + catch + continue + default + delete + do + else + finally + for + function + if + in + instanceof + new + return + switch + this + throw + try + typeof + var + void + while + with + + abstract + boolean + byte + char + class + const + debugger + double + enum + export + extends + final + float + goto + implements + import + int + interface + long + native + package + private + protected + public + short + static + super + synchronized + throws + transient + volatile + + + prototype + + Array + Boolean + Date + Error + EvalError + Function + Math + Number + Object + RangeError + ReferenceError + RegExp + String + SyntaxError + TypeError + URIError + + decodeURI + decodeURIComponent + encodeURI + encodeURIComponent + eval + isFinite + isNaN + parseFloat + parseInt + + Infinity + NaN + undefined + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/json-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/json-hl.xml new file mode 100644 index 00000000..59b9c481 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/json-hl.xml @@ -0,0 +1,37 @@ + + + # + + " + \ + + + ' + \ + + + @ + ( + ) + + + . + e + f + d + l + + + + true + false + + + { + } + , + [ + ] + + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/perl-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/perl-hl.xml new file mode 100644 index 00000000..73d71cc0 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/perl-hl.xml @@ -0,0 +1,120 @@ + + + + # + + << + ' + " + + + + " + \ + + + ' + \ + + + + 0x + + + + . + + + + + if + unless + while + until + foreach + else + elsif + for + when + default + given + + caller + continue + die + do + dump + eval + exit + goto + last + next + redo + return + sub + wantarray + + caller + import + local + my + package + use + + do + import + no + package + require + use + + bless + dbmclose + dbmopen + package + ref + tie + tied + untie + use + + and + or + not + eq + ne + lt + gt + le + ge + cmp + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/php-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/php-hl.xml new file mode 100644 index 00000000..1da25b8c --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/php-hl.xml @@ -0,0 +1,154 @@ + + + + + /** + */ + + + + + + + + /* + */ + + // + # + + " + \ + + + + ' + \ + + + + <<< + + + 0x + + + + . + e + + + + and + or + xor + __FILE__ + exception + __LINE__ + array + as + break + case + class + const + continue + declare + default + die + do + echo + else + elseif + empty + enddeclare + endfor + endforeach + endif + endswitch + endwhile + eval + exit + extends + for + foreach + function + global + if + include + include_once + isset + list + new + print + require + require_once + return + static + switch + unset + use + var + while + __FUNCTION__ + __CLASS__ + __METHOD__ + final + php_user_filter + interface + implements + extends + public + private + protected + abstract + clone + try + catch + throw + cfunction + old_function + true + false + + namespace + __NAMESPACE__ + goto + __DIR__ + + + + + ?> + <?php + <?= + + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/properties-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/properties-hl.xml new file mode 100644 index 00000000..775f2f13 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/properties-hl.xml @@ -0,0 +1,38 @@ + + + + # + + ^(.+?)(?==|:) + + MULTILINE + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/python-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/python-hl.xml new file mode 100644 index 00000000..a4674432 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/python-hl.xml @@ -0,0 +1,100 @@ + + + + + + @ + ( + ) + + # + + """ + + + + ''' + + + + " + \ + + + ' + \ + + + 0x + l + + + + . + + e + l + + + + and + del + from + not + while + as + elif + global + or + with + assert + else + if + pass + yield + break + except + import + print + class + exec + in + raise + continue + finally + is + return + def + for + lambda + try + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/ruby-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/ruby-hl.xml new file mode 100644 index 00000000..d105640e --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/ruby-hl.xml @@ -0,0 +1,109 @@ + + + + # + + << + + + + " + \ + + + %Q{ + } + \ + + + %/ + / + \ + + + ' + \ + + + %q{ + } + \ + + + 0x + + + + . + e + + + + alias + and + BEGIN + begin + break + case + class + def + defined + do + else + elsif + END + end + ensure + false + for + if + in + module + next + nil + not + or + redo + rescue + retry + return + self + super + then + true + undef + unless + until + when + while + yield + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/sql2003-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/sql2003-hl.xml new file mode 100644 index 00000000..ac1d5d04 --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/sql2003-hl.xml @@ -0,0 +1,565 @@ + + + + -- + + /* + */ + + + ' + + + + U' + ' + + + + B' + ' + + + + N' + ' + + + + X' + ' + + + + . + + e + + + + + + A + ABS + ABSOLUTE + ACTION + ADA + ADMIN + AFTER + ALWAYS + ASC + ASSERTION + ASSIGNMENT + ATTRIBUTE + ATTRIBUTES + AVG + BEFORE + BERNOULLI + BREADTH + C + CARDINALITY + CASCADE + CATALOG_NAME + CATALOG + CEIL + CEILING + CHAIN + CHAR_LENGTH + CHARACTER_LENGTH + CHARACTER_SET_CATALOG + CHARACTER_SET_NAME + CHARACTER_SET_SCHEMA + CHARACTERISTICS + CHARACTERS + CHECKED + CLASS_ORIGIN + COALESCE + COBOL + CODE_UNITS + COLLATION_CATALOG + COLLATION_NAME + COLLATION_SCHEMA + COLLATION + COLLECT + COLUMN_NAME + COMMAND_FUNCTION_CODE + COMMAND_FUNCTION + COMMITTED + CONDITION_NUMBER + CONDITION + CONNECTION_NAME + CONSTRAINT_CATALOG + CONSTRAINT_NAME + CONSTRAINT_SCHEMA + CONSTRAINTS + CONSTRUCTORS + CONTAINS + CONVERT + CORR + COUNT + COVAR_POP + COVAR_SAMP + CUME_DIST + CURRENT_COLLATION + CURSOR_NAME + DATA + DATETIME_INTERVAL_CODE + DATETIME_INTERVAL_PRECISION + DEFAULTS + DEFERRABLE + DEFERRED + DEFINED + DEFINER + DEGREE + DENSE_RANK + DEPTH + DERIVED + DESC + DESCRIPTOR + DIAGNOSTICS + DISPATCH + DOMAIN + DYNAMIC_FUNCTION_CODE + DYNAMIC_FUNCTION + EQUALS + EVERY + EXCEPTION + EXCLUDE + EXCLUDING + EXP + EXTRACT + FINAL + FIRST + FLOOR + FOLLOWING + FORTRAN + FOUND + FUSION + G + GENERAL + GO + GOTO + GRANTED + HIERARCHY + IMPLEMENTATION + INCLUDING + INCREMENT + INITIALLY + INSTANCE + INSTANTIABLE + INTERSECTION + INVOKER + ISOLATION + K + KEY_MEMBER + KEY_TYPE + KEY + LAST + LENGTH + LEVEL + LN + LOCATOR + LOWER + M + MAP + MATCHED + MAX + MAXVALUE + MESSAGE_LENGTH + MESSAGE_OCTET_LENGTH + MESSAGE_TEXT + MIN + MINVALUE + MOD + MORE + MUMPS + NAME + NAMES + NESTING + NEXT + NORMALIZE + NORMALIZED + NULLABLE + NULLIF + NULLS + NUMBER + OBJECT + OCTET_LENGTH + OCTETS + OPTION + OPTIONS + ORDERING + ORDINALITY + OTHERS + OVERLAY + OVERRIDING + PAD + PARAMETER_MODE + PARAMETER_NAME + PARAMETER_ORDINAL_POSITION + PARAMETER_SPECIFIC_CATALOG + PARAMETER_SPECIFIC_NAME + PARAMETER_SPECIFIC_SCHEMA + PARTIAL + PASCAL + PATH + PERCENT_RANK + PERCENTILE_CONT + PERCENTILE_DISC + PLACING + PLI + POSITION + POWER + PRECEDING + PRESERVE + PRIOR + PRIVILEGES + PUBLIC + RANK + READ + RELATIVE + REPEATABLE + RESTART + RETURNED_CARDINALITY + RETURNED_LENGTH + RETURNED_OCTET_LENGTH + RETURNED_SQLSTATE + ROLE + ROUTINE_CATALOG + ROUTINE_NAME + ROUTINE_SCHEMA + ROUTINE + ROW_COUNT + ROW_NUMBER + SCALE + SCHEMA_NAME + SCHEMA + SCOPE_CATALOG + SCOPE_NAME + SCOPE_SCHEMA + SECTION + SECURITY + SELF + SEQUENCE + SERIALIZABLE + SERVER_NAME + SESSION + SETS + SIMPLE + SIZE + SOURCE + SPACE + SPECIFIC_NAME + SQRT + STATE + STATEMENT + STDDEV_POP + STDDEV_SAMP + STRUCTURE + STYLE + SUBCLASS_ORIGIN + SUBSTRING + SUM + TABLE_NAME + TABLESAMPLE + TEMPORARY + TIES + TOP_LEVEL_COUNT + TRANSACTION_ACTIVE + TRANSACTION + TRANSACTIONS_COMMITTED + TRANSACTIONS_ROLLED_BACK + TRANSFORM + TRANSFORMS + TRANSLATE + TRIGGER_CATALOG + TRIGGER_NAME + TRIGGER_SCHEMA + TRIM + TYPE + UNBOUNDED + UNCOMMITTED + UNDER + UNNAMED + USAGE + USER_DEFINED_TYPE_CATALOG + USER_DEFINED_TYPE_CODE + USER_DEFINED_TYPE_NAME + USER_DEFINED_TYPE_SCHEMA + VIEW + WORK + WRITE + ZONE + + ADD + ALL + ALLOCATE + ALTER + AND + ANY + ARE + ARRAY + AS + ASENSITIVE + ASYMMETRIC + AT + ATOMIC + AUTHORIZATION + BEGIN + BETWEEN + BIGINT + BINARY + BLOB + BOOLEAN + BOTH + BY + CALL + CALLED + CASCADED + CASE + CAST + CHAR + CHARACTER + CHECK + CLOB + CLOSE + COLLATE + COLUMN + COMMIT + CONNECT + CONSTRAINT + CONTINUE + CORRESPONDING + CREATE + CROSS + CUBE + CURRENT_DATE + CURRENT_DEFAULT_TRANSFORM_GROUP + CURRENT_PATH + CURRENT_ROLE + CURRENT_TIME + CURRENT_TIMESTAMP + CURRENT_TRANSFORM_GROUP_FOR_TYPE + CURRENT_USER + CURRENT + CURSOR + CYCLE + DATE + DAY + DEALLOCATE + DEC + DECIMAL + DECLARE + DEFAULT + DELETE + DEREF + DESCRIBE + DETERMINISTIC + DISCONNECT + DISTINCT + DOUBLE + DROP + DYNAMIC + EACH + ELEMENT + ELSE + END + END-EXEC + ESCAPE + EXCEPT + EXEC + EXECUTE + EXISTS + EXTERNAL + FALSE + FETCH + FILTER + FLOAT + FOR + FOREIGN + FREE + FROM + FULL + FUNCTION + GET + GLOBAL + GRANT + GROUP + GROUPING + HAVING + HOLD + HOUR + IDENTITY + IMMEDIATE + IN + INDICATOR + INNER + INOUT + INPUT + INSENSITIVE + INSERT + INT + INTEGER + INTERSECT + INTERVAL + INTO + IS + ISOLATION + JOIN + LANGUAGE + LARGE + LATERAL + LEADING + LEFT + LIKE + LOCAL + LOCALTIME + LOCALTIMESTAMP + MATCH + MEMBER + MERGE + METHOD + MINUTE + MODIFIES + MODULE + MONTH + MULTISET + NATIONAL + NATURAL + NCHAR + NCLOB + NEW + NO + NONE + NOT + NULL + NUMERIC + OF + OLD + ON + ONLY + OPEN + OR + ORDER + OUT + OUTER + OUTPUT + OVER + OVERLAPS + PARAMETER + PARTITION + PRECISION + PREPARE + PRIMARY + PROCEDURE + RANGE + READS + REAL + RECURSIVE + REF + REFERENCES + REFERENCING + REGR_AVGX + REGR_AVGY + REGR_COUNT + REGR_INTERCEPT + REGR_R2 + REGR_SLOPE + REGR_SXX + REGR_SXY + REGR_SYY + RELEASE + RESULT + RETURN + RETURNS + REVOKE + RIGHT + ROLLBACK + ROLLUP + ROW + ROWS + SAVEPOINT + SCROLL + SEARCH + SECOND + SELECT + SENSITIVE + SESSION_USER + SET + SIMILAR + SMALLINT + SOME + SPECIFIC + SPECIFICTYPE + SQL + SQLEXCEPTION + SQLSTATE + SQLWARNING + START + STATIC + SUBMULTISET + SYMMETRIC + SYSTEM_USER + SYSTEM + TABLE + THEN + TIME + TIMESTAMP + TIMEZONE_HOUR + TIMEZONE_MINUTE + TO + TRAILING + TRANSLATION + TREAT + TRIGGER + TRUE + UESCAPE + UNION + UNIQUE + UNKNOWN + UNNEST + UPDATE + UPPER + USER + USING + VALUE + VALUES + VAR_POP + VAR_SAMP + VARCHAR + VARYING + WHEN + WHENEVER + WHERE + WIDTH_BUCKET + WINDOW + WITH + WITHIN + WITHOUT + YEAR + + diff --git a/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/yaml-hl.xml b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/yaml-hl.xml new file mode 100644 index 00000000..a28008ec --- /dev/null +++ b/spring-cloud-task-docs/src/main/docbook/xsl/xslthl/yaml-hl.xml @@ -0,0 +1,47 @@ + + + # + + " + \ + + + ' + \ + + + @ + ( + ) + + + . + e + f + d + l + + + + true + false + + + { + } + , + [ + ] + + + + ^(---)$ + + MULTILINE + + + ^(.+?)(?==|:) + + MULTILINE + + diff --git a/spring-cloud-task-docs/src/main/javadoc/spring-javadoc.css b/spring-cloud-task-docs/src/main/javadoc/spring-javadoc.css new file mode 100644 index 00000000..06ad4227 --- /dev/null +++ b/spring-cloud-task-docs/src/main/javadoc/spring-javadoc.css @@ -0,0 +1,599 @@ +/* Javadoc style sheet */ +/* +Overall document style +*/ + +@import url('resources/fonts/dejavu.css'); + +body { + background-color:#ffffff; + color:#353833; + font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:14px; + margin:0; +} +a:link, a:visited { + text-decoration:none; + color:#4A6782; +} +a:hover, a:focus { + text-decoration:none; + color:#bb7a2a; +} +a:active { + text-decoration:none; + color:#4A6782; +} +a[name] { + color:#353833; +} +a[name]:hover { + text-decoration:none; + color:#353833; +} +pre { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; +} +h1 { + font-size:20px; +} +h2 { + font-size:18px; +} +h3 { + font-size:16px; + font-style:italic; +} +h4 { + font-size:13px; +} +h5 { + font-size:12px; +} +h6 { + font-size:11px; +} +ul { + list-style-type:disc; +} +code, tt { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; + margin-top:8px; + line-height:1.4em; +} +dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; +} +table tr td dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + vertical-align:top; + padding-top:4px; +} +sup { + font-size:8px; +} +/* +Document title and Copyright styles +*/ +.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; +} +/* +Navigation bar styles +*/ +.bar { + background-color:#4D7A97; + color:#FFFFFF; + padding:.8em .5em .4em .8em; + height:auto;/*height:1.8em;*/ + font-size:11px; + margin:0; +} +.topNav { + background-color:#4D7A97; + 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:#4D7A97; + color:#FFFFFF; + float:left; + padding:0; + width:100%; + clear:right; + height:2.8em; + padding-top:10px; + overflow:hidden; + font-size:12px; +} +.subNav { + background-color:#dee3e9; + 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.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:#F8981D; + color:#253441; + margin: auto 5px; +} +.skipNav { + position:absolute; + top:auto; + left:-9999px; + overflow:hidden; +} +/* +Page header and footer styles +*/ +.header, .footer { + clear:both; + margin:0 20px; + padding:5px 0 0 0; +} +.indexHeader { + margin:10px; + position:relative; +} +.indexHeader span{ + margin-right:15px; +} +.indexHeader 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; +} +/* +Heading styles +*/ +div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 { + background-color:#dee3e9; + border:1px solid #d0d9e0; + margin:0 0 6px -8px; + padding:7px 5px; +} +ul.blockList ul.blockList ul.blockList li.blockList h3 { + background-color:#dee3e9; + 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; +} +/* +Page layout container styles +*/ +.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer { + clear:both; + padding:10px 20px; + position:relative; +} +.indexContainer { + margin:10px; + position:relative; + font-size:12px; +} +.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:12px; + 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:14px; + font-family:'DejaVu Sans Mono',monospace; +} +.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; +} +/* +List styles +*/ +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; +} +/* +Table styles +*/ +.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary { + width:100%; + border-left:1px solid #EEE; + border-right:1px solid #EEE; + border-bottom:1px solid #EEE; +} +.overviewSummary, .memberSummary { + padding:0px; +} +.overviewSummary caption, .memberSummary caption, .typeSummary caption, +.useSummary caption, .constantsSummary caption, .deprecatedSummary 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; +} +.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link, +.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary 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, +.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active, +.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active, +.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited, +.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited { + color:#FFFFFF; +} +.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span, +.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + padding-bottom:7px; + display:inline-block; + float:left; + background-color:#F8981D; + border: none; + height:16px; +} +.memberSummary caption span.activeTableTab span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + margin-right:3px; + display:inline-block; + float:left; + background-color:#F8981D; + height:16px; +} +.memberSummary 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:#4D7A97; + height:16px; +} +.memberSummary caption span.tableTab, .memberSummary 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 { + display:none; + width:5px; + position:relative; + float:left; + background-color:#F8981D; +} +.memberSummary .activeTableTab .tabEnd { + display:none; + width:5px; + margin-right:3px; + position:relative; + float:left; + background-color:#F8981D; +} +.memberSummary .tableTab .tabEnd { + display:none; + width:5px; + margin-right:3px; + position:relative; + background-color:#4D7A97; + float:left; + +} +.overviewSummary td, .memberSummary td, .typeSummary td, +.useSummary td, .constantsSummary td, .deprecatedSummary td { + text-align:left; + padding:0px 0px 12px 10px; + width:100%; +} +th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th, +td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{ + vertical-align:top; + padding-right:0px; + padding-top:8px; + padding-bottom:3px; +} +th.colFirst, th.colLast, th.colOne, .constantsSummary th { + background:#dee3e9; + text-align:left; + padding:8px 3px 3px 7px; +} +td.colFirst, th.colFirst { + white-space:nowrap; + font-size:13px; +} +td.colLast, th.colLast { + font-size:13px; +} +td.colOne, th.colOne { + font-size:13px; +} +.overviewSummary td.colFirst, .overviewSummary th.colFirst, +.overviewSummary td.colOne, .overviewSummary th.colOne, +.memberSummary td.colFirst, .memberSummary th.colFirst, +.memberSummary td.colOne, .memberSummary th.colOne, +.typeSummary td.colFirst{ + width:25%; + vertical-align:top; +} +td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { + font-weight:bold; +} +.tableSubHeadingColor { + background-color:#EEEEFF; +} +.altColor { + background-color:#FFFFFF; +} +.rowColor { + background-color:#EEEEEF; +} +/* +Content styles +*/ +.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:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; +} + +td.colLast div { + padding-top:0px; +} + + +td.colLast a { + padding-bottom:3px; +} +/* +Formatting effect styles +*/ +.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, .memberNameLabel, .memberNameLink, +.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel, +.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink { + font-weight:bold; +} +.deprecationComment, .emphasizedPhrase, .interfaceName { + font-style:italic; +} + +div.block div.block span.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; +} + + + +/* +Spring +*/ + +pre.code { + background-color: #F8F8F8; + border: 1px solid #CCCCCC; + border-radius: 3px 3px 3px 3px; + overflow: auto; + padding: 10px; + margin: 4px 20px 2px 0px; +} + +pre.code code, pre.code code * { + font-size: 1em; +} + +pre.code code, pre.code code * { + padding: 0 !important; + margin: 0 !important; +} + diff --git a/spring-cloud-task-docs/src/main/xslt/dependencyVersions.xsl b/spring-cloud-task-docs/src/main/xslt/dependencyVersions.xsl new file mode 100644 index 00000000..1dabd2ea --- /dev/null +++ b/spring-cloud-task-docs/src/main/xslt/dependencyVersions.xsl @@ -0,0 +1,28 @@ + + + + + + + |=== + | Group ID | Artifact ID | Version + + + + + | ` + + ` + | ` + + ` + | + + + + |=== + + +