You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2016/08/01 16:03:44 UTC

[39/51] [abbrv] [partial] incubator-juneau git commit: Merge changes from GitHub repo.

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/samples/addressbook/package-info.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/samples/addressbook/package-info.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/samples/addressbook/package-info.java
deleted file mode 100755
index d079914..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/samples/addressbook/package-info.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-// XML namespaces used in this package
-@XmlSchema(
-	prefix="ab",
-	xmlNs={
-		@XmlNs(prefix="ab", namespaceURI="http://www.ibm.com/addressBook/"),
-		@XmlNs(prefix="per", namespaceURI="http://www.ibm.com/person/"),
-		@XmlNs(prefix="addr", namespaceURI="http://www.ibm.com/address/"),
-		@XmlNs(prefix="mail", namespaceURI="http://www.ibm.com/mail/")
-	}
-)
-@RdfSchema(
-	prefix="ab",
-	rdfNs={
-		@RdfNs(prefix="ab", namespaceURI="http://www.ibm.com/addressBook/"),
-		@RdfNs(prefix="per", namespaceURI="http://www.ibm.com/person/"),
-		@RdfNs(prefix="addr", namespaceURI="http://www.ibm.com/address/"),
-		@RdfNs(prefix="mail", namespaceURI="http://www.ibm.com/mail/")
-	}
-)
-package org.apache.juneau.samples.addressbook;
-import org.apache.juneau.jena.annotation.*;
-import org.apache.juneau.xml.annotation.*;
-

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/samples/addressbook/package.html
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/samples/addressbook/package.html b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/samples/addressbook/package.html
deleted file mode 100755
index 5ac8abc..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/samples/addressbook/package.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<html>
-<head>
-	<style type="text/css">
-		/* For viewing in Page Designer */
-		@IMPORT url("../../../../../../org.apache.juneau/javadoc.css");
-
-		/* For viewing in REST interface */
-		@IMPORT url("../htdocs/javadoc.css");
-		body { 
-			margin: 20px; 
-		}	
-	</style>
-	<script>
-		/* Replace all @code and @link tags. */	
-		window.onload = function() {
-			document.body.innerHTML = document.body.innerHTML.replace(/\{\@code ([^\}]+)\}/g, '<code>$1</code>');
-			document.body.innerHTML = document.body.innerHTML.replace(/\{\@link (([^\}]+)\.)?([^\.\}]+)\}/g, '<code>$3</code>');
-		}
-	</script>
-</head>
-<body>
-<p>Javadocs for Address Book Resource Example</p>
-<p>
-	Pretend there is documentation here.
-</p>
-</body>
-</html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/AdminGuard.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/AdminGuard.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/AdminGuard.java
deleted file mode 100755
index b6e3d1a..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/AdminGuard.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import org.apache.juneau.server.*;
-
-/**
- * Sample guard that only lets administrators through.
- */
-public class AdminGuard extends RestGuard {
-
-	@Override /* RestGuard */
-	public boolean isRequestAllowed(RestRequest req) {
-		return true;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/AtomFeedResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/AtomFeedResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/AtomFeedResource.java
deleted file mode 100755
index 46f9006..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/AtomFeedResource.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static javax.xml.bind.DatatypeConverter.*;
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-import static org.apache.juneau.jena.RdfCommonContext.*;
-import static org.apache.juneau.jena.RdfSerializerContext.*;
-
-import java.net.*;
-
-import org.apache.juneau.dto.atom.*;
-import org.apache.juneau.dto.atom.Content;
-import org.apache.juneau.encoders.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.annotation.*;
-
-/**
- * Sample resource that shows how to generate ATOM feeds.
- */
-@RestResource(
-	path="/atom",
-	messages="nls/AtomFeedResource",
-	properties={
-		@Property(name=SERIALIZER_quoteChar, value="'"),
-		@Property(name=RDF_rdfxml_tab, value="5"),
-		@Property(name=RDF_addRootProperty, value="true"),
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.AtomFeedResource)'}")
-	},
-	encoders=GzipEncoder.class
-)
-public class AtomFeedResource extends ResourceJena {
-	private static final long serialVersionUID = 1L;
-
-	private Feed feed;     // The root resource object
-
-	@Override /* Servlet */
-	public void init() {
-
-		try {
-			feed = new Feed()
-				.setTitle(new Text("text", "Juneau ATOM specification"))
-				.setSubTitle(new Text("html", "A <em>lot</em> of effort went into making this effortless"))
-				.setUpdated(parseDateTime("2013-05-08T12:29:29Z"))
-				.setId(new Id("tag:juneau.sample.com,2013:1"))
-				.addLinks(
-					new Link("alternate", "text/html", "http://www.sample.com/").setHreflang("en"),
-					new Link("self", "application/atom+xml", "http://www.sample.com/feed.atom")
-				)
-				.setRights(new Text("Copyright (c) 2013, IBM"))
-				.setGenerator(new Generator("Juneau").setUri(new URI("http://juneau.ibm.com/")).setVersion("1.0"))
-				.addEntries(
-					new Entry()
-						.setTitle(new Text("Juneau ATOM specification snapshot"))
-						.addLinks(
-							new Link("alternate", "text/html", "http://www.sample.com/2012/05/08/juneau.atom"),
-							new Link("enclosure", "audio/mpeg", "http://www.sample.com/audio/juneau_podcast.mp3").setLength(12345)
-						)
-						.setId(new Id("tag:juneau.sample.com,2013:1.2345"))
-						.setUpdated(parseDateTime("2013-05-08T12:29:29Z"))
-						.setPublished(parseDateTime("2013-05-08T12:29:29Z"))
-						.addAuthors(new Person("James Bognar").setUri(new URI("http://www.sample.com/")).setEmail("james.bognar@salesforce.com"))
-						.addContributors(
-							new Person("Barry M. Caceres")
-						)
-						.setContent(
-							new Content()
-								.setLang("en")
-								.setBase(new URI("http://www.ibm.com/"))
-								.setType("xhtml")
-								.setText("<div xmlns=\"http://www.w3.org/1999/xhtml\"><p><i>[Update: Juneau supports ATOM.]</i></p></div>")
-						)
-				);
-		} catch (Exception e) {
-			throw new RuntimeException(e);
-		}
-	}
-
-	/**
-	 * GET request handler
-	 */
-	@RestMethod(name="GET", path="/")
-	public Feed getFeed() throws Exception {
-		return feed;
-	}
-
-	/**
-	 * PUT request handler.
-	 * Replaces the feed with the specified content, and then mirrors it as the response.
-	 */
-	@RestMethod(name="PUT", path="/")
-	public Feed setFeed(@org.apache.juneau.server.annotation.Content Feed feed) throws Exception {
-		this.feed = feed;
-		return feed;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/CodeFormatterResource.html
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/CodeFormatterResource.html b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/CodeFormatterResource.html
deleted file mode 100755
index 2523daa..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/CodeFormatterResource.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<!DOCTYPE HTML>
-<html>
-<head>
-	<style type='text/css'>
-		@import '$R{servletURI}/style.css';
-	</style>
-	<script>
-		// Quick and dirty function to allow tabs in textarea.
-		function checkTab(e) {
-		    if (e.keyCode == 9) {
-			    var t = e.target;
-			    var ss = t.selectionStart, se = t.selectionEnd;
-	            t.value = t.value.slice(0,ss).concat('\t').concat(t.value.slice(ss,t.value.length));
-		        e.preventDefault();
-		    }
-		}	
-		// Load results from IFrame into this document.
-		function loadResults(buff) {
-			var doc = buff.contentDocument || buff.contentWindow.document;
-			var buffBody = doc.getElementById('data');
-			if (buffBody != null) {
-				document.getElementById('results').innerHTML = buffBody.innerHTML;
-			}
-		}
-	</script>
-</head>
-<body>
-	<h3 class='title'>Code Formatter</h3>
-	<div class='data'>
-		<form id='form' action='codeFormatter' method='POST' target='buff'>
-			<table>
-				<tr>
-					<th>Language: </th>
-					<td><input name='lang' value='java'></td>
-					<td><button type='submit'>Submit</button><button type='reset'>Reset</button></td>
-				</tr>		
-				<tr>
-					<td colspan='3'><textarea name='code' style='width:100%;height:200px;font-family:Courier;font-size:9pt;' onkeydown='checkTab(event)'></textarea></td>
-				</tr>
-			</table>
-		</form>
-		<div id='results' class='monospace'>
-		</div>
-	</div>
-	<iframe name='buff' style='display:none' onload="parent.loadResults(this)"></iframe>
-</body>
-</html>
-

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/CodeFormatterResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/CodeFormatterResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/CodeFormatterResource.java
deleted file mode 100755
index b225f96..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/CodeFormatterResource.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import java.io.*;
-
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.*;
-import org.apache.juneau.server.annotation.*;
-
-/**
- * Service at <code>/jazz/rawSql</code>.
- * Used for executing SQL queries against the repository database.
- */
-@RestResource(
-	path="/codeFormatter",
-	messages="nls/CodeFormatterResource",
-	properties={
-		@Property(name=HTMLDOC_title, value="Code Formatter"),
-		@Property(name=HTMLDOC_description, value="Add syntax highlighting tags to source code"),
-		@Property(name=HTMLDOC_links, value="{options:'?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.CodeFormatterResource)'}"),
-	}
-)
-@SuppressWarnings("serial")
-public class CodeFormatterResource extends Resource {
-
-	/** [GET /] - Display query entry page. */
-	@RestMethod(name="GET", path="/")
-	public ReaderResource getQueryEntryPage(RestRequest req) throws IOException {
-		return req.getReaderResource("CodeFormatterResource.html", true);
-	}
-
-	/** [POST /] - Execute SQL query. */
-	@RestMethod(name="POST", path="/")
-	public String executeQuery(@Param("code") String code, @Param("lang") String lang) throws Exception {
-		return SourceResource.highlight(code, lang);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/Constants.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/Constants.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/Constants.java
deleted file mode 100755
index 6af83a5..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/Constants.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-
-public class Constants {
-
-	private static String juneauSampleUrl = System.getProperty("JUNO_SAMPLE_URL");
-
-	/**
-	 * Returns the value of the "JUNO_SAMPLE_URL" system property, or throws a {@link RuntimeException}
-	 * if it's not set.
-	 */
-	public static String getSampleUrl() {
-		if (juneauSampleUrl == null)
-			return "http://localhost:10000";
-		return juneauSampleUrl;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/DirectoryResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/DirectoryResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/DirectoryResource.java
deleted file mode 100755
index 9dc71f2..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/DirectoryResource.java
+++ /dev/null
@@ -1,234 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static java.util.logging.Level.*;
-import static javax.servlet.http.HttpServletResponse.*;
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-import static org.apache.juneau.server.RestServletContext.*;
-
-import java.io.*;
-import java.net.*;
-import java.util.*;
-import java.util.logging.*;
-
-import javax.servlet.*;
-
-import org.apache.juneau.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.*;
-import org.apache.juneau.server.annotation.*;
-import org.apache.juneau.server.annotation.Properties;
-import org.apache.juneau.server.converters.*;
-import org.apache.juneau.utils.*;
-
-/**
- * Sample REST resource for exploring local file systems.
- */
-@RestResource(
-	messages="nls/DirectoryResource",
-	properties={
-		@Property(name=HTML_uriAnchorText, value=PROPERTY_NAME),
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.DirectoryResource)'}"),
-		@Property(name=REST_allowMethodParam, value="*"),
-		@Property(name="rootDir", value="$S{java.io.tmpdir}"),
-		@Property(name="allowViews", value="false"),
-		@Property(name="allowDeletes", value="false"),
-		@Property(name="allowPuts", value="false")
-	}
-)
-public class DirectoryResource extends Resource {
-	private static final long serialVersionUID = 1L;
-
-	protected File rootDir;     // The root directory
-
-	// Settings enabled through servlet init parameters
-	protected boolean allowDeletes, allowPuts, allowViews;
-
-	private static Logger logger = Logger.getLogger(DirectoryResource.class.getName());
-
-	@Override /* Servlet */
-	public void init() throws ServletException {
-		ObjectMap p = getProperties();
-		rootDir = new File(p.getString("rootDir"));
-		allowViews = p.getBoolean("allowViews", false);
-		allowDeletes = p.getBoolean("allowDeletes", false);
-		allowPuts = p.getBoolean("allowPuts", false);
-	}
-
-	/** Returns the root directory defined by the 'rootDir' init parameter */
-	protected File getRootDir() {
-		if (rootDir == null) {
-			rootDir = new File(getProperties().getString("rootDir"));
-			if (! rootDir.exists())
-				if (! rootDir.mkdirs())
-					throw new RuntimeException("Could not create root dir");
-		}
-		return rootDir;
-	}
-
-	/** GET request handler */
-	@RestMethod(name="GET", path="/*", converters={Queryable.class})
-	public Object doGet(RestRequest req, @Properties ObjectMap properties) throws Exception {
-
-		String pathInfo = req.getPathInfo();
-		File f = pathInfo == null ? rootDir : new File(rootDir.getAbsolutePath() + pathInfo);
-
-		if (!f.exists())
-			throw new RestException(SC_NOT_FOUND, "File not found");
-
-		properties.put("path", f.getAbsolutePath());
-
-		if (f.isDirectory()) {
-			List<FileResource> l = new LinkedList<FileResource>();
-			for (File fc : f.listFiles()) {
-				URL fUrl = new URL(req.getRequestURL().append("/").append(fc.getName()).toString());
-				l.add(new FileResource(fc, fUrl));
-			}
-			return l;
-		}
-
-		return new FileResource(f, new URL(req.getRequestURL().toString()));
-	}
-
-	/** DELETE request handler */
-	@RestMethod(name="DELETE", path="/*", guards=AdminGuard.class)
-	public Object doDelete(RestRequest req) throws Exception {
-
-		if (! allowDeletes)
-			throw new RestException(SC_METHOD_NOT_ALLOWED, "DELETE not enabled");
-
-		File f = new File(rootDir.getAbsolutePath() + req.getPathInfo());
-		deleteFile(f);
-
-		if (req.getHeader("Accept").contains("text/html"))
-			return new Redirect();
-		return "File deleted";
-	}
-
-	/** PUT request handler */
-	@RestMethod(name="PUT", path="/*", guards=AdminGuard.class)
-	public Object doPut(RestRequest req) throws Exception {
-
-		if (! allowPuts)
-			throw new RestException(SC_METHOD_NOT_ALLOWED, "PUT not enabled");
-
-		File f = new File(rootDir.getAbsolutePath() + req.getPathInfo());
-		String parentSubPath = f.getParentFile().getAbsolutePath().substring(rootDir.getAbsolutePath().length());
-		BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(f));
-		IOPipe.create(req.getInputStream(), bos).closeOut().run();
-		if (req.getContentType().contains("html"))
-			return new Redirect(parentSubPath);
-		return "File added";
-	}
-
-	/** VIEW request handler (overloaded GET for viewing file contents) */
-	@RestMethod(name="VIEW", path="/*")
-	public void doView(RestRequest req, RestResponse res) throws Exception {
-
-		if (! allowViews)
-			throw new RestException(SC_METHOD_NOT_ALLOWED, "VIEW not enabled");
-
-		File f = new File(rootDir.getAbsolutePath() + req.getPathInfo());
-
-		if (!f.exists())
-			throw new RestException(SC_NOT_FOUND, "File not found");
-
-		if (f.isDirectory())
-			throw new RestException(SC_METHOD_NOT_ALLOWED, "VIEW not available on directories");
-
-		res.setOutput(new FileReader(f)).setContentType("text/plain");
-	}
-
-	/** DOWNLOAD request handler (overloaded GET for downloading file contents) */
-	@RestMethod(name="DOWNLOAD")
-	public void doDownload(RestRequest req, RestResponse res) throws Exception {
-
-		if (! allowViews)
-			throw new RestException(SC_METHOD_NOT_ALLOWED, "DOWNLOAD not enabled");
-
-		File f = new File(rootDir.getAbsolutePath() + req.getPathInfo());
-
-		if (!f.exists())
-			throw new RestException(SC_NOT_FOUND, "File not found");
-
-		if (f.isDirectory())
-			throw new RestException(SC_METHOD_NOT_ALLOWED, "DOWNLOAD not available on directories");
-
-		res.setOutput(new FileReader(f)).setContentType("application");
-	}
-
-	/** File POJO */
-	public class FileResource {
-		private File f;
-		private URL url;
-
-		/** Constructor */
-		public FileResource(File f, URL url) {
-			this.f = f;
-			this.url = url;
-		}
-
-		// Bean property getters
-
-		public URL getUrl() {
-			return url;
-		}
-
-		public String getType() {
-			return (f.isDirectory() ? "dir" : "file");
-		}
-
-		public String getName() {
-			return f.getName();
-		}
-
-		public long getSize() {
-			return f.length();
-		}
-
-		public Date getLastModified() {
-			return new Date(f.lastModified());
-		}
-
-		public URL getView() throws Exception {
-			if (allowViews && f.canRead() && ! f.isDirectory())
-				return new URL(url + "?method=VIEW");
-			return null;
-		}
-
-		public URL getDownload() throws Exception {
-			if (allowViews && f.canRead() && ! f.isDirectory())
-				return new URL(url + "?method=DOWNLOAD");
-			return null;
-		}
-
-		public URL getDelete() throws Exception {
-			if (allowDeletes && f.canWrite())
-				return new URL(url + "?method=DELETE");
-			return null;
-		}
-	}
-
-	/** Utility method */
-	private void deleteFile(File f) {
-		try {
-			if (f.isDirectory())
-				for (File fc : f.listFiles())
-					deleteFile(fc);
-			f.delete();
-		} catch (Exception e) {
-			logger.log(WARNING, "Cannot delete file '" + f.getAbsolutePath() + "'", e);
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/DockerRegistryResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/DockerRegistryResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/DockerRegistryResource.java
deleted file mode 100755
index 6380794..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/DockerRegistryResource.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import java.util.*;
-
-import javax.servlet.*;
-
-import org.apache.juneau.client.*;
-import org.apache.juneau.json.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.*;
-import org.apache.juneau.server.annotation.*;
-import org.apache.juneau.server.labels.*;
-
-/**
- * Sample resource that shows how to mirror query results from a Docker registry.
- */
-@RestResource(
-	path="/docker",
-	label="Sample Docker resource",
-	properties={
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.AtomFeedResource)'}")
-	}
-)
-public class DockerRegistryResource extends Resource {
-	private static final long serialVersionUID = 1L;
-
-	// Get registry URL from samples.cfg file.
-	private String registryUrl = getConfig().getString("DockerRegistry/url");
-
-	RestClient rc;
-
-	@Override /* Servlet */
-	public void init() throws ServletException {
-		super.init();
-		rc = new RestClient(JsonSerializer.DEFAULT, JsonParser.DEFAULT);
-	}
-
-	@Override /* Servlet */
-	public void destroy() {
-		rc.closeQuietly();
-		super.destroy();
-	}
-
-	/** [GET /] - Show child resources. */
-	@SuppressWarnings("nls")
-	@RestMethod(name="GET", path="/")
-	public ResourceDescription[] getChildren(RestRequest req) {
-		return new ResourceDescription[] {
-			new ResourceDescription(req, "search", "Search Registry")
-		};
-	}
-
-	/**
-	 * PUT request handler.
-	 * Replaces the feed with the specified content, and then mirrors it as the response.
-	 */
-	@RestMethod(name="GET", path="/search")
-	public QueryResults query(@Param("q") String q) throws Exception {
-		String url = registryUrl + "/search" + (q == null ? "" : "?q=" + q);
-		synchronized(rc) {
-			return rc.doGet(url).getResponse(QueryResults.class);
-		}
-	}
-
-	public static class QueryResults {
-		public int num_results;
-		public String query;
-		public List<DockerImage> results;
-	}
-
-	public static class DockerImage {
-		public String name, description;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/HelloWorldResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/HelloWorldResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/HelloWorldResource.java
deleted file mode 100755
index bb42b89..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/HelloWorldResource.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.annotation.*;
-
-/**
- * Sample REST resource that prints out a simple "Hello world!" message.
- */
-@RestResource(
-	messages="nls/HelloWorldResource",
-	path="/helloWorld",
-	properties={
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'?method=OPTIONS'}")
-	}
-)
-public class HelloWorldResource extends Resource {
-	private static final long serialVersionUID = 1L;
-
-	/** GET request handler */
-	@RestMethod(name="GET", path="/*")
-	public String sayHello() {
-		return "Hello world!";
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/JsonSchemaResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/JsonSchemaResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/JsonSchemaResource.java
deleted file mode 100755
index 4e66ed4..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/JsonSchemaResource.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import org.apache.juneau.dto.jsonschema.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.annotation.*;
-
-/**
- * Sample resource that shows how to serialize JSON-Schema documents.
- */
-@RestResource(
-	path="/jsonSchema",
-	messages="nls/JsonSchemaResource",
-	properties={
-		@Property(name=HTMLDOC_title, value="Sample JSON-Schema document"),
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.JsonSchemaResource)'}")
-	}
-)
-public class JsonSchemaResource extends ResourceJena {
-	private static final long serialVersionUID = 1L;
-
-	private Schema schema;     // The schema document
-
-	@Override /* Servlet */
-	public void init() {
-
-		try {
-			schema = new Schema()
-				.setId("http://example.com/sample-schema#")
-				.setSchemaVersionUri("http://json-schema.org/draft-04/schema#")
-				.setTitle("Example Schema")
-				.setType(JsonType.OBJECT)
-				.addProperties(
-					new SchemaProperty("firstName", JsonType.STRING),
-					new SchemaProperty("lastName", JsonType.STRING),
-					new SchemaProperty("age", JsonType.INTEGER)
-						.setDescription("Age in years")
-						.setMinimum(0)
-				)
-				.addRequired("firstName", "lastName");
-		} catch (Exception e) {
-			throw new RuntimeException(e);
-		}
-	}
-
-	/** GET request handler */
-	@RestMethod(name="GET", path="/")
-	public Schema getSchema() throws Exception {
-		return schema;
-	}
-
-	/**
-	 * PUT request handler.
-	 * Replaces the schema document with the specified content, and then mirrors it as the response.
-	 */
-	@RestMethod(name="PUT", path="/")
-	public Schema setSchema(@Content Schema schema) throws Exception {
-		this.schema = schema;
-		return schema;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/MethodExampleResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/MethodExampleResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/MethodExampleResource.java
deleted file mode 100755
index 176e874..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/MethodExampleResource.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import java.util.*;
-
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.*;
-import org.apache.juneau.server.annotation.*;
-
-/**
- * Sample REST resource that shows how to define REST methods and OPTIONS pages
- */
-@RestResource(
-	path="/methodExample",
-	messages="nls/MethodExampleResource",
-	properties={
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.MethodExampleResource)'}")
-	}
-)
-public class MethodExampleResource extends Resource {
-	private static final long serialVersionUID = 1L;
-
-	/** Example GET request that redirects to our example method */
-	@RestMethod(name="GET", path="/")
-	public Redirect doGetExample() throws Exception {
-		return new Redirect("example1/xxx/123/{0}/xRemainder?p1=123&p2=yyy", UUID.randomUUID());
-	}
-
-	/** Example GET request using annotated attributes */
-	@RestMethod(name="GET", path="/example1/{a1}/{a2}/{a3}/*", rc={200})
-	public String doGetExample1(
-			@Method String method,
-			@Attr String a1,
-			@Attr int a2,
-			@Attr UUID a3,
-			@Param("p1") int p1,
-			@Param("p2") String p2,
-			@Param("p3") UUID p3,
-			@PathRemainder String remainder,
-			@Header("Accept-Language") String lang,
-			@Header("Accept") String accept,
-			@Header("DNT") int doNotTrack
-		) {
-		String output = String.format(
-				"method=%s, a1=%s, a2=%d, a3=%s, remainder=%s, p1=%d, p2=%s, p3=%s, lang=%s, accept=%s, dnt=%d",
-				method, a1, a2, a3, remainder, p1, p2, p3, lang, accept, doNotTrack);
-		return output;
-	}
-
-	/** Example GET request using methods on RestRequest and RestResponse */
-	@RestMethod(name="GET", path="/example2/{a1}/{a2}/{a3}/*", rc={200})
-	public void doGetExample2(RestRequest req, RestResponse res) throws Exception {
-		String method = req.getMethod();
-
-		// Attributes (from URL pattern variables)
-		String a1 = req.getAttribute("a1", String.class);
-		int a2 = req.getAttribute("a2", int.class);
-		UUID a3 = req.getAttribute("a3", UUID.class);
-
-		// Optional GET parameters
-		int p1 = req.getParameter("p1", int.class, 0);
-		String p2 = req.getParameter("p2", String.class);
-		UUID p3 = req.getParameter("p3", UUID.class);
-
-		// URL pattern post-match
-		String remainder = req.getPathRemainder();
-
-		// Headers
-		String lang = req.getHeader("Accept-Language");
-		int doNotTrack = req.getHeader("DNT", int.class);
-
-		// Send back a simple String response
-		String output = String.format(
-				"method=%s, a1=%s, a2=%d, a3=%s, remainder=%s, p1=%d, p2=%s, p3=%s, lang=%s, dnt=%d",
-				method, a1, a2, a3, remainder, p1, p2, p3, lang, doNotTrack);
-		res.setOutput(output);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/PhotosResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/PhotosResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/PhotosResource.java
deleted file mode 100755
index 74573fb..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/PhotosResource.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static javax.servlet.http.HttpServletResponse.*;
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import java.awt.image.*;
-import java.io.*;
-import java.net.*;
-import java.net.URI;
-import java.util.*;
-
-import javax.imageio.*;
-
-import org.apache.juneau.*;
-import org.apache.juneau.annotation.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.parser.*;
-import org.apache.juneau.serializer.*;
-import org.apache.juneau.server.*;
-import org.apache.juneau.server.annotation.*;
-
-/**
- * Sample resource that allows images to be uploaded and retrieved.
- */
-@RestResource(
-	path="/photos",
-	messages="nls/PhotosResource",
-	properties={
-		@Property(name=HTMLDOC_title, value="Photo REST service"),
-		@Property(name=HTMLDOC_description, value="Use a tool like Poster to upload and retrieve jpeg and png images."),
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'$R{servletURI}?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.PhotosResource)'}"),
-		// Resolve all relative URIs so that they're relative to this servlet!
-		@Property(name=SERIALIZER_relativeUriBase, value="$R{servletURI}"),
-	}
-)
-public class PhotosResource extends Resource {
-	private static final long serialVersionUID = 1L;
-
-	// Our cache of photos
-	private Map<Integer,Photo> photos = new TreeMap<Integer,Photo>();
-
-	@Override /* Servlet */
-	public void init() {
-		try {
-			// Preload an image.
-			InputStream is = getClass().getResourceAsStream("averycutedog.jpg");
-			BufferedImage image = ImageIO.read(is);
-			Photo photo = new Photo(0, image);
-			photos.put(photo.id, photo);
-		} catch (IOException e) {
-			throw new RuntimeException(e);
-		}
-	}
-
-	/** Our bean class for storing photos */
-	public static class Photo {
-		int id;
-		BufferedImage image;
-
-		Photo(int id, BufferedImage image) {
-			this.id = id;
-			this.image = image;
-		}
-
-		public URI getURI() throws URISyntaxException {
-			return new URI(""+id);
-		}
-	}
-
-	/** GET request handler for list of all photos */
-	@RestMethod(name="GET", path="/")
-	public Collection<Photo> getAllPhotos() throws Exception {
-		return photos.values();
-	}
-
-	/** GET request handler for single photo */
-	@RestMethod(name="GET", path="/{id}", serializers=ImageSerializer.class)
-	public BufferedImage getPhoto(@Attr int id) throws Exception {
-		Photo p = photos.get(id);
-		if (p == null)
-			throw new RestException(SC_NOT_FOUND, "Photo not found");
-		return p.image;
-	}
-
-	/** PUT request handler */
-	@RestMethod(name="PUT", path="/{id}", parsers=ImageParser.class)
-	public String addPhoto(@Attr int id, @Content BufferedImage image) throws Exception {
-		photos.put(id, new Photo(id, image));
-		return "OK";
-	}
-
-	/** POST request handler */
-	@RestMethod(name="POST", path="/", parsers=ImageParser.class)
-	public Photo setPhoto(@Content BufferedImage image) throws Exception {
-		int id = photos.size();
-		Photo p = new Photo(id, image);
-		photos.put(id, p);
-		return p;
-	}
-
-	/** DELETE request handler */
-	@RestMethod(name="DELETE", path="/{id}")
-	public String deletePhoto(@Attr int id) throws Exception {
-		Photo p = photos.remove(id);
-		if (p == null)
-			throw new RestException(SC_NOT_FOUND, "Photo not found");
-		return "OK";
-	}
-
-	/** Serializer for converting images to byte streams */
-	@Produces({"image/png","image/jpeg"})
-	public static class ImageSerializer extends OutputStreamSerializer {
-		@Override /* Serializer */
-		protected void doSerialize(SerializerSession session, Object o) throws Exception {
-			RenderedImage image = (RenderedImage)o;
-			String mediaType = session.getProperties().getString("mediaType");
-			ImageIO.write(image, mediaType.substring(mediaType.indexOf('/')+1), session.getOutputStream());
-		}
-	}
-
-	/** Parser for converting byte streams to images */
-	@Consumes({"image/png","image/jpeg"})
-	public static class ImageParser extends InputStreamParser {
-		@Override /* Parser */
-		@SuppressWarnings("unchecked")
-		protected <T> T doParse(ParserSession session, ClassMeta<T> type) throws Exception {
-			return (T)ImageIO.read(session.getInputStream());
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/RequestEchoResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/RequestEchoResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/RequestEchoResource.java
deleted file mode 100755
index c940ed1..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/RequestEchoResource.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import javax.servlet.*;
-import javax.servlet.http.*;
-
-import org.apache.juneau.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.*;
-import org.apache.juneau.server.annotation.*;
-import org.apache.juneau.server.converters.*;
-import org.apache.juneau.transforms.*;
-
-/**
- * Sample REST resource for echoing HttpServletRequests back to the browser.
- */
-@RestResource(
-	path="/echo",
-	messages="nls/RequestEchoResource",
-	properties={
-		@Property(name=SERIALIZER_maxDepth, value="5"),
-		@Property(name=SERIALIZER_detectRecursions, value="true"),
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.RequestEchoResource)'}")
-	},
-	transforms={
-		// Interpret these as their parent classes, not subclasses
-		HttpServletRequest.class, HttpSession.class, ServletContext.class,
-		// Add a special filter for Enumerations
-		EnumerationTransform.class
-	}
-)
-public class RequestEchoResource extends Resource {
-	private static final long serialVersionUID = 1L;
-
-	/** GET request handler */
-	@RestMethod(name="GET", path="/*", converters={Traversable.class,Queryable.class})
-	public HttpServletRequest doGet(RestRequest req, @Properties ObjectMap properties) {
-		// Set the HtmlDocSerializer title programmatically.
-		// This sets the value for this request only.
-		properties.put(HTMLDOC_title, "Contents of HttpServletRequest object");
-
-		// Just echo the request back as the response.
-		return req;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/RootResources.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/RootResources.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/RootResources.java
deleted file mode 100755
index 9de8bf2..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/RootResources.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.microservice.resources.*;
-import org.apache.juneau.server.annotation.*;
-import org.apache.juneau.server.samples.addressbook.*;
-
-/**
- * Sample REST resource showing how to implement a "router" resource page.
- */
-@RestResource(
-	path="/",
-	messages="nls/RootResources",
-	properties={
-		@Property(name=HTMLDOC_links, value="{options:'$R{servletURI}?method=OPTIONS',source:'$R{servletURI}/source?classes=(org.apache.juneau.server.samples.RootResources)'}")
-	},
-	children={
-		HelloWorldResource.class,
-		MethodExampleResource.class,
-		RequestEchoResource.class,
-		TempDirResource.class,
-		AddressBookResource.class,
-		SampleRemoteableServlet.class,
-		PhotosResource.class,
-		AtomFeedResource.class,
-		JsonSchemaResource.class,
-		SqlQueryResource.class,
-		TumblrParserResource.class,
-		CodeFormatterResource.class,
-		UrlEncodedFormResource.class,
-		SourceResource.class,
-		ConfigResource.class,
-		LogsResource.class,
-		DockerRegistryResource.class,
-		ShutdownResource.class
-	}
-)
-public class RootResources extends ResourceGroup {
-	private static final long serialVersionUID = 1L;
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SampleRemoteableServlet.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SampleRemoteableServlet.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SampleRemoteableServlet.java
deleted file mode 100755
index 2f62f11..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SampleRemoteableServlet.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-import static org.apache.juneau.server.RestServletContext.*;
-
-import java.util.*;
-
-import org.apache.juneau.samples.addressbook.*;
-import org.apache.juneau.server.annotation.*;
-import org.apache.juneau.server.remoteable.*;
-
-/**
- * Class showing the functionality of the RemoteableServlet class.
- *
- * @author James Bognar (james.bognar@salesforce.com)
- */
-@SuppressWarnings("serial")
-@RestResource(
-	path="/remoteable",
-	messages="nls/SampleRemoteableServlet",
-	properties={
-		@Property(name=HTMLDOC_title, value="Remoteable Service Proxy API"),
-		@Property(name=HTMLDOC_description, value="Sample class showing how to use remoteable proxies.  The list below are exposed services that can be retrieved using RestClient.getProxyInterface(Class)."),
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'$R{servletURI}?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.SampleRemoteableServlet)'}"),
-		// Allow us to use method=POST from a browser.
-		@Property(name=REST_allowMethodParam, value="*")
-	},
-	stylesheet="styles/devops.css"
-)
-public class SampleRemoteableServlet extends RemoteableServlet {
-
-	AddressBook addressBook = new AddressBook();
-
-	@Override /* RemoteableServlet */
-	protected Map<Class<?>,Object> getServiceMap() throws Exception {
-		Map<Class<?>,Object> m = new LinkedHashMap<Class<?>,Object>();
-
-		// In this simplified example, we expose the same POJO service under two different interfaces.
-		// One is IAddressBook which only exposes methods defined on that interface, and
-		// the other is AddressBook itself which exposes all methods defined on the class itself.
-		m.put(IAddressBook.class, addressBook);
-		m.put(AddressBook.class, addressBook);
-		return m;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SourceResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SourceResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SourceResource.java
deleted file mode 100755
index 2ea08aa..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SourceResource.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import java.io.*;
-import java.util.*;
-
-import org.apache.juneau.html.annotation.*;
-import org.apache.juneau.internal.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.annotation.*;
-
-/**
- * Servlet for viewing source code on classes whose Java files are present on the classpath.
- * <p>
- * This class is by no means perfect but is pretty much the best you can get using only regular expression matching.
- *
- * @author James Bognar (james.bognar@salesforce.com)
- */
-@SuppressWarnings("serial")
-@RestResource(
-	path="/source",
-	messages="nls/SourceResource",
-	properties={
-		@Property(name=HTMLDOC_title, value="Source code viewer"),
-		@Property(name=HTMLDOC_cssImports, value="$R{servletURI}/htdocs/code-highlighting.css"),
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'$R{servletURI}?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.SourceResource)'}"),
-	}
-)
-public class SourceResource extends Resource {
-
-	/** View source on the specified classes. */
-	@RestMethod(name="GET", path="/")
-	public Object getSource(@Param("classes") String[] classes) throws Exception {
-		if (classes == null)
-			return "Specify classes using ?classes=(class1,class2,....) attribute";
-		List<Object> l = new LinkedList<Object>();
-		for (String c : classes) {
-			try {
-				l.add(new Source(Class.forName(c)));
-			} catch (ClassNotFoundException e) {
-				l.add("Class " + c + " not found");
-			} catch (Exception e) {
-				l.add(e.getLocalizedMessage());
-			}
-		}
-		return l;
-	}
-
-	/**
-	 * POJO that allows us to serialize HTML directly to the output.
-	 */
-	@Html(asPlainText=true)
-	public static class Source {
-		private Class<?> c;
-		private Source(Class<?> c) {
-			this.c = c;
-		}
-		@Override /* Object */
-		public String toString() {
-			String filename = c.getSimpleName() + ".java";
-			InputStream is = c.getResourceAsStream('/' + c.getPackage().getName().replace('.','/') + '/' + filename);
-			if (is == null)
-				return "Source for class " + c.getName() + " not found";
-			StringBuilder sb = new StringBuilder();
-			try {
-					sb.append("<h3>").append(c.getSimpleName()).append(".java").append("</h3>");
-					sb.append("<p class='bcode'>");
-					sb.append(highlight(IOUtils.read(is), "java"));
-					sb.append("</p>");
-			} catch (Exception e) {
-				return e.getLocalizedMessage();
-			}
-			return sb.toString();
-		}
-	}
-
-	public static String highlight(String code, String lang) throws Exception {
-		if (lang.equalsIgnoreCase("xml")) {
-			code = code.replaceAll("&", "&amp;");
-			code = code.replaceAll("<", "&lt;");
-			code = code.replaceAll(">", "&gt;");
-			code = code.replaceAll("(&lt;[^\\s&]+&gt;)", "<xt>$1</xt>");
-			code = code.replaceAll("(&lt;[^\\s&]+)(\\s)", "<xt>$1</xt>$2");
-			code = code.replaceAll("(['\"])(/?&gt;)", "$1<xt>$2</xt>");
-			code = code.replaceAll("([\\S]+)=", "<xa>$1</xa>=");
-			code = code.replaceAll("=(['\"][^'\"]+['\"])", "=<xs>$1</xs>");
-		} else if (lang.equalsIgnoreCase("java")) {
-			code = code.replaceAll("&", "&amp;");
-			code = code.replaceAll("<", "&lt;");
-			code = code.replaceAll(">", "&gt;");
-			code = code.replaceAll("(?s)(\\/\\*\\*.*?\\*\\/)", "<jd>$1</jd>"); // javadoc comments
-			code = code.replaceAll("(@\\w+)", "<ja>$1</ja>"); // annotations
-			code = code.replaceAll("(?s)(?!\\/)(\\/\\*.*?\\*\\/)", "<jc>$1</jc>"); // C style comments
-			code = code.replaceAll("(?m)(\\/\\/.*)", "<jc>$1</jc>"); // C++ style comments
-			code = code.replaceAll("(?m)('[^'\n]*'|\"[^\"\n]*\")", "<js>$1</js>"); // quotes
-			code = code.replaceAll("(?<!@)(import|package|boolean|byte|char|double|float|final|static|transient|synchronized|private|protected|public|int|long|short|abstract|class|interface|extends|implements|null|true|false|void|break|case|catch|continue|default|do|else|finally|for|goto|if|instanceof|native|new|return|super|switch|this|threadsafe|throws|throw|try|while)(?=\\W)", "<jk>$1</jk>"); // quotes
-			code = code.replaceAll("<\\/jk>(\\s+)<jk>", "$1"); // quotes
-		}
-		return code;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SqlQueryResource.html
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SqlQueryResource.html b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SqlQueryResource.html
deleted file mode 100755
index 4235d94..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SqlQueryResource.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE HTML>
-<html>
-<head>
-	<style type='text/css'>
-		@import '$R{servletURI}/style.css';
-	</style>
-	<script>
-		// Quick and dirty function to allow tabs in textarea.
-		function checkTab(e) {
-		    if (e.keyCode == 9) {
-			    var t = e.target;
-			    var ss = t.selectionStart, se = t.selectionEnd;
-	            t.value = t.value.slice(0,ss).concat('\t').concat(t.value.slice(ss,t.value.length));
-		        e.preventDefault();
-		    }
-		}	
-		// Load results from IFrame into this document.
-		function loadResults(b) {
-			var doc = b.contentDocument || b.contentWindow.document;
-			var data = doc.getElementById('data') || doc.getElementsByTagName('body')[0];
-			document.getElementById('results').innerHTML = data.innerHTML;
-		}
-	</script>
-</head>
-<body>
-	<h3 class='title'>SQL Query API</h3>
-	<div class='data'>
-		<form action='sqlQuery' method='POST' target='buf'>
-			<table>
-				<tr>
-					<th>Position (1-10000):</th>
-					<td><input name='pos' type='number' value='1'></td>
-					<th>Limit (1-10000):</th>
-					<td><input name='limit' type='number' value='100'></td>
-					<td><button type='submit'>Submit</button><button type='reset'>Reset</button></td>
-				</tr>
-				<tr>
-					<td colspan="5">
-						<textarea name='sql' style='width:100%;height:200px;font-family:Courier;font-size:9pt;' onkeydown='checkTab(event)'></textarea>
-					</td>	
-				</tr>
-			</table>			 
-		</form>
-		<br>
-		<div id='results'>
-		</div>
-	</div>
-	<iframe name='buf' style='display:none' onload="parent.loadResults(this)"></iframe>
-</body>
-</html>
-

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SqlQueryResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SqlQueryResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SqlQueryResource.java
deleted file mode 100755
index 586a233..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/SqlQueryResource.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static javax.servlet.http.HttpServletResponse.*;
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import java.io.*;
-import java.sql.*;
-import java.util.*;
-
-import org.apache.juneau.dto.*;
-import org.apache.juneau.ini.*;
-import org.apache.juneau.internal.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.*;
-import org.apache.juneau.server.annotation.*;
-
-/**
- * Sample resource that shows how Juneau can serialize ResultSets.
- */
-@RestResource(
-	path="/sqlQuery",
-	messages="nls/SqlQueryResource",
-	properties={
-		@Property(name=HTMLDOC_title, value="SQL query service"),
-		@Property(name=HTMLDOC_description, value="Executes queries against the local derby '$C{SqlQueryResource/connectionUrl}' database"),
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'$R{servletURI}?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.SqlQueryResource)'}"),
-	}
-)
-public class SqlQueryResource extends Resource {
-	private static final long serialVersionUID = 1L;
-
-	private ConfigFile cf = getConfig();
-
-	private String driver = cf.getString("SqlQueryResource/driver");
-	private String connectionUrl = cf.getString("SqlQueryResource/connectionUrl");
-	private boolean
-		allowUpdates = cf.getBoolean("SqlQueryResource/allowUpdates", false),
-		allowTempUpdates = cf.getBoolean("SqlQueryResource/allowTempUpdates", false),
-		includeRowNums = cf.getBoolean("SqlQueryResource/includeRowNums", false);
-
-	@Override /* Servlet */
-	public void init() {
-		try {
-			Class.forName(driver).newInstance();
-		} catch (Exception e) {
-			throw new RuntimeException(e);
-		}
-	}
-
-	/** GET request handler - Display the query entry page. */
-	@RestMethod(name="GET", path="/")
-	public ReaderResource doGet(RestRequest req) throws IOException {
-		return req.getReaderResource("SqlQueryResource.html", true);
-	}
-
-	/** POST request handler - Execute the query. */
-	@RestMethod(name="POST", path="/")
-	public List<Object> doPost(@Content PostInput in) throws Exception {
-
-		List<Object> results = new LinkedList<Object>();
-
-		// Don't try to submit empty input.
-		if (StringUtils.isEmpty(in.sql))
-			return results;
-
-		if (in.pos < 1 || in.pos > 10000)
-			throw new RestException(SC_BAD_REQUEST, "Invalid value for position.  Must be between 1-10000");
-		if (in.limit < 1 || in.limit > 10000)
-			throw new RestException(SC_BAD_REQUEST, "Invalid value for limit.  Must be between 1-10000");
-
-		// Create a connection and statement.
-		// If these fais, let the exception filter up as a 500 error.
-		Connection c = DriverManager.getConnection(connectionUrl);
-		c.setAutoCommit(false);
-		Statement st = c.createStatement();
-		String sql = null;
-
-		try {
-			for (String s : in.sql.split(";")) {
-				sql = s.trim();
-				if (! sql.isEmpty()) {
-					Object o = null;
-					if (allowUpdates || (allowTempUpdates && ! sql.matches("(?:i)commit.*"))) {
-						if (st.execute(sql)) {
-							ResultSet rs = st.getResultSet();
-							o = new ResultSetList(rs, in.pos, in.limit, includeRowNums);
-						} else {
-							o = st.getUpdateCount();
-						}
-					} else {
-						ResultSet rs = st.executeQuery(sql);
-						o = new ResultSetList(rs, in.pos, in.limit, includeRowNums);
-					}
-					results.add(o);
-				}
-			}
-			if (allowUpdates)
-				c.commit();
-			else if (allowTempUpdates)
-				c.rollback();
-		} catch (SQLException e) {
-			c.rollback();
-			throw new RestException(SC_BAD_REQUEST, "Invalid query:  {0}", sql).initCause(e);
-		} finally {
-			c.close();
-		}
-
-		return results;
-	}
-
-	/** The parsed form post */
-	public static class PostInput {
-		public String sql;
-		public int pos = 1, limit = 100;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TempDirResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TempDirResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TempDirResource.java
deleted file mode 100755
index fc99d0b..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TempDirResource.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import java.io.*;
-
-import org.apache.commons.fileupload.*;
-import org.apache.commons.fileupload.servlet.*;
-import org.apache.juneau.server.*;
-import org.apache.juneau.server.annotation.*;
-import org.apache.juneau.utils.*;
-
-/**
- * Sample resource that extends {@link DirectoryResource} to open up the temp directory as a REST resource.
- */
-@RestResource(
-	path="/tempDir",
-	messages="nls/TempDirResource",
-	properties={
-		@Property(name="rootDir", value="$S{java.io.tmpdir}"),
-		@Property(name="allowViews", value="true"),
-		@Property(name="allowDeletes", value="true"),
-		@Property(name="allowPuts", value="false"),
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'$R{servletURI}?method=OPTIONS',upload:'upload',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.TempDirResource,org.apache.juneau.server.samples.DirectoryResource)'}"),
-	},
-	stylesheet="styles/devops.css"
-)
-public class TempDirResource extends DirectoryResource {
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * [GET /upload] - Display the form entry page for uploading a file to the temp directory.
-	 */
-	@RestMethod(name="GET", path="/upload")
-	public ReaderResource getUploadPage(RestRequest req) throws IOException {
-		return req.getReaderResource("TempDirUploadPage.html", true);
-	}
-
-	/**
-	 * [POST /upload] - Upload a file as a multipart form post.
-	 * Shows how to use the Apache Commons ServletFileUpload class for handling multi-part form posts.
-	 */
-	@RestMethod(name="POST", path="/upload", matchers=TempDirResource.MultipartFormDataMatcher.class)
-	public Redirect uploadFile(RestRequest req) throws Exception {
-		ServletFileUpload upload = new ServletFileUpload();
-		FileItemIterator iter = upload.getItemIterator(req);
-		while (iter.hasNext()) {
-			FileItemStream item = iter.next();
-			if (item.getFieldName().equals("contents")) { //$NON-NLS-1$
-				File f = new File(getRootDir(), item.getName());
-				IOPipe.create(item.openStream(), new FileOutputStream(f)).closeOut().run();
-			}
-		}
-		return new Redirect(); // Redirect to the servlet root.
-	}
-
-	/** Causes a 404 if POST isn't multipart/form-data */
-	public static class MultipartFormDataMatcher extends RestMatcher {
-		@Override /* RestMatcher */
-		public boolean matches(RestRequest req) {
-			String contentType = req.getContentType();
-			return contentType != null && contentType.startsWith("multipart/form-data"); //$NON-NLS-1$
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TempDirUploadPage.html
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TempDirUploadPage.html b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TempDirUploadPage.html
deleted file mode 100755
index 6410bdf..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TempDirUploadPage.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML>
-<!--
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- *
- ***************************************************************************************************************************/
- -->
-<html>
-<head>
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-	<style type='text/css'>
-		@import '$R{servletURI}/style.css';
-	</style>
-</head>
-<body>
-	<h3 class='title'>$R{servletLabel}</h3>
-	<h5 class="description">$R{servletDescription}</h5>
-	<div class='data'>
-		<form id='form' action='$R{servletURI}/upload' method='POST' target='buff' enctype="multipart/form-data">
-		<input name="contents" type="file"><button type="submit">Submit</button>
-	</form>
-	</div>
-</body>
-</html>
-

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TumblrParserResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TumblrParserResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TumblrParserResource.java
deleted file mode 100755
index 414a164..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/TumblrParserResource.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import static org.apache.juneau.html.HtmlDocSerializerContext.*;
-
-import java.lang.Object;
-
-import org.apache.juneau.*;
-import org.apache.juneau.client.*;
-import org.apache.juneau.dto.Link;
-import org.apache.juneau.html.dto.*;
-import org.apache.juneau.json.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.annotation.*;
-
-@RestResource(
-	path="/tumblrParser",
-	messages="nls/TumblrParserResource",
-	properties={
-		@Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'?method=OPTIONS',source:'$R{servletParentURI}/source?classes=(org.apache.juneau.server.samples.TumblrParserResource)'}"),
-		@Property(name=HTMLDOC_title, value="Tumblr parser service"),
-		@Property(name=HTMLDOC_description, value="Specify a URL to a Tumblr blog and parse the results.")
-	}
-)
-public class TumblrParserResource extends Resource {
-	private static final long serialVersionUID = 1L;
-
-	@RestMethod(name="GET", path="/")
-	public String getInstructions() throws Exception {
-		return "Append the Tumblr blog name to the URL above (e.g. /juneau/sample/tumblrParser/mytumblrblog)";
-	}
-
-	@RestMethod(name="GET", path="/{blogName}")
-	public ObjectList parseBlog(@Attr String blogName) throws Exception {
-		ObjectList l = new ObjectList();
-		RestClient rc = new RestClient(JsonSerializer.class, JsonParser.class);
-		try {
-			String site = "http://" + blogName + ".tumblr.com/api/read/json";
-			ObjectMap m = rc.doGet(site).getResponse(ObjectMap.class);
-			int postsTotal = m.getInt("posts-total");
-			for (int i = 0; i < postsTotal; i += 20) {
-				m = rc.doGet(site + "?start=" + i + "&num=20&filter=text").getResponse(ObjectMap.class);
-				ObjectList ol = m.getObjectList("posts");
-				for (int j = 0; j < ol.size(); j++) {
-					ObjectMap om = ol.getObjectMap(j);
-					String type = om.getString("type");
-					Entry e = new Entry();
-					e.date = om.getString("date");
-					if (type.equals("link"))
-						e.entry = new Link(om.getString("link-text"), om.getString("link-url"));
-					else if (type.equals("audio"))
-						e.entry = new ObjectMap().append("type","audio").append("audio-caption", om.getString("audio-caption"));
-					else if (type.equals("video"))
-						e.entry = new ObjectMap().append("type","video").append("video-caption", om.getString("video-caption"));
-					else if (type.equals("quote"))
-						e.entry = new ObjectMap().append("type","quote").append("quote-source", om.getString("quote-source")).append("quote-text", om.getString("quote-text"));
-					else if (type.equals("regular"))
-						e.entry = om.getString("regular-body");
-					else if (type.equals("photo"))
-						e.entry = new Img(om.getString("photo-url-250"));
-					else
-						e.entry = new ObjectMap().append("type", type);
-					l.add(e);
-				}
-			}
-		} finally {
-			rc.closeQuietly();
-		}
-		return l;
-	}
-
-	public static class Entry {
-		public String date;
-		public Object entry;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/UrlEncodedForm.html
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/UrlEncodedForm.html b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/UrlEncodedForm.html
deleted file mode 100755
index c530764..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/UrlEncodedForm.html
+++ /dev/null
@@ -1,62 +0,0 @@
-<!DOCTYPE HTML>
-<!--
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- *
- ***************************************************************************************************************************/
- -->
-<html>
-<head>
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-	<style type='text/css'>
-		@import '$R{servletURI}/style.css';
-	</style>
-	<script type="text/javascript">
-		// Load results from IFrame into this document.
-		function loadResults(buff) {
-			var doc = buff.contentDocument || buff.contentWindow.document;
-			var buffBody = doc.getElementById('data');
-			document.getElementById('results').innerHTML = buffBody.innerHTML;
-		}
-	</script>
-</head>
-<body>
-	<h3 class='title'>$R{servletLabel}</h3>
-	<h5 class="description">$R{servletDescription}</h5>
-	<div class='data'>
-		<form id='form' action='$R{servletURI}' method='POST' target='buff'>
-			<table>
-				<tr>
-					<th>$L{aString}</th>
-					<td><input name="aString" type="text"></td>
-				</tr>
-				<tr>
-					<th>$L{aNumber}</th>
-					<td><input name="aNumber" type="number"></td>
-				</tr>
-				<tr>
-					<th>$L{aDate}</th>
-					<td><input name="aDate" type="datetime"> (ISO8601, e.g. "<code>2001-07-04T15:30:45Z</code>")</td>
-				</tr>
-				<tr>
-					<td colspan='2' align='right'><button type="submit">$L{submit}</button></td>
-				</tr>
-			</table>
-		</form>
-		<br>
-		<div id='results'>
-		</div>
-	</div>
-	<iframe name='buff' style='display:none' onload="parent.loadResults(this)"></iframe>
-</body>
-</html>
-

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/2c3a7cb5/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/UrlEncodedFormResource.java
----------------------------------------------------------------------
diff --git a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/UrlEncodedFormResource.java b/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/UrlEncodedFormResource.java
deleted file mode 100755
index e30cb7a..0000000
--- a/com.ibm.team.juno.samples/src/main/java/org/apache/juneau/server/samples/UrlEncodedFormResource.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/***************************************************************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations under the License.
- ***************************************************************************************************************************/
-package org.apache.juneau.server.samples;
-
-import java.io.*;
-import java.util.*;
-
-import org.apache.juneau.annotation.*;
-import org.apache.juneau.microservice.*;
-import org.apache.juneau.server.*;
-import org.apache.juneau.server.annotation.*;
-import org.apache.juneau.transforms.*;
-
-/**
- * Sample REST resource for loading URL-Encoded form posts into POJOs.
- */
-@RestResource(
-	path="/urlEncodedForm",
-	messages="nls/UrlEncodedFormResource"
-)
-public class UrlEncodedFormResource extends Resource {
-	private static final long serialVersionUID = 1L;
-
-	/** GET request handler */
-	@RestMethod(name="GET", path="/")
-	public ReaderResource doGet(RestRequest req) throws IOException {
-		return req.getReaderResource("UrlEncodedForm.html", true);
-	}
-
-	/** POST request handler */
-	@RestMethod(name="POST", path="/")
-	public Object doPost(@Content FormInputBean input) throws Exception {
-		// Just mirror back the request
-		return input;
-	}
-
-	public static class FormInputBean {
-		public String aString;
-		public int aNumber;
-		@BeanProperty(transform=CalendarTransform.ISO8601DT.class)
-		public Calendar aDate;
-	}
-}