Skip to content

Commit 0e9a968

Browse files
authored
Changes for release 5.1.0. (#289)
1 parent d823b07 commit 0e9a968

912 files changed

Lines changed: 73625 additions & 35094 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
5.1.0 - 2020-05-06
2+
------------------
3+
- Added support for Google Ads API v3_1.
4+
- Fixed missing entity from ResourceNames for Ad.
5+
- Added various examples.
6+
17
5.0.0 - 2020-03-04
28
------------------
39
- Added support for Google Ads API v3_0.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ This project hosts the Java client library for the Google Ads API.
1818
<dependency>
1919
<groupId>com.google.api-ads</groupId>
2020
<artifactId>google-ads</artifactId>
21-
<version>5.0.0</version>
21+
<version>5.1.0</version>
2222
</dependency>
2323

2424
## Getting started

google-ads-examples/src/main/java/com/google/ads/googleads/examples/remarketing/AddCustomerMatchUserList.java

Lines changed: 375 additions & 0 deletions
Large diffs are not rendered by default.

google-ads/src/main/java/com/google/ads/googleads/lib/catalog/GeneratedCatalog.java

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,8 @@
229229
import com.google.ads.googleads.v2.services.VideoServiceSettings;
230230
import com.google.ads.googleads.v3.services.CurrencyConstantServiceClient;
231231
import com.google.ads.googleads.v3.services.CurrencyConstantServiceSettings;
232+
import com.google.ads.googleads.v3.services.OfflineUserDataJobServiceClient;
233+
import com.google.ads.googleads.v3.services.UserDataServiceClient;
232234
import com.google.api.gax.core.FixedCredentialsProvider;
233235
import com.google.api.gax.rpc.TransportChannelProvider;
234236
import com.google.auth.Credentials;
@@ -4716,6 +4718,21 @@ public com.google.ads.googleads.v3.services.MutateJobServiceClient createMutateJ
47164718
}
47174719
}
47184720

4721+
@Override
4722+
public OfflineUserDataJobServiceClient createOfflineUserDataJobServiceClient() {
4723+
try {
4724+
com.google.ads.googleads.v3.services.OfflineUserDataJobServiceSettings settings =
4725+
com.google.ads.googleads.v3.services.OfflineUserDataJobServiceSettings.newBuilder()
4726+
.setCredentialsProvider(FixedCredentialsProvider.create(credentials))
4727+
.setTransportChannelProvider(provider)
4728+
.build();
4729+
return com.google.ads.googleads.v3.services.OfflineUserDataJobServiceClient
4730+
.create(settings);
4731+
} catch (IOException e) {
4732+
throw new RuntimeException(e);
4733+
}
4734+
}
4735+
47194736
@Override
47204737
public com.google.ads.googleads.v3.services.OperatingSystemVersionConstantServiceClient createOperatingSystemVersionConstantServiceClient(
47214738
) {
@@ -4949,6 +4966,20 @@ public com.google.ads.googleads.v3.services.TopicViewServiceClient createTopicVi
49494966
}
49504967
}
49514968

4969+
@Override
4970+
public UserDataServiceClient createUserDataServiceClient() {
4971+
try {
4972+
com.google.ads.googleads.v3.services.UserDataServiceSettings settings =
4973+
com.google.ads.googleads.v3.services.UserDataServiceSettings.newBuilder()
4974+
.setCredentialsProvider(FixedCredentialsProvider.create(credentials))
4975+
.setTransportChannelProvider(provider)
4976+
.build();
4977+
return com.google.ads.googleads.v3.services.UserDataServiceClient.create(settings);
4978+
} catch (IOException e) {
4979+
throw new RuntimeException(e);
4980+
}
4981+
}
4982+
49524983
@Override
49534984
public com.google.ads.googleads.v3.services.UserInterestServiceClient createUserInterestServiceClient(
49544985
) {

google-ads/src/main/java/com/google/ads/googleads/lib/logging/LoggingInterceptor.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,12 +150,22 @@ private static String getRequestId(Metadata responseHeaders, Metadata responseTr
150150
}
151151

152152
private static String getCustomerId(Object request) {
153+
// Most requests have a customerId field.
153154
Optional<Method> getter =
154155
Stream.of(request.getClass().getMethods())
155156
.filter(method -> method.getName().equals("getCustomerId"))
156157
.findFirst();
158+
// However, some requests only have a resource name (e.g. CustomerService.get()).
159+
if (!getter.isPresent()) {
160+
getter =
161+
Stream.of(request.getClass().getMethods())
162+
.filter(method -> method.getName().equals("getResourceName"))
163+
.findFirst();
164+
}
157165
if (getter.isPresent()) {
158166
try {
167+
// If the customer ID is stored as a resource name we return the entire resource name rather
168+
// than attempting to extract the customer ID.
159169
return (String) getter.get().invoke(request);
160170
} catch (IllegalAccessException | InvocationTargetException e) {
161171
thisClassLogger.error("Unable to retrieve customer ID from " + request);

0 commit comments

Comments
 (0)