From b6ea8652a638a2b0bcc194a768261cdbbb46b170 Mon Sep 17 00:00:00 2001 From: Jianghao Lu Date: Tue, 18 Oct 2016 18:04:59 -0700 Subject: [PATCH] Return null on GET 404 --- .../src/main/java/com/microsoft/azure/PagedList.java | 3 +++ .../main/java/com/microsoft/rest/ServiceResponseBuilder.java | 2 ++ 2 files changed, 5 insertions(+) diff --git a/azure-client-runtime/src/main/java/com/microsoft/azure/PagedList.java b/azure-client-runtime/src/main/java/com/microsoft/azure/PagedList.java index 46c02402ed..a614213620 100644 --- a/azure-client-runtime/src/main/java/com/microsoft/azure/PagedList.java +++ b/azure-client-runtime/src/main/java/com/microsoft/azure/PagedList.java @@ -45,6 +45,9 @@ public PagedList() { */ public PagedList(Page page) { this(); + if (page == null) { + return; + } List retrievedItems = page.getItems(); if (retrievedItems != null) { items.addAll(retrievedItems); diff --git a/client-runtime/src/main/java/com/microsoft/rest/ServiceResponseBuilder.java b/client-runtime/src/main/java/com/microsoft/rest/ServiceResponseBuilder.java index 3e16e187ee..62400715e7 100644 --- a/client-runtime/src/main/java/com/microsoft/rest/ServiceResponseBuilder.java +++ b/client-runtime/src/main/java/com/microsoft/rest/ServiceResponseBuilder.java @@ -141,6 +141,8 @@ public ServiceResponse build(Response response) throws E, IOExc return new ServiceResponse<>((T) buildBody(statusCode, responseBody), response); } else if (response.isSuccessful() && responseTypes.size() == 1) { return new ServiceResponse<>((T) buildBody(statusCode, responseBody), response); + } else if ("GET".equals(response.raw().request().method()) && statusCode == 404) { + return new ServiceResponse<>(null, response); } else { try { String responseContent = responseBody.string();