diff options
-rw-r--r-- | sca-java-2.x/trunk/modules/binding-rest-runtime/src/test/java/org/apache/tuscany/sca/binding/rest/TestBindingCacheImpl.java | 362 |
1 files changed, 159 insertions, 203 deletions
diff --git a/sca-java-2.x/trunk/modules/binding-rest-runtime/src/test/java/org/apache/tuscany/sca/binding/rest/TestBindingCacheImpl.java b/sca-java-2.x/trunk/modules/binding-rest-runtime/src/test/java/org/apache/tuscany/sca/binding/rest/TestBindingCacheImpl.java index 8c943c1370..5c5e4db8ed 100644 --- a/sca-java-2.x/trunk/modules/binding-rest-runtime/src/test/java/org/apache/tuscany/sca/binding/rest/TestBindingCacheImpl.java +++ b/sca-java-2.x/trunk/modules/binding-rest-runtime/src/test/java/org/apache/tuscany/sca/binding/rest/TestBindingCacheImpl.java @@ -36,208 +36,164 @@ import org.apache.tuscany.sca.common.http.HTTPCacheContext; */ public class TestBindingCacheImpl { - /** - * Implements the HTTP get method of the collection implementation. - * @param id - * @return - */ - public InputStream get(String id) { - return new ByteArrayInputStream( - ("<html><body><p>item=" + id + "</body></html>").getBytes()); - } - - /** - * Implements the HTTP conditional get method of the collection implementation. - * @param id - * @return - */ - public InputStream conditionalGet(String id, HTTPCacheContext cacheContext) - throws NotModifiedException, PreconditionFailedException { - - if (cacheContext != null) { - if (cacheContext.ifModifiedSince) { - if ((id.equals("1")) - && (0 > cacheContext.lastModifiedDate - .compareTo(new Date()))) - throw new NotModifiedException("item 1 was modified on " - + new Date()); - } - if (cacheContext.ifUnmodifiedSince) { - if ((id.equals("0")) - && (0 > cacheContext.lastModifiedDate - .compareTo(new Date()))) - throw new PreconditionFailedException( - "item 0 was modified on " + new Date(0)); - } - if (cacheContext.ifMatch) { - if (id.equals("1")) - throw new PreconditionFailedException( - "item 1 eTag does not match " - + cacheContext.getETag()); - } - if (cacheContext.ifNoneMatch) { - if (id.equals("0")) - throw new PreconditionFailedException( - "item 0 eTag matches " + cacheContext.getETag()); - } - } - return new ByteArrayInputStream( - ("<html><body><p>item=" + id + "</body></html>").getBytes()); - } - - /** - * Implements the HTTP delete method of the collection implementation. - * @param id - * @return - */ - public InputStream delete(String id) { - return new ByteArrayInputStream( - ("<html><body><p>deleted item=" + id + "</body></html>") - .getBytes()); - } - - /** - * Implements the HTTP conditional delete method of the collection implementation. - * @param id - * @return - */ - public InputStream conditionalDelete(String id, HTTPCacheContext cacheContext) - throws NotModifiedException, PreconditionFailedException { - - if (cacheContext != null) { - if (cacheContext.ifModifiedSince) { - if ((id.equals("1")) - && (0 > cacheContext.lastModifiedDate - .compareTo(new Date()))) - throw new NotModifiedException("item 1 was modified on " - + new Date()); - } - if (cacheContext.ifUnmodifiedSince) { - if ((id.equals("0")) - && (0 > cacheContext.lastModifiedDate - .compareTo(new Date()))) - throw new PreconditionFailedException( - "item 0 was modified on " + new Date(0)); - } - if (cacheContext.ifMatch) { - if (id.equals("1")) - throw new PreconditionFailedException( - "item 1 eTag does not match " - + cacheContext.getETag()); - } - if (cacheContext.ifNoneMatch) { - if (id.equals("0")) - throw new PreconditionFailedException( - "item 0 eTag matches " + cacheContext.getETag()); - } - } - return new ByteArrayInputStream( - ("<html><body><p>deleted item=" + id + "</body></html>") - .getBytes()); - } - - /** - * Implements the HTTP post method of the collection implementation. - * @param id - * @return - */ - public InputStream post() { - int id = (new java.util.Random()).nextInt(Integer.MAX_VALUE); - return new ByteArrayInputStream( - ("<html><body><p>posted item=" + id + "</body></html>") - .getBytes()); - } - - /** - * Implements the HTTP conditional post method of the collection implementation. - * @param id - * @return - */ - public HTTPCacheContext conditionalPost(HTTPCacheContext cacheContext) - throws NotModifiedException, PreconditionFailedException { - String id = "" + (new java.util.Random()).nextInt(Integer.MAX_VALUE); - - if (cacheContext != null) { - if (cacheContext.ifModifiedSince) { - if (0 >= cacheContext.lastModifiedDate.compareTo(new Date(0))) - throw new NotModifiedException("item was modified on " - + new Date()); - } - if (cacheContext.ifUnmodifiedSince) { - if ((0 >= cacheContext.lastModifiedDate.compareTo(new Date(0)))) - throw new PreconditionFailedException( - "item was modified on " + new Date(0)); - } - if (cacheContext.ifMatch) { - if (cacheContext.getETag().equalsIgnoreCase("ETagNoneMatch")) - throw new PreconditionFailedException( - "item eTag does not match " - + cacheContext.getETag()); - } - if (cacheContext.ifNoneMatch) { - if (cacheContext.getETag().equalsIgnoreCase("ETagMatch")) - throw new PreconditionFailedException("item eTag matches " - + cacheContext.getETag()); - } - } - - // Return the ETag and LastModfied fields by serialize to a byte array - HTTPCacheContext returnContext = new HTTPCacheContext(); - returnContext.setETag( "ETag" + (new java.util.Random()).nextInt(Integer.MAX_VALUE) ); - returnContext.setLastModified( new Date() ); - return returnContext; - } - - /** - * Implements the HTTP update/put method of the collection implementation. - * @param id - * @return - */ - public InputStream put(String id) { - return new ByteArrayInputStream( - ("<html><body><p>updated item=" + id + "</body></html>") - .getBytes()); - } - - /** - * Implements the HTTP conditional update/put method of the collection implementation. - * @param id - * @return - */ - public InputStream conditionalPut(String id, HTTPCacheContext cacheContext) - throws NotModifiedException, PreconditionFailedException { - - if (cacheContext != null) { - if (cacheContext.ifModifiedSince) { - if ((id.equals("1")) - && (0 > cacheContext.lastModifiedDate - .compareTo(new Date()))) - throw new NotModifiedException("item 1 was modified on " - + new Date()); - } - if (cacheContext.ifUnmodifiedSince) { - if ((id.equals("0")) - && (0 > cacheContext.lastModifiedDate - .compareTo(new Date()))) - throw new PreconditionFailedException( - "item 0 was modified on " + new Date(0)); - } - if (cacheContext.ifMatch) { - if (id.equals("1")) - throw new PreconditionFailedException( - "item 1 eTag does not match " - + cacheContext.getETag()); - } - if (cacheContext.ifNoneMatch) { - if (id.equals("0")) - throw new PreconditionFailedException( - "item 0 eTag matches " + cacheContext.getETag()); - } - } - - return new ByteArrayInputStream( - ("<html><body><p>updated item=" + id + "</body></html>") - .getBytes()); - } + /** + * Implements the HTTP get method of the collection implementation. + * @param id + * @return + */ + public InputStream get(String id) { + return new ByteArrayInputStream(("<html><body><p>item=" + id + "</body></html>").getBytes()); + } + + /** + * Implements the HTTP conditional get method of the collection implementation. + * @param id + * @return + */ + public InputStream conditionalGet(String id, HTTPCacheContext cacheContext) throws NotModifiedException, + PreconditionFailedException { + + if (cacheContext != null) { + if (cacheContext.ifModifiedSince) { + if ((id.equals("1")) && (0 > cacheContext.lastModifiedDate.compareTo(new Date()))) + throw new NotModifiedException("item 1 was modified on " + new Date()); + } + if (cacheContext.ifUnmodifiedSince) { + if ((id.equals("0")) && (0 > cacheContext.lastModifiedDate.compareTo(new Date()))) + throw new PreconditionFailedException("item 0 was modified on " + new Date(0)); + } + if (cacheContext.ifMatch) { + if (id.equals("1")) + throw new PreconditionFailedException("item 1 eTag does not match " + cacheContext.getETag()); + } + if (cacheContext.ifNoneMatch) { + if (id.equals("0")) + throw new PreconditionFailedException("item 0 eTag matches " + cacheContext.getETag()); + } + } + return new ByteArrayInputStream(("<html><body><p>item=" + id + "</body></html>").getBytes()); + } + + /** + * Implements the HTTP delete method of the collection implementation. + * @param id + * @return + */ + public InputStream delete(String id) { + return new ByteArrayInputStream(("<html><body><p>deleted item=" + id + "</body></html>").getBytes()); + } + + /** + * Implements the HTTP conditional delete method of the collection implementation. + * @param id + * @return + */ + public InputStream conditionalDelete(String id, HTTPCacheContext cacheContext) throws NotModifiedException, + PreconditionFailedException { + + if (cacheContext != null) { + if (cacheContext.ifModifiedSince) { + if ((id.equals("1")) && (0 > cacheContext.lastModifiedDate.compareTo(new Date()))) + throw new NotModifiedException("item 1 was modified on " + new Date()); + } + if (cacheContext.ifUnmodifiedSince) { + if ((id.equals("0")) && (0 > cacheContext.lastModifiedDate.compareTo(new Date()))) + throw new PreconditionFailedException("item 0 was modified on " + new Date(0)); + } + if (cacheContext.ifMatch) { + if (id.equals("1")) + throw new PreconditionFailedException("item 1 eTag does not match " + cacheContext.getETag()); + } + if (cacheContext.ifNoneMatch) { + if (id.equals("0")) + throw new PreconditionFailedException("item 0 eTag matches " + cacheContext.getETag()); + } + } + return new ByteArrayInputStream(("<html><body><p>deleted item=" + id + "</body></html>").getBytes()); + } + + /** + * Implements the HTTP post method of the collection implementation. + * @param id + * @return + */ + public InputStream post() { + int id = (new java.util.Random()).nextInt(Integer.MAX_VALUE); + return new ByteArrayInputStream(("<html><body><p>posted item=" + id + "</body></html>").getBytes()); + } + + /** + * Implements the HTTP conditional post method of the collection implementation. + * @param id + * @return + */ + public HTTPCacheContext conditionalPost(HTTPCacheContext cacheContext) throws NotModifiedException, + PreconditionFailedException { + String id = "" + (new java.util.Random()).nextInt(Integer.MAX_VALUE); + + if (cacheContext != null) { + if (cacheContext.ifModifiedSince) { + if (0 >= cacheContext.lastModifiedDate.compareTo(new Date(0))) + throw new NotModifiedException("item was modified on " + new Date()); + } + if (cacheContext.ifUnmodifiedSince) { + if ((0 >= cacheContext.lastModifiedDate.compareTo(new Date(0)))) + throw new PreconditionFailedException("item was modified on " + new Date(0)); + } + if (cacheContext.ifMatch) { + if (cacheContext.getETag().equalsIgnoreCase("ETagNoneMatch")) + throw new PreconditionFailedException("item eTag does not match " + cacheContext.getETag()); + } + if (cacheContext.ifNoneMatch) { + if (cacheContext.getETag().equalsIgnoreCase("ETagMatch")) + throw new PreconditionFailedException("item eTag matches " + cacheContext.getETag()); + } + } + + // Return the ETag and LastModfied fields by serialize to a byte array + HTTPCacheContext returnContext = new HTTPCacheContext(); + returnContext.setETag("ETag" + (new java.util.Random()).nextInt(Integer.MAX_VALUE)); + returnContext.setLastModified(new Date()); + return returnContext; + } + + /** + * Implements the HTTP update/put method of the collection implementation. + * @param id + * @return + */ + public InputStream put(String id) { + return new ByteArrayInputStream(("<html><body><p>updated item=" + id + "</body></html>").getBytes()); + } + + /** + * Implements the HTTP conditional update/put method of the collection implementation. + * @param id + * @return + */ + public InputStream conditionalPut(String id, HTTPCacheContext cacheContext) throws NotModifiedException, + PreconditionFailedException { + + if (cacheContext != null) { + if (cacheContext.ifModifiedSince) { + if ((id.equals("1")) && (0 > cacheContext.lastModifiedDate.compareTo(new Date()))) + throw new NotModifiedException("item 1 was modified on " + new Date()); + } + if (cacheContext.ifUnmodifiedSince) { + if ((id.equals("0")) && (0 > cacheContext.lastModifiedDate.compareTo(new Date()))) + throw new PreconditionFailedException("item 0 was modified on " + new Date(0)); + } + if (cacheContext.ifMatch) { + if (id.equals("1")) + throw new PreconditionFailedException("item 1 eTag does not match " + cacheContext.getETag()); + } + if (cacheContext.ifNoneMatch) { + if (id.equals("0")) + throw new PreconditionFailedException("item 0 eTag matches " + cacheContext.getETag()); + } + } + + return new ByteArrayInputStream(("<html><body><p>updated item=" + id + "</body></html>").getBytes()); + } } |