Skip to content

Commit

Permalink
Convert almost all TCK User Guides to use a common template.
Browse files Browse the repository at this point in the history
  • Loading branch information
bshannon committed Jun 6, 2019
1 parent 226f15b commit 8171bf8
Show file tree
Hide file tree
Showing 570 changed files with 38,672 additions and 21,308 deletions.
1 change: 1 addition & 0 deletions .gitignore
@@ -0,0 +1 @@
target/
15 changes: 15 additions & 0 deletions user_guides/README.md
@@ -0,0 +1,15 @@
= TCK User Guides

This directory contains all the TCK User Guides.

All User Guides except for the "javaee" (platform and Web Profile)
User Guide are derived from a common template in the Template
directory. After making changes to the template, the
apply_template.sh script can be used to apply the changes to
all the derived TCK User Guides. This is a bit of a kludge
and really should be done at build time using Maven; that's a
project for the future.

Note that when using the template for a particular specification's
TCK User Guide, none of the *.adoc files should be modified.
See the README file in Template/src/main/jbake/content.
30 changes: 30 additions & 0 deletions user_guides/Template/CONTRIBUTING.md
@@ -0,0 +1,30 @@
---

---

# Source Code Submissions
We welcome your contributions and look forward to collaborating with you. We can only accept source code repository
submissions from users who have signed and returned the Oracle
Contributor Agreement. You will find details and the agreement to sign at this OTN web page:
[Oracle Contributor Agreement](http://www.oracle.com/technetwork/community/oca-486395.html).

# Other Contrbutions
For all project Submissions other than source code repository contributions, the following also applies: Oracle does
not claim ownership of Your Submissions. However, in order to fulfill
the purposes of this project, You must give Oracle and all Users
the right to post, access, discuss, use, publish, disseminate, and refine
Your Submissions.

In legalese: *You hereby grant to Oracle and all
Users a royalty-free, perpetual, irrevocable, worldwide, non-exclusive,
and fully sub-licensable right and license, under Your intellectual
property rights, to reproduce, modify, adapt, publish, translate, create
derivative works from, distribute, perform, display, and use Your
Submissions (in whole or part) and to incorporate or implement them in
other works in any form, media, or technology now known or later
developed, all subject to the obligation to retain any copyright notices
included in Your Submissions. All Users, Oracle, and their
sublicensees are responsible for any modifications they make to the
Submissions of others.*

Copyright © 2017 Oracle and/or its affiliates. All rights reserved
761 changes: 761 additions & 0 deletions user_guides/Template/LICENSE.md

Large diffs are not rendered by default.

77 changes: 77 additions & 0 deletions user_guides/Template/README.md
@@ -0,0 +1,77 @@
# A JBake project template

## About JBake

JBake is a static site generator, it's inspired from jekyll and written
in java. The basic idea is to have templates for the structure of the
page, and the body generated from asciidoc content.

## Pre requisites

- Maven
- JDK8+

Deploying to Github will require password less authentication.

This is done by exporting your SSH public key into your Github account.

## Build the site locally

The site is generated under target/staging.

Open file:///PATH_TO_PROJECT_DIR/target/staging in a browser to view the site.

```
mvn generate-resources
```

Or you can invoke the JBake plugin directly.

```
mvn jbake:build
```

### Rebuild the site on changes

```
mvn jbake:watch
```

If you keep this command running, changes to the sources will be
detected and the site will be rendered incrementally.

This is convenient when writing content.

### Serve the site locally

```
mvn jbake:serve
```

If a webserver is required (e.g. absolute path are used), this command
will start a webserver (jetty) at http://localhost:8820. It will also
watch for changes and rebuild incrementally.

## Deploy the site to Github Pages

```
mvn deploy
```

## Produce a zip file for download

To produce a zip file containing the generated html files, use:

```
mvn package
```

When making a release on GitHub, this zip file should be added to the release.

## Links

- [JBake maven plugin documentation](https://github.com/Blazebit/jbake-maven-plugin)
- [JBake documentation](http://jbake.org/docs/2.5.1)
- [Freemarker documentation](http://freemarker.org/docs)
- [AsciiDoc User Guide](http://asciidoc.org/userguide.html)
- [Asciidoctor quick reference](http://asciidoctor.org/docs/asciidoc-syntax-quick-reference)
147 changes: 147 additions & 0 deletions user_guides/Template/pom.xml
@@ -0,0 +1,147 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
Copyright (c) 2017 Oracle and/or its affiliates. All rights reserved.
The contents of this file are subject to the terms of either the GNU
General Public License Version 2 only ("GPL") or the Common Development
and Distribution License("CDDL") (collectively, the "License"). You
may not use this file except in compliance with the License. You can
obtain a copy of the License at
https://oss.oracle.com/licenses/CDDL+GPL-1.1
or LICENSE.txt. See the License for the specific
language governing permissions and limitations under the License.
When distributing the software, include this License Header Notice in each
file and include the License file at LICENSE.txt.
GPL Classpath Exception:
Oracle designates this particular file as subject to the "Classpath"
exception as provided by Oracle in the GPL Version 2 section of the License
file that accompanied this code.
Modifications:
If applicable, add the following below the License Header, with the fields
enclosed by brackets [] replaced by your own identifying information:
"Portions Copyright [year] [name of copyright owner]"
Contributor(s):
If you wish your version of this file to be governed by only the CDDL or
only the GPL Version 2, indicate your decision by adding "[Contributor]
elects to include this software in this distribution under the [CDDL or GPL
Version 2] license." If you don't indicate a single choice of license, a
recipient has the option to distribute your version of this file under
either the CDDL, the GPL Version 2 or to extend the choice of license to
its licensees as provided above. However, if you add GPL Version 2 code
and therefore, elected the GPL Version 2 license, then the option applies
only if the new code is made subject to such option by the copyright
holder.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.glassfish</groupId>
<artifactId>tck_jaxrs_v2_1</artifactId>
<packaging>pom</packaging>
<version>1.0.0-SNAPSHOT</version>
<name>Oracle Technology Compatibility Kit User's Guide for Java API for RESTful Web Services (JAX-RS) 2.1 for Technology Licensees, Release 2.1</name>

<properties>
<site.output.dir>${project.build.directory}/staging</site.output.dir>
<maven.site.skip>true</maven.site.skip>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>

<distributionManagement>
<site>
<url>scm:git:git@github.com:javaee/tck_jaxrs_v2_1.git</url>
</site>
</distributionManagement>

<build>
<defaultGoal>package</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.4.1</version>
<executions>
<execution>
<id>enforce-versions</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireJavaVersion>
<version>[1.8.0,1.9.0)</version>
<message>You need JDK8 or lower</message>
</requireJavaVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.blazebit</groupId>
<artifactId>jbake-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<outputDirectory>${site.output.dir}</outputDirectory>
</configuration>
<executions>
<execution>
<id>build-site</id>
<phase>generate-resources</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctorj</artifactId>
<version>1.5.5</version>
</dependency>
<dependency>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctorj-diagram</artifactId>
<version>1.5.4</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-publish-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<id>deploy-site</id>
<phase>deploy</phase>
<goals>
<goal>publish-scm</goal>
</goals>
<configuration>
<scmBranch>gh-pages</scmBranch>
<skipDeletedFiles>false</skipDeletedFiles>
<checkinComment>Update site</checkinComment>
</configuration>
</execution>
</executions>
</plugin>
</plugins>

<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
4 changes: 4 additions & 0 deletions user_guides/Template/src/main/jbake/assets/README.md
@@ -0,0 +1,4 @@
# About

The {{site.title}} project contains the [AsciiDoc](http://asciidoc.org/)
source code for the ...
14 changes: 14 additions & 0 deletions user_guides/Template/src/main/jbake/assets/_config.yml
@@ -0,0 +1,14 @@
theme: jekyll-theme-architect

title: [tck_wombat_v1_0]
description: [Oracle Technology Compatibility Kit User's Guide for Wombat for Technology Licensees, Release 1.0]

# sidebar links url
links:
source: https://github.com/javaee/tck_wombat_v1_0
download: https://github.com/javaee/tck_wombat_v1_0/releases
#mailinglist: https://javaee.groups.io/g/tck_wombat_v1_0
#javadocs:
docs: https://javaee.github.io/tck_wombat_v1_0
#faq:

102 changes: 102 additions & 0 deletions user_guides/Template/src/main/jbake/assets/_layouts/default.html
@@ -0,0 +1,102 @@
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="{{ '/assets/css/style.css?' | relative_url }}" media="screen" type="text/css">
<link rel="stylesheet" href="{{ '/assets/css/print.css' | relative_url }}" media="print" type="text/css">

<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

<title>{{ site.title | default: site.github.repository_name }}</title>
</head>

<body>
<header>
<div class="inner">
<a href="{{ '/' | absolute_url }}">
<h1>{{ site.title | default: site.github.repository_name }}</h1>
</a>
<h2>{{ site.description | default: site.github.project_tagline }}</h2>
{% if site.github.is_project_page %}
<a href="{{ '/' | absolute_url }}" class="button"></a>
{% endif %}
</div>
</header>

<div id="content-wrapper">
<div class="inner clearfix">
<section id="main-content">
{{ content }}

</section>

<aside id="sidebar">

<hr/>

<div class="moveright">
{% if site.links.source %}
<h2><a href="{{ site.links.source }}"><p>Sources</p></a></h2>
{% endif %}

{% if site.links.javadocs %}
<h2><a href="{{ site.links.javadocs }}"><p>APIs</p></a></h2>
{% endif %}

{% if site.links.docs %}
<h2><a href="{{ site.links.docs }}"><p>Documentation</p></a></h2>
{% endif %}

{% if site.links.faq %}
<h2><a href="{{ site.links.faq }}"><p>FAQ</p></a></h2>
{% endif %}

{% if site.links.download %}
<h2><a href="{{ site.links.download }}"><p>Download</p></a></h2>
{% endif %}

{% if site.links.hide_issuetracker != true %}
<h2><a href="{{ site.github.issues_url }}"><p>Issue Tracker</p></a></h2>
{% endif %}

{% if site.links.mailinglist %}
<h2><a href="{{ site.links.mailinglist }}"><p>Mailing List</p></a></h2>
{% endif %}

<h2><a href="CONTRIBUTING"><p>Contribute</p></a></h2>

<h2><a href="LICENSE"><p>License</p></a></h2>
</div>

<hr/>

<div class="sponsor">
<p>Sponsored by<a href="http://www.oracle.com" class="oraclelogo"></a></p>
</div>

</aside>
</div>
</div>

<!--
<div class="footer"><a id="copyright" class="oracle" href="https://www.oracle.com/legal/copyright.html">&copy; Oracle</a> | By contributing to this project, you are agreeing to the terms of use described <a href="CONTRIBUTING">here</a>.</div>
-->

{% if site.google_analytics %}
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("{{ site.google_analytics }}");
pageTracker._trackPageview();
} catch(err) {}
</script>
{% endif %}
</body>
</html>

0 comments on commit 8171bf8

Please sign in to comment.