diff --git a/google-cloud-logging/pom.xml b/google-cloud-logging/pom.xml
index 88cbd555f9fe..fb631451a9f4 100644
--- a/google-cloud-logging/pom.xml
+++ b/google-cloud-logging/pom.xml
@@ -52,6 +52,11 @@
test-jar
test
+
+ com.google.truth
+ truth
+ test
+
com.google.api.grpc
grpc-google-cloud-logging-v2
diff --git a/google-cloud-logging/src/main/java/com/google/cloud/logging/Logging.java b/google-cloud-logging/src/main/java/com/google/cloud/logging/Logging.java
index 5ae71a48c97d..b6153a9a639b 100644
--- a/google-cloud-logging/src/main/java/com/google/cloud/logging/Logging.java
+++ b/google-cloud-logging/src/main/java/com/google/cloud/logging/Logging.java
@@ -18,12 +18,11 @@
import com.google.api.core.ApiFuture;
import com.google.api.gax.paging.AsyncPage;
+import com.google.api.gax.paging.Page;
import com.google.cloud.MonitoredResource;
import com.google.cloud.MonitoredResourceDescriptor;
-import com.google.api.gax.paging.Page;
import com.google.cloud.Service;
import com.google.common.collect.ImmutableMap;
-
import java.util.Map;
public interface Logging extends AutoCloseable, Service {
@@ -147,7 +146,8 @@ final class EntryListOption extends Option {
private static final long serialVersionUID = -1561159676386917050L;
enum OptionType implements Option.OptionType {
- PAGE_SIZE, PAGE_TOKEN, ORDER_BY, FILTER;
+ ORDER_BY,
+ FILTER;
@SuppressWarnings("unchecked")
T get(Map options) {
@@ -155,7 +155,7 @@ T get(Map options) {
}
}
- private EntryListOption(OptionType option, Object value) {
+ private EntryListOption(Option.OptionType option, Object value) {
super(option, value);
}
@@ -163,14 +163,14 @@ private EntryListOption(OptionType option, Object value) {
* Returns an option to specify the maximum number of log entries returned per page.
*/
public static EntryListOption pageSize(int pageSize) {
- return new EntryListOption(OptionType.PAGE_SIZE, pageSize);
+ return new EntryListOption(ListOption.OptionType.PAGE_SIZE, pageSize);
}
/**
* Returns an option to specify the page token from which to start listing log entries.
*/
public static EntryListOption pageToken(String pageToken) {
- return new EntryListOption(OptionType.PAGE_TOKEN, pageToken);
+ return new EntryListOption(ListOption.OptionType.PAGE_TOKEN, pageToken);
}
/**
diff --git a/google-cloud-logging/src/main/java/com/google/cloud/logging/LoggingImpl.java b/google-cloud-logging/src/main/java/com/google/cloud/logging/LoggingImpl.java
index a901ad4bd7ed..32eb71c2861b 100644
--- a/google-cloud-logging/src/main/java/com/google/cloud/logging/LoggingImpl.java
+++ b/google-cloud-logging/src/main/java/com/google/cloud/logging/LoggingImpl.java
@@ -30,11 +30,11 @@
import com.google.api.core.ApiFutureCallback;
import com.google.api.core.ApiFutures;
import com.google.api.gax.paging.AsyncPage;
+import com.google.api.gax.paging.Page;
import com.google.cloud.AsyncPageImpl;
import com.google.cloud.BaseService;
import com.google.cloud.MonitoredResource;
import com.google.cloud.MonitoredResourceDescriptor;
-import com.google.api.gax.paging.Page;
import com.google.cloud.PageImpl;
import com.google.cloud.logging.spi.v2.LoggingRpc;
import com.google.common.base.Function;
@@ -59,13 +59,10 @@
import com.google.logging.v2.ListMonitoredResourceDescriptorsResponse;
import com.google.logging.v2.ListSinksRequest;
import com.google.logging.v2.ListSinksResponse;
-import com.google.logging.v2.LogName;
-import com.google.logging.v2.MetricName;
import com.google.logging.v2.ProjectLogName;
import com.google.logging.v2.ProjectMetricName;
import com.google.logging.v2.ProjectName;
import com.google.logging.v2.ProjectSinkName;
-import com.google.logging.v2.SinkName;
import com.google.logging.v2.UpdateLogMetricRequest;
import com.google.logging.v2.UpdateSinkRequest;
import com.google.logging.v2.WriteLogEntriesRequest;
@@ -597,10 +594,10 @@ private ApiFuture writeAsync(Iterable logEntries, WriteOption...
WRITE_RESPONSE_TO_VOID_FUNCTION);
}
- private static ListLogEntriesRequest listLogEntriesRequest(LoggingOptions serviceOptions,
- Map options) {
+ static ListLogEntriesRequest listLogEntriesRequest(
+ String projectId, Map options) {
ListLogEntriesRequest.Builder builder = ListLogEntriesRequest.newBuilder();
- builder.addProjectIds(serviceOptions.getProjectId());
+ builder.addProjectIds(projectId);
Integer pageSize = PAGE_SIZE.get(options);
if (pageSize != null) {
builder.setPageSize(pageSize);
@@ -622,7 +619,8 @@ private static ListLogEntriesRequest listLogEntriesRequest(LoggingOptions servic
private static ApiFuture> listLogEntriesAsync(
final LoggingOptions serviceOptions, final Map options) {
- final ListLogEntriesRequest request = listLogEntriesRequest(serviceOptions, options);
+ final ListLogEntriesRequest request =
+ listLogEntriesRequest(serviceOptions.getProjectId(), options);
ApiFuture list = serviceOptions.getLoggingRpcV2().list(request);
return transform(list, new Function>() {
@Override
diff --git a/google-cloud-logging/src/test/java/com/google/cloud/logging/LoggingTest.java b/google-cloud-logging/src/test/java/com/google/cloud/logging/LoggingTest.java
index 5d118cb55f7b..b08ea2ed9cf6 100644
--- a/google-cloud-logging/src/test/java/com/google/cloud/logging/LoggingTest.java
+++ b/google-cloud-logging/src/test/java/com/google/cloud/logging/LoggingTest.java
@@ -20,15 +20,15 @@
import static com.google.cloud.logging.Logging.SortingField;
import static com.google.cloud.logging.Logging.SortingOrder;
import static com.google.cloud.logging.Logging.WriteOption;
+import static com.google.common.truth.Truth.assertThat;
import static org.junit.Assert.assertEquals;
import com.google.cloud.MonitoredResource;
import com.google.cloud.logging.Logging.ListOption;
import com.google.common.collect.ImmutableMap;
-
-import org.junit.Test;
-
+import com.google.logging.v2.ListLogEntriesRequest;
import java.util.Map;
+import org.junit.Test;
public class LoggingTest {
@@ -56,11 +56,11 @@ public void testListOption() {
public void testEntryListOption() {
EntryListOption listOption = EntryListOption.pageToken(PAGE_TOKEN);
assertEquals(PAGE_TOKEN, listOption.getValue());
- assertEquals(EntryListOption.OptionType.PAGE_TOKEN, listOption.getOptionType());
+ assertEquals(ListOption.OptionType.PAGE_TOKEN, listOption.getOptionType());
// page size
listOption = EntryListOption.pageSize(PAGE_SIZE);
assertEquals(PAGE_SIZE, listOption.getValue());
- assertEquals(EntryListOption.OptionType.PAGE_SIZE, listOption.getOptionType());
+ assertEquals(ListOption.OptionType.PAGE_SIZE, listOption.getOptionType());
// filter
listOption = EntryListOption.filter(FILTER);
assertEquals(FILTER, listOption.getValue());
@@ -72,6 +72,14 @@ public void testEntryListOption() {
listOption = EntryListOption.sortOrder(SortingField.TIMESTAMP, SortingOrder.DESCENDING);
assertEquals("timestamp desc", listOption.getValue());
assertEquals(EntryListOption.OptionType.ORDER_BY, listOption.getOptionType());
+
+ ListLogEntriesRequest request =
+ LoggingImpl.listLogEntriesRequest(
+ "some-project-id",
+ LoggingImpl.optionMap(
+ EntryListOption.pageToken(PAGE_TOKEN), EntryListOption.pageSize(PAGE_SIZE)));
+ assertThat(request.getPageToken()).isEqualTo(PAGE_TOKEN);
+ assertThat(request.getPageSize()).isEqualTo(PAGE_SIZE);
}
@Test