From bb99a20ade97963b6086f834e70ed4a4c5627873 Mon Sep 17 00:00:00 2001 From: garrettjonesgoogle Date: Fri, 9 Dec 2016 10:08:58 -0800 Subject: [PATCH 1/5] Update version to 0.8.1-SNAPSHOT (#1467) Also, update versions in README to 0.8.0 --- README.md | 6 +++--- google-cloud-bigquery/README.md | 6 +++--- google-cloud-bigquery/pom.xml | 2 +- google-cloud-compute/README.md | 6 +++--- google-cloud-compute/pom.xml | 2 +- google-cloud-contrib/README.md | 6 +++--- google-cloud-contrib/google-cloud-nio-examples/pom.xml | 2 +- google-cloud-contrib/google-cloud-nio/README.md | 6 +++--- google-cloud-contrib/google-cloud-nio/pom.xml | 2 +- google-cloud-contrib/pom.xml | 2 +- google-cloud-core/README.md | 6 +++--- google-cloud-core/pom.xml | 2 +- google-cloud-datastore/README.md | 6 +++--- google-cloud-datastore/pom.xml | 2 +- google-cloud-dns/README.md | 6 +++--- google-cloud-dns/pom.xml | 2 +- google-cloud-errorreporting/pom.xml | 2 +- google-cloud-examples/README.md | 6 +++--- google-cloud-examples/pom.xml | 2 +- google-cloud-language/pom.xml | 2 +- google-cloud-logging/README.md | 6 +++--- google-cloud-logging/pom.xml | 2 +- google-cloud-monitoring/pom.xml | 2 +- google-cloud-pubsub/README.md | 6 +++--- google-cloud-pubsub/pom.xml | 2 +- google-cloud-resourcemanager/README.md | 6 +++--- google-cloud-resourcemanager/pom.xml | 2 +- google-cloud-speech/pom.xml | 2 +- google-cloud-storage/README.md | 6 +++--- google-cloud-storage/pom.xml | 2 +- google-cloud-trace/pom.xml | 2 +- google-cloud-translate/README.md | 6 +++--- google-cloud-translate/pom.xml | 2 +- google-cloud-vision/pom.xml | 2 +- google-cloud/README.md | 6 +++--- google-cloud/pom.xml | 2 +- pom.xml | 6 +++--- 37 files changed, 69 insertions(+), 69 deletions(-) diff --git a/README.md b/README.md index 190d900c044b..a648c11f5e32 100644 --- a/README.md +++ b/README.md @@ -43,16 +43,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud:0.7.0' +compile 'com.google.cloud:google-cloud:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud" % "0.8.0" ``` Example Applications diff --git a/google-cloud-bigquery/README.md b/google-cloud-bigquery/README.md index 19db3002288f..616494887e3b 100644 --- a/google-cloud-bigquery/README.md +++ b/google-cloud-bigquery/README.md @@ -22,16 +22,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-bigquery - 0.7.0 + 0.8.0-beta ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-bigquery:0.7.0' +compile 'com.google.cloud:google-cloud-bigquery:0.8.0-beta' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigquery" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-bigquery" % "0.8.0-beta" ``` Example Application diff --git a/google-cloud-bigquery/pom.xml b/google-cloud-bigquery/pom.xml index 542d7e9b734f..73383afce15f 100644 --- a/google-cloud-bigquery/pom.xml +++ b/google-cloud-bigquery/pom.xml @@ -12,7 +12,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-bigquery diff --git a/google-cloud-compute/README.md b/google-cloud-compute/README.md index 861bb539efbb..f7c18a0eafa9 100644 --- a/google-cloud-compute/README.md +++ b/google-cloud-compute/README.md @@ -22,16 +22,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-compute - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-compute:0.7.0' +compile 'com.google.cloud:google-cloud-compute:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-compute" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-compute" % "0.8.0" ``` Example Application diff --git a/google-cloud-compute/pom.xml b/google-cloud-compute/pom.xml index ec147782323e..a9203ad718ac 100644 --- a/google-cloud-compute/pom.xml +++ b/google-cloud-compute/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-compute diff --git a/google-cloud-contrib/README.md b/google-cloud-contrib/README.md index 2b27b0e06da6..8b7aa1323089 100644 --- a/google-cloud-contrib/README.md +++ b/google-cloud-contrib/README.md @@ -25,16 +25,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-contrib - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-contrib:0.7.0' +compile 'com.google.cloud:google-cloud-contrib:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-contrib" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-contrib" % "0.8.0" ``` ### google-cloud-nio-examples diff --git a/google-cloud-contrib/google-cloud-nio-examples/pom.xml b/google-cloud-contrib/google-cloud-nio-examples/pom.xml index 8b26a655f9d4..2b07df873af8 100644 --- a/google-cloud-contrib/google-cloud-nio-examples/pom.xml +++ b/google-cloud-contrib/google-cloud-nio-examples/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-contrib - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-nio-examples diff --git a/google-cloud-contrib/google-cloud-nio/README.md b/google-cloud-contrib/google-cloud-nio/README.md index e57e8a207ed7..7d7df3b722bc 100644 --- a/google-cloud-contrib/google-cloud-nio/README.md +++ b/google-cloud-contrib/google-cloud-nio/README.md @@ -26,16 +26,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-nio - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-nio:0.7.0' +compile 'com.google.cloud:google-cloud-nio:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-nio" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-nio" % "0.8.0" ``` Example Applications diff --git a/google-cloud-contrib/google-cloud-nio/pom.xml b/google-cloud-contrib/google-cloud-nio/pom.xml index 18a7cfd954bc..0646be3fe3da 100644 --- a/google-cloud-contrib/google-cloud-nio/pom.xml +++ b/google-cloud-contrib/google-cloud-nio/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-contrib - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-nio diff --git a/google-cloud-contrib/pom.xml b/google-cloud-contrib/pom.xml index 98fc4ddeb6e7..81f42e03b96d 100644 --- a/google-cloud-contrib/pom.xml +++ b/google-cloud-contrib/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-contrib diff --git a/google-cloud-core/README.md b/google-cloud-core/README.md index a248cc79f1a7..f711365e184b 100644 --- a/google-cloud-core/README.md +++ b/google-cloud-core/README.md @@ -19,16 +19,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-core - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-core:0.7.0' +compile 'com.google.cloud:google-cloud-core:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-core" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-core" % "0.8.0" ``` Troubleshooting diff --git a/google-cloud-core/pom.xml b/google-cloud-core/pom.xml index 34614cdf1b49..489d27cdf126 100644 --- a/google-cloud-core/pom.xml +++ b/google-cloud-core/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-core diff --git a/google-cloud-datastore/README.md b/google-cloud-datastore/README.md index 907d3c8f6e9b..db84b8db9ad1 100644 --- a/google-cloud-datastore/README.md +++ b/google-cloud-datastore/README.md @@ -22,16 +22,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-datastore - 0.7.0 + 0.8.0-beta ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-datastore:0.7.0' +compile 'com.google.cloud:google-cloud-datastore:0.8.0-beta' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-datastore" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-datastore" % "0.8.0-beta" ``` Example Application diff --git a/google-cloud-datastore/pom.xml b/google-cloud-datastore/pom.xml index d131a94b9e0a..100ad5edcfd9 100644 --- a/google-cloud-datastore/pom.xml +++ b/google-cloud-datastore/pom.xml @@ -12,7 +12,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-datastore diff --git a/google-cloud-dns/README.md b/google-cloud-dns/README.md index 1380e2466a0f..6ae180f976dd 100644 --- a/google-cloud-dns/README.md +++ b/google-cloud-dns/README.md @@ -22,16 +22,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-dns - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-dns:0.7.0' +compile 'com.google.cloud:google-cloud-dns:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-dns" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-dns" % "0.8.0" ``` Example Application diff --git a/google-cloud-dns/pom.xml b/google-cloud-dns/pom.xml index 771b82032136..a53283c9f453 100644 --- a/google-cloud-dns/pom.xml +++ b/google-cloud-dns/pom.xml @@ -13,7 +13,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-dns diff --git a/google-cloud-errorreporting/pom.xml b/google-cloud-errorreporting/pom.xml index 6d40d28c1915..dcff54850fc9 100644 --- a/google-cloud-errorreporting/pom.xml +++ b/google-cloud-errorreporting/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-errorreporting diff --git a/google-cloud-examples/README.md b/google-cloud-examples/README.md index 7e9b48378a17..5dbbffcb9f5e 100644 --- a/google-cloud-examples/README.md +++ b/google-cloud-examples/README.md @@ -19,16 +19,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-examples - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-examples:0.7.0' +compile 'com.google.cloud:google-cloud-examples:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-examples" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-examples" % "0.8.0" ``` To run examples from your command line: diff --git a/google-cloud-examples/pom.xml b/google-cloud-examples/pom.xml index d44a7e0eb39a..ffbb5f46df5f 100644 --- a/google-cloud-examples/pom.xml +++ b/google-cloud-examples/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-examples diff --git a/google-cloud-language/pom.xml b/google-cloud-language/pom.xml index ea19f65cd3f8..2d8c6ed025ad 100644 --- a/google-cloud-language/pom.xml +++ b/google-cloud-language/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-language diff --git a/google-cloud-logging/README.md b/google-cloud-logging/README.md index 6d0fed15e28e..e439890b3b2c 100644 --- a/google-cloud-logging/README.md +++ b/google-cloud-logging/README.md @@ -26,16 +26,16 @@ Add this to your pom.xml file com.google.cloud google-cloud-logging - 0.7.0 + 0.8.0-beta ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-logging:0.7.0' +compile 'com.google.cloud:google-cloud-logging:0.8.0-beta' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-logging" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-logging" % "0.8.0-beta" ``` Example Application diff --git a/google-cloud-logging/pom.xml b/google-cloud-logging/pom.xml index 2994b1c10e6d..9c5e73155481 100644 --- a/google-cloud-logging/pom.xml +++ b/google-cloud-logging/pom.xml @@ -12,7 +12,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-logging diff --git a/google-cloud-monitoring/pom.xml b/google-cloud-monitoring/pom.xml index 28e282e72f61..be83a529ed1b 100644 --- a/google-cloud-monitoring/pom.xml +++ b/google-cloud-monitoring/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-monitoring diff --git a/google-cloud-pubsub/README.md b/google-cloud-pubsub/README.md index 7d426b7d5f49..dc60848f7bed 100644 --- a/google-cloud-pubsub/README.md +++ b/google-cloud-pubsub/README.md @@ -26,16 +26,16 @@ Add this to your pom.xml file com.google.cloud google-cloud-pubsub - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-pubsub:0.7.0' +compile 'com.google.cloud:google-cloud-pubsub:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "0.8.0" ``` Example Application diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index 8b25ba971cc7..3d268c6771da 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-pubsub diff --git a/google-cloud-resourcemanager/README.md b/google-cloud-resourcemanager/README.md index f7398bf84ac1..e261feb07158 100644 --- a/google-cloud-resourcemanager/README.md +++ b/google-cloud-resourcemanager/README.md @@ -22,16 +22,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-resourcemanager - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-resourcemanager:0.7.0' +compile 'com.google.cloud:google-cloud-resourcemanager:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-resourcemanager" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-resourcemanager" % "0.8.0" ``` Example Application diff --git a/google-cloud-resourcemanager/pom.xml b/google-cloud-resourcemanager/pom.xml index 4d305d1d921b..cc0da8a2cb30 100644 --- a/google-cloud-resourcemanager/pom.xml +++ b/google-cloud-resourcemanager/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-resourcemanager diff --git a/google-cloud-speech/pom.xml b/google-cloud-speech/pom.xml index 6bd7d2695609..52fd58a97b58 100644 --- a/google-cloud-speech/pom.xml +++ b/google-cloud-speech/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-speech diff --git a/google-cloud-storage/README.md b/google-cloud-storage/README.md index 069c486f6f52..d415267d7a0e 100644 --- a/google-cloud-storage/README.md +++ b/google-cloud-storage/README.md @@ -22,16 +22,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-storage - 0.7.0 + 0.8.0-beta ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-storage:0.7.0' +compile 'com.google.cloud:google-cloud-storage:0.8.0-beta' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-storage" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-storage" % "0.8.0-beta" ``` Example Application diff --git a/google-cloud-storage/pom.xml b/google-cloud-storage/pom.xml index 2fd3f122e278..1b7c8e86be6b 100644 --- a/google-cloud-storage/pom.xml +++ b/google-cloud-storage/pom.xml @@ -12,7 +12,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-storage diff --git a/google-cloud-trace/pom.xml b/google-cloud-trace/pom.xml index 35b9a037fba6..f787b6c3924b 100644 --- a/google-cloud-trace/pom.xml +++ b/google-cloud-trace/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-trace diff --git a/google-cloud-translate/README.md b/google-cloud-translate/README.md index 8f9ac91d2f8e..5571619bb0c2 100644 --- a/google-cloud-translate/README.md +++ b/google-cloud-translate/README.md @@ -22,16 +22,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-translate - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-translate:0.7.0' +compile 'com.google.cloud:google-cloud-translate:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-translate" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud-translate" % "0.8.0" ``` Example Application diff --git a/google-cloud-translate/pom.xml b/google-cloud-translate/pom.xml index 67c3b18c7a08..8d645b08643e 100644 --- a/google-cloud-translate/pom.xml +++ b/google-cloud-translate/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-translate diff --git a/google-cloud-vision/pom.xml b/google-cloud-vision/pom.xml index 32cbd9b5c062..f14e51c7b2e8 100644 --- a/google-cloud-vision/pom.xml +++ b/google-cloud-vision/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT google-cloud-vision diff --git a/google-cloud/README.md b/google-cloud/README.md index f17c99715895..9da900cd8b2a 100644 --- a/google-cloud/README.md +++ b/google-cloud/README.md @@ -27,16 +27,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud - 0.7.0 + 0.8.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud:0.7.0' +compile 'com.google.cloud:google-cloud:0.8.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud" % "0.7.0" +libraryDependencies += "com.google.cloud" % "google-cloud" % "0.8.0" ``` Troubleshooting diff --git a/google-cloud/pom.xml b/google-cloud/pom.xml index edd11e504cd9..a162e2e61f7f 100644 --- a/google-cloud/pom.xml +++ b/google-cloud/pom.xml @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pom - 0.8.0 + 0.8.1-SNAPSHOT diff --git a/pom.xml b/pom.xml index ce2d365e9958..8534ae252605 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pom pom - 0.8.0 + 0.8.1-SNAPSHOT Google Cloud https://github.com/GoogleCloudPlatform/google-cloud-java @@ -92,8 +92,8 @@ github 0.6.0 1.0.1 - 0.8.0 - 0.8.0-beta + 0.8.1-SNAPSHOT + 0.8.1-beta-SNAPSHOT ${beta.version} google-cloud From b85e1cccc67f254cd7bcfe3d9bc5458a039482ff Mon Sep 17 00:00:00 2001 From: Tim Swast Date: Fri, 9 Dec 2016 11:05:28 -0800 Subject: [PATCH 2/5] Add link to Maven Central for maven-central badge. (#1468) Used to link to the image, which wasn't super useful. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a648c11f5e32..6d423b25be1f 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ Java idiomatic client for [Google Cloud Platform][cloud-platform] services. [![Build Status](https://travis-ci.org/GoogleCloudPlatform/google-cloud-java.svg?branch=master)](https://travis-ci.org/GoogleCloudPlatform/google-cloud-java) [![Coverage Status](https://coveralls.io/repos/GoogleCloudPlatform/google-cloud-java/badge.svg?branch=master)](https://coveralls.io/r/GoogleCloudPlatform/google-cloud-java?branch=master) -[![Maven](https://img.shields.io/maven-central/v/com.google.cloud/google-cloud.svg)]( https://img.shields.io/maven-central/v/com.google.cloud/google-cloud.svg) +[![Maven](https://img.shields.io/maven-central/v/com.google.cloud/google-cloud.svg)](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.google.cloud%22%20a%3A%22google-cloud%22) [![Codacy Badge](https://api.codacy.com/project/badge/grade/9da006ad7c3a4fe1abd142e77c003917)](https://www.codacy.com/app/mziccard/google-cloud-java) [![Dependency Status](https://www.versioneye.com/user/projects/56bd8ee72a29ed002d2b0969/badge.svg?style=flat)](https://www.versioneye.com/user/projects/56bd8ee72a29ed002d2b0969) From 9a308a209f083774c07926c535a54a31f8e054a3 Mon Sep 17 00:00:00 2001 From: Michael Darakananda Date: Mon, 12 Dec 2016 17:34:52 +1100 Subject: [PATCH 3/5] fix more races in pubsub tests Previously BlockingProcessStreamReader has a terminate() method, used to tell the Reader to stop reading from the emulator process. This causes an inter-process race. If the Reader stops before reading emulator's output, the emulator process will hang as it tries to write to stdout/stderr as there's no one to read from the other side of the pipe. Since there is no way to safely stop the Reader, this commit deletes the method and its associated test. Additionally, the timeout for LocalSystemTest is increased to 3 minutes, since the emulator, somehow, consistently takes just longer than a minute to shut down. --- .../com/google/cloud/testing/BaseEmulatorHelper.java | 8 ++++---- .../cloud/testing/BlockingProcessStreamReader.java | 8 +------- .../cloud/testing/BlockingProcessStreamReaderTest.java | 9 --------- .../java/com/google/cloud/pubsub/LocalSystemTest.java | 2 +- 4 files changed, 6 insertions(+), 21 deletions(-) diff --git a/google-cloud-core/src/main/java/com/google/cloud/testing/BaseEmulatorHelper.java b/google-cloud-core/src/main/java/com/google/cloud/testing/BaseEmulatorHelper.java index dee22e596c11..2b4276068d7b 100644 --- a/google-cloud-core/src/main/java/com/google/cloud/testing/BaseEmulatorHelper.java +++ b/google-cloud-core/src/main/java/com/google/cloud/testing/BaseEmulatorHelper.java @@ -114,15 +114,15 @@ protected final void startProcess(String blockUntilOutput) * and stop any possible thread listening for its output. */ protected final int waitForProcess(Duration timeout) throws IOException, InterruptedException, TimeoutException { - if (blockingProcessReader != null) { - blockingProcessReader.terminate(); - blockingProcessReader = null; - } if (activeRunner != null) { int exitCode = activeRunner.waitFor(timeout); activeRunner = null; return exitCode; } + if (blockingProcessReader != null) { + blockingProcessReader.join(); + blockingProcessReader = null; + } return 0; } diff --git a/google-cloud-core/src/main/java/com/google/cloud/testing/BlockingProcessStreamReader.java b/google-cloud-core/src/main/java/com/google/cloud/testing/BlockingProcessStreamReader.java index 0fa10dcacebb..f4e69b9b6e19 100644 --- a/google-cloud-core/src/main/java/com/google/cloud/testing/BlockingProcessStreamReader.java +++ b/google-cloud-core/src/main/java/com/google/cloud/testing/BlockingProcessStreamReader.java @@ -61,10 +61,6 @@ private BlockingProcessStreamReader(String emulator, InputStream stream, String } } - void terminate() throws IOException { - interrupt(); - } - @Override public void run() { String previousLine = ""; @@ -79,9 +75,7 @@ public void run() { processLogLine(previousLine, nextLine); } } catch (IOException e) { - if (!isInterrupted()) { - e.printStackTrace(System.err); - } + e.printStackTrace(System.err); } processLogLine(previousLine, firstNonNull(nextLine, "")); writeLog(); diff --git a/google-cloud-core/src/test/java/com/google/cloud/testing/BlockingProcessStreamReaderTest.java b/google-cloud-core/src/test/java/com/google/cloud/testing/BlockingProcessStreamReaderTest.java index 6dedcb55b680..1b22c9f3ff91 100644 --- a/google-cloud-core/src/test/java/com/google/cloud/testing/BlockingProcessStreamReaderTest.java +++ b/google-cloud-core/src/test/java/com/google/cloud/testing/BlockingProcessStreamReaderTest.java @@ -74,15 +74,6 @@ Multimap getLogs() { } } - @Test - public void testBlockUntil() throws IOException { - InputStream stream = new ByteArrayInputStream(OUTPUT.getBytes(Charsets.UTF_8)); - BlockingProcessStreamReader thread = - BlockingProcessStreamReader.start("emulator", stream, BLOCK_UNTIL, null); - thread.terminate(); - stream.close(); - } - @Test public void testForwardLogEntry() throws IOException, InterruptedException { TestLogger logger = new TestLogger(); diff --git a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/LocalSystemTest.java b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/LocalSystemTest.java index 3edb6342c0cb..aba64436933b 100644 --- a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/LocalSystemTest.java +++ b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/LocalSystemTest.java @@ -50,6 +50,6 @@ public static void startServer() throws IOException, InterruptedException { public static void stopServer() throws Exception { pubsub.close(); pubsubHelper.reset(); - pubsubHelper.stop(Duration.standardMinutes(1)); + pubsubHelper.stop(Duration.standardMinutes(3)); } } From fb6c5aed13deaf99e7e6f2b39eb804287c445eb9 Mon Sep 17 00:00:00 2001 From: Michael Darakananda Date: Mon, 12 Dec 2016 14:28:35 +1100 Subject: [PATCH 4/5] make pubsub high perf compile --- google-cloud-pubsub/pom.xml | 25 +- .../src/main/proto/google/pubsub/pubsub.proto | 498 ------------------ .../cloud/pubsub/AckDeadlineRenewerTest.java | 2 +- 3 files changed, 7 insertions(+), 518 deletions(-) delete mode 100644 google-cloud-pubsub/src/main/proto/google/pubsub/pubsub.proto diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index 3fe6ba2c6fb5..1cb384f5a3dd 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -30,7 +30,7 @@ com.google.api.grpc grpc-google-cloud-pubsub-v1 - 0.1.3 + 0.1.5 io.grpc @@ -58,6 +58,11 @@ guava 20.0 + + com.google.errorprone + error_prone_core + 2.0.15 + joda-time joda-time @@ -125,24 +130,6 @@ - - org.xolstice.maven.plugins - protobuf-maven-plugin - 0.5.0 - - com.google.protobuf:protoc:3.0.2:exe:${os.detected.classifier} - grpc-java - io.grpc:protoc-gen-grpc-java:${grpc.version}:exe:${os.detected.classifier} - - - - - compile - compile-custom - - - - org.codehaus.mojo build-helper-maven-plugin diff --git a/google-cloud-pubsub/src/main/proto/google/pubsub/pubsub.proto b/google-cloud-pubsub/src/main/proto/google/pubsub/pubsub.proto deleted file mode 100644 index 5fe942341d08..000000000000 --- a/google-cloud-pubsub/src/main/proto/google/pubsub/pubsub.proto +++ /dev/null @@ -1,498 +0,0 @@ -// Copyright 2016 Google Inc. -// -// Licensed 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. - -syntax = "proto3"; - -package google.pubsub.v1; - -import "google/api/annotations.proto"; -import "google/protobuf/empty.proto"; -import "google/protobuf/timestamp.proto"; - -option cc_enable_arenas = true; -option java_multiple_files = true; -option java_outer_classname = "PubsubProto"; -option java_package = "com.google.pubsub.v1"; - - -// The service that an application uses to manipulate subscriptions and to -// consume messages from a subscription via the `Pull` method. -service Subscriber { - // Creates a subscription to a given topic. - // If the subscription already exists, returns `ALREADY_EXISTS`. - // If the corresponding topic doesn't exist, returns `NOT_FOUND`. - // - // If the name is not provided in the request, the server will assign a random - // name for this subscription on the same project as the topic. Note that - // for REST API requests, you must specify a name. - rpc CreateSubscription(Subscription) returns (Subscription) { - option (google.api.http) = { put: "/v1/{name=projects/*/subscriptions/*}" body: "*" }; - } - - // Gets the configuration details of a subscription. - rpc GetSubscription(GetSubscriptionRequest) returns (Subscription) { - option (google.api.http) = { get: "/v1/{subscription=projects/*/subscriptions/*}" }; - } - - // Lists matching subscriptions. - rpc ListSubscriptions(ListSubscriptionsRequest) returns (ListSubscriptionsResponse) { - option (google.api.http) = { get: "/v1/{project=projects/*}/subscriptions" }; - } - - // Deletes an existing subscription. All pending messages in the subscription - // are immediately dropped. Calls to `Pull` after deletion will return - // `NOT_FOUND`. After a subscription is deleted, a new one may be created with - // the same name, but the new one has no association with the old - // subscription, or its topic unless the same topic is specified. - rpc DeleteSubscription(DeleteSubscriptionRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { delete: "/v1/{subscription=projects/*/subscriptions/*}" }; - } - - // Modifies the ack deadline for a specific message. This method is useful - // to indicate that more time is needed to process a message by the - // subscriber, or to make the message available for redelivery if the - // processing was interrupted. Note that this does not modify the - // subscription-level `ackDeadlineSeconds` used for subsequent messages. - rpc ModifyAckDeadline(ModifyAckDeadlineRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { post: "/v1/{subscription=projects/*/subscriptions/*}:modifyAckDeadline" body: "*" }; - } - - // Acknowledges the messages associated with the `ack_ids` in the - // `AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages - // from the subscription. - // - // Acknowledging a message whose ack deadline has expired may succeed, - // but such a message may be redelivered later. Acknowledging a message more - // than once will not result in an error. - rpc Acknowledge(AcknowledgeRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { post: "/v1/{subscription=projects/*/subscriptions/*}:acknowledge" body: "*" }; - } - - // Pulls messages from the server. Returns an empty list if there are no - // messages available in the backlog. The server may return `UNAVAILABLE` if - // there are too many concurrent pull requests pending for the given - // subscription. - rpc Pull(PullRequest) returns (PullResponse) { - option (google.api.http) = { post: "/v1/{subscription=projects/*/subscriptions/*}:pull" body: "*" }; - } - - // Modifies the `PushConfig` for a specified subscription. - // - // This may be used to change a push subscription to a pull one (signified by - // an empty `PushConfig`) or vice versa, or change the endpoint URL and other - // attributes of a push subscription. Messages will accumulate for delivery - // continuously through the call regardless of changes to the `PushConfig`. - rpc ModifyPushConfig(ModifyPushConfigRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { post: "/v1/{subscription=projects/*/subscriptions/*}:modifyPushConfig" body: "*" }; - } - - // Establishes a stream with the server, which sends messages down to the - // client. The client streams acknowledgements and ack deadline modifications - // back to the server. The server will close the stream and return the status - // on any error. The server may close the stream with status `OK` to reassign - // server-side resources, in which case, the client should re-establish the - // stream. `UNAVAILABLE` may also be returned in the case of a transient error - // (e.g., a server restart). These should also be retried by the client. Flow - // control can be achieved by configuring the underlying RPC channel. - rpc StreamingPull(stream StreamingPullRequest) - returns (stream StreamingPullResponse) { - } -} - -// The service that an application uses to manipulate topics, and to send -// messages to a topic. -service Publisher { - // Creates the given topic with the given name. - rpc CreateTopic(Topic) returns (Topic) { - option (google.api.http) = { put: "/v1/{name=projects/*/topics/*}" body: "*" }; - } - - // Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic - // does not exist. The message payload must not be empty; it must contain - // either a non-empty data field, or at least one attribute. - rpc Publish(PublishRequest) returns (PublishResponse) { - option (google.api.http) = { post: "/v1/{topic=projects/*/topics/*}:publish" body: "*" }; - } - - // Gets the configuration of a topic. - rpc GetTopic(GetTopicRequest) returns (Topic) { - option (google.api.http) = { get: "/v1/{topic=projects/*/topics/*}" }; - } - - // Lists matching topics. - rpc ListTopics(ListTopicsRequest) returns (ListTopicsResponse) { - option (google.api.http) = { get: "/v1/{project=projects/*}/topics" }; - } - - // Lists the name of the subscriptions for this topic. - rpc ListTopicSubscriptions(ListTopicSubscriptionsRequest) returns (ListTopicSubscriptionsResponse) { - option (google.api.http) = { get: "/v1/{topic=projects/*/topics/*}/subscriptions" }; - } - - // Deletes the topic with the given name. Returns `NOT_FOUND` if the topic - // does not exist. After a topic is deleted, a new topic may be created with - // the same name; this is an entirely new topic with none of the old - // configuration or subscriptions. Existing subscriptions to this topic are - // not deleted, but their `topic` field is set to `_deleted-topic_`. - rpc DeleteTopic(DeleteTopicRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { delete: "/v1/{topic=projects/*/topics/*}" }; - } -} - -// A topic resource. -message Topic { - // The name of the topic. It must have the format - // `"projects/{project}/topics/{topic}"`. `{topic}` must start with a letter, - // and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), - // underscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent - // signs (`%`). It must be between 3 and 255 characters in length, and it - // must not start with `"goog"`. - string name = 1; -} - -// A message data and its attributes. The message payload must not be empty; -// it must contain either a non-empty data field, or at least one attribute. -message PubsubMessage { - // The message payload. For JSON requests, the value of this field must be - // [base64-encoded](https://tools.ietf.org/html/rfc4648). - bytes data = 1; - - // Optional attributes for this message. - map attributes = 2; - - // ID of this message, assigned by the server when the message is published. - // Guaranteed to be unique within the topic. This value may be read by a - // subscriber that receives a `PubsubMessage` via a `Pull` call or a push - // delivery. It must not be populated by the publisher in a `Publish` call. - string message_id = 3; - - // The time at which the message was published, populated by the server when - // it receives the `Publish` call. It must not be populated by the - // publisher in a `Publish` call. - google.protobuf.Timestamp publish_time = 4; -} - -// Request for the GetTopic method. -message GetTopicRequest { - // The name of the topic to get. - string topic = 1; -} - -// Request for the Publish method. -message PublishRequest { - // The messages in the request will be published on this topic. - string topic = 1; - - // The messages to publish. - repeated PubsubMessage messages = 2; -} - -// Response for the `Publish` method. -message PublishResponse { - // The server-assigned ID of each published message, in the same order as - // the messages in the request. IDs are guaranteed to be unique within - // the topic. - repeated string message_ids = 1; -} - -// Request for the `ListTopics` method. -message ListTopicsRequest { - // The name of the cloud project that topics belong to. - string project = 1; - - // Maximum number of topics to return. - int32 page_size = 2; - - // The value returned by the last `ListTopicsResponse`; indicates that this is - // a continuation of a prior `ListTopics` call, and that the system should - // return the next page of data. - string page_token = 3; -} - -// Response for the `ListTopics` method. -message ListTopicsResponse { - // The resulting topics. - repeated Topic topics = 1; - - // If not empty, indicates that there may be more topics that match the - // request; this value should be passed in a new `ListTopicsRequest`. - string next_page_token = 2; -} - -// Request for the `ListTopicSubscriptions` method. -message ListTopicSubscriptionsRequest { - // The name of the topic that subscriptions are attached to. - string topic = 1; - - // Maximum number of subscription names to return. - int32 page_size = 2; - - // The value returned by the last `ListTopicSubscriptionsResponse`; indicates - // that this is a continuation of a prior `ListTopicSubscriptions` call, and - // that the system should return the next page of data. - string page_token = 3; -} - -// Response for the `ListTopicSubscriptions` method. -message ListTopicSubscriptionsResponse { - // The names of the subscriptions that match the request. - repeated string subscriptions = 1; - - // If not empty, indicates that there may be more subscriptions that match - // the request; this value should be passed in a new - // `ListTopicSubscriptionsRequest` to get more subscriptions. - string next_page_token = 2; -} - -// Request for the `DeleteTopic` method. -message DeleteTopicRequest { - // Name of the topic to delete. - string topic = 1; -} - -// A subscription resource. -message Subscription { - // The name of the subscription. It must have the format - // `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must - // start with a letter, and contain only letters (`[A-Za-z]`), numbers - // (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`), - // plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters - // in length, and it must not start with `"goog"`. - string name = 1; - - // The name of the topic from which this subscription is receiving messages. - // The value of this field will be `_deleted-topic_` if the topic has been - // deleted. - string topic = 2; - - // If push delivery is used with this subscription, this field is - // used to configure it. An empty `pushConfig` signifies that the subscriber - // will pull and ack messages using API methods. - PushConfig push_config = 4; - - // This value is the maximum time after a subscriber receives a message - // before the subscriber should acknowledge the message. After message - // delivery but before the ack deadline expires and before the message is - // acknowledged, it is an outstanding message and will not be delivered - // again during that time (on a best-effort basis). - // - // For pull subscriptions, this value is used as the initial value for the ack - // deadline. To override this value for a given message, call - // `ModifyAckDeadline` with the corresponding `ack_id` if using - // pull. - // The maximum custom deadline you can specify is 600 seconds (10 minutes). - // - // For push delivery, this value is also used to set the request timeout for - // the call to the push endpoint. - // - // If the subscriber never acknowledges the message, the Pub/Sub - // system will eventually redeliver the message. - // - // If this parameter is 0, a default value of 10 seconds is used. - int32 ack_deadline_seconds = 5; -} - -// Configuration for a push delivery endpoint. -message PushConfig { - // A URL locating the endpoint to which messages should be pushed. - // For example, a Webhook endpoint might use "https://example.com/push". - string push_endpoint = 1; - - // Endpoint configuration attributes. - // - // Every endpoint has a set of API supported attributes that can be used to - // control different aspects of the message delivery. - // - // The currently supported attribute is `x-goog-version`, which you can - // use to change the format of the push message. This attribute - // indicates the version of the data expected by the endpoint. This - // controls the shape of the envelope (i.e. its fields and metadata). - // The endpoint version is based on the version of the Pub/Sub - // API. - // - // If not present during the `CreateSubscription` call, it will default to - // the version of the API used to make such call. If not present during a - // `ModifyPushConfig` call, its value will not be changed. `GetSubscription` - // calls will always return a valid version, even if the subscription was - // created without this attribute. - // - // The possible values for this attribute are: - // - // * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API. - // * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API. - map attributes = 2; -} - -// A message and its corresponding acknowledgment ID. -message ReceivedMessage { - // This ID can be used to acknowledge the received message. - string ack_id = 1; - - // The message. - PubsubMessage message = 2; -} - -// Request for the GetSubscription method. -message GetSubscriptionRequest { - // The name of the subscription to get. - string subscription = 1; -} - -// Request for the `ListSubscriptions` method. -message ListSubscriptionsRequest { - // The name of the cloud project that subscriptions belong to. - string project = 1; - - // Maximum number of subscriptions to return. - int32 page_size = 2; - - // The value returned by the last `ListSubscriptionsResponse`; indicates that - // this is a continuation of a prior `ListSubscriptions` call, and that the - // system should return the next page of data. - string page_token = 3; -} - -// Response for the `ListSubscriptions` method. -message ListSubscriptionsResponse { - // The subscriptions that match the request. - repeated Subscription subscriptions = 1; - - // If not empty, indicates that there may be more subscriptions that match - // the request; this value should be passed in a new - // `ListSubscriptionsRequest` to get more subscriptions. - string next_page_token = 2; -} - -// Request for the DeleteSubscription method. -message DeleteSubscriptionRequest { - // The subscription to delete. - string subscription = 1; -} - -// Request for the ModifyPushConfig method. -message ModifyPushConfigRequest { - // The name of the subscription. - string subscription = 1; - - // The push configuration for future deliveries. - // - // An empty `pushConfig` indicates that the Pub/Sub system should - // stop pushing messages from the given subscription and allow - // messages to be pulled and acknowledged - effectively pausing - // the subscription if `Pull` is not called. - PushConfig push_config = 2; -} - -// Request for the `Pull` method. -message PullRequest { - // The subscription from which messages should be pulled. - string subscription = 1; - - // If this is specified as true the system will respond immediately even if - // it is not able to return a message in the `Pull` response. Otherwise the - // system is allowed to wait until at least one message is available rather - // than returning no messages. The client may cancel the request if it does - // not wish to wait any longer for the response. - bool return_immediately = 2; - - // The maximum number of messages returned for this request. The Pub/Sub - // system may return fewer than the number specified. - int32 max_messages = 3; -} - -// Response for the `Pull` method. -message PullResponse { - // Received Pub/Sub messages. The Pub/Sub system will return zero messages if - // there are no more available in the backlog. The Pub/Sub system may return - // fewer than the `maxMessages` requested even if there are more messages - // available in the backlog. - repeated ReceivedMessage received_messages = 1; -} - -// Request for the ModifyAckDeadline method. -message ModifyAckDeadlineRequest { - // The name of the subscription. - string subscription = 1; - - // List of acknowledgment IDs. - repeated string ack_ids = 4; - - // The new ack deadline with respect to the time this request was sent to - // the Pub/Sub system. Must be >= 0. For example, if the value is 10, the new - // ack deadline will expire 10 seconds after the `ModifyAckDeadline` call - // was made. Specifying zero may immediately make the message available for - // another pull request. - int32 ack_deadline_seconds = 3; -} - -// Request for the Acknowledge method. -message AcknowledgeRequest { - // The subscription whose message is being acknowledged. - string subscription = 1; - - // The acknowledgment ID for the messages being acknowledged that was returned - // by the Pub/Sub system in the `Pull` response. Must not be empty. - repeated string ack_ids = 2; -} - -// Request for the `StreamingPull` streaming RPC method. This request is used to -// establish the initial stream as well as to stream acknowledgements and ack -// deadline modifications from the client to the server. -message StreamingPullRequest { - // The subscription for which to initialize the new stream. This must be - // provided in the first request on the stream, and must not be set in - // subsequent requests from client to server. - // Format is `projects/{project}/subscriptions/{sub}`. - string subscription = 1; - - // List of acknowledgement IDs for acknowledging previously received messages - // (received on this stream or a different stream). If an ack ID has expired, - // the corresponding message may be redelivered later. Acknowledging a message - // more than once will not result in an error. If the acknowledgement ID is - // malformed, the stream will be aborted with status `INVALID_ARGUMENT`. - repeated string ack_ids = 2; - - // The list of new ack deadlines for the IDs listed in - // `modify_deadline_ack_ids`. The size of this list must be the same as the - // size of `modify_deadline_ack_ids`. If it differs the stream will be aborted - // with `INVALID_ARGUMENT`. Each element in this list is applied to the - // element in the same position in `modify_deadline_ack_ids`. The new ack - // deadline is with respect to the time this request was sent to the Pub/Sub - // system. Must be >= 0. For example, if the value is 10, the new ack deadline - // will expire 10 seconds after this request is received. If the value is 0, - // the message is immediately made available for another streaming or - // non-streaming pull request. If the value is < 0 (an error), the stream will - // be aborted with status `INVALID_ARGUMENT`. - repeated int32 modify_deadline_seconds = 3; - - // List of acknowledgement IDs whose deadline will be modified based on the - // corresponding element in `modify_deadlines`. This field can be used to - // indicate that more time is needed to process a message by the subscriber, - // or to make the message available for redelivery if the processing was - // interrupted. - repeated string modify_deadline_ack_ids = 4; - - // The ack deadline to use for the stream. This must be provided in the - // first request on the stream, but it can also be updated on subsequent - // requests from client to server. The minimum deadline you can specify is 10 - // seconds. The maximum deadline you can specify is 600 seconds (10 minutes). - int32 stream_ack_deadline_seconds = 5; -}; - -// Response for the `StreamingPull` method. This response is used to stream -// messages from the server to the client. -message StreamingPullResponse { - // Received Pub/Sub messages. This will not be empty. - repeated ReceivedMessage received_messages = 1; -} diff --git a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/AckDeadlineRenewerTest.java b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/AckDeadlineRenewerTest.java index 23d82d80b59e..69efa21c460f 100644 --- a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/AckDeadlineRenewerTest.java +++ b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/AckDeadlineRenewerTest.java @@ -57,7 +57,7 @@ public class AckDeadlineRenewerTest { @Before public void setUp() { pubsub = EasyMock.createStrictMock(PubSub.class); - executorService = new FakeScheduledExecutorService(4, clock); + executorService = new FakeScheduledExecutorService(); ExecutorFactory executorFactory = new ExecutorFactory() { @Override public ExecutorService get() { From a409eaca03683959c10a9e59b6735bb0f554f72f Mon Sep 17 00:00:00 2001 From: Michael Darakananda Date: Mon, 12 Dec 2016 22:04:18 +1100 Subject: [PATCH 5/5] make AckDeadlineRenewerTest pass --- .../google/cloud/pubsub/AckDeadlineRenewerTest.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/AckDeadlineRenewerTest.java b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/AckDeadlineRenewerTest.java index 69efa21c460f..fab912b5a75b 100644 --- a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/AckDeadlineRenewerTest.java +++ b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/AckDeadlineRenewerTest.java @@ -18,6 +18,7 @@ import static org.junit.Assert.assertTrue; +import com.google.cloud.Clock; import com.google.cloud.GrpcServiceOptions.ExecutorFactory; import com.google.common.collect.ImmutableList; import java.util.concurrent.CountDownLatch; @@ -29,11 +30,12 @@ import java.util.concurrent.atomic.AtomicLong; import org.easymock.EasyMock; import org.easymock.IAnswer; +import org.joda.time.DateTimeUtils; import org.junit.After; import org.junit.Before; import org.junit.Rule; -import org.junit.Test; import org.junit.rules.Timeout; +import org.junit.Test; public class AckDeadlineRenewerTest { @@ -49,7 +51,12 @@ public class AckDeadlineRenewerTest { private PubSub pubsub; private FakeScheduledExecutorService executorService; private AckDeadlineRenewer ackDeadlineRenewer; - private final FakeClock clock = new FakeClock(); + private final Clock clock = new Clock() { + @Override + public long millis() { + return DateTimeUtils.currentTimeMillis(); + } + }; @Rule public Timeout globalTimeout = Timeout.seconds(60);