Switch from Guava Optionals to Java 8 Optionals

This was a surprisingly involved change. Some of the difficulties included
java.util.Optional purposely not being Serializable (so I had to move a
few Optionals in mapreduce classes to @Nullable) and having to add the Truth
Java8 extension library for assertion support.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=171863777
This commit is contained in:
mcilwain 2017-10-11 13:09:26 -07:00 committed by jianglai
parent 184b2b56ac
commit c0f8da0c6e
581 changed files with 1325 additions and 932 deletions

View file

@ -21,11 +21,12 @@ java_library(
"//java/google/registry/util",
"//javatests/google/registry/testing",
"//third_party/java/objectify:objectify-v4_1",
"//third_party/java/truth",
"@com_google_appengine_api_1_0_sdk//:testonly",
"@com_google_code_findbugs_jsr305",
"@com_google_dagger",
"@com_google_guava",
"@com_google_truth",
"@com_google_truth_extensions_truth_java8_extension",
"@com_googlecode_json_simple",
"@javax_servlet_api",
"@joda_time",

View file

@ -16,6 +16,7 @@ package google.registry.rdap;
import static com.google.common.net.HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import static google.registry.request.Action.Method.GET;
import static google.registry.request.Action.Method.HEAD;
import static google.registry.testing.DatastoreHelper.createTld;

View file

@ -15,6 +15,7 @@
package google.registry.rdap;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import static google.registry.testing.DatastoreHelper.createTld;
import static google.registry.testing.DatastoreHelper.persistResource;
import static google.registry.testing.DatastoreHelper.persistSimpleResources;

View file

@ -16,6 +16,7 @@ package google.registry.rdap;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import static google.registry.testing.DatastoreHelper.createTld;
import static google.registry.testing.DatastoreHelper.persistDomainAsDeleted;
import static google.registry.testing.DatastoreHelper.persistResource;
@ -32,7 +33,6 @@ import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import com.google.appengine.api.users.User;
import com.google.common.base.Optional;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
@ -60,6 +60,7 @@ import java.net.IDN;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;
import javax.servlet.http.HttpServletRequest;
import org.joda.time.DateTime;
@ -113,23 +114,23 @@ public class RdapDomainSearchActionTest {
switch (requestType) {
case NAME:
action.nameParam = Optional.of(paramValue);
action.nsLdhNameParam = Optional.absent();
action.nsIpParam = Optional.absent();
action.nsLdhNameParam = Optional.empty();
action.nsIpParam = Optional.empty();
break;
case NS_LDH_NAME:
action.nameParam = Optional.absent();
action.nameParam = Optional.empty();
action.nsLdhNameParam = Optional.of(paramValue);
action.nsIpParam = Optional.absent();
action.nsIpParam = Optional.empty();
break;
case NS_IP:
action.nameParam = Optional.absent();
action.nsLdhNameParam = Optional.absent();
action.nameParam = Optional.empty();
action.nsLdhNameParam = Optional.empty();
action.nsIpParam = Optional.of(InetAddresses.forString(paramValue));
break;
default:
action.nameParam = Optional.absent();
action.nsLdhNameParam = Optional.absent();
action.nsIpParam = Optional.absent();
action.nameParam = Optional.empty();
action.nsLdhNameParam = Optional.empty();
action.nsIpParam = Optional.empty();
break;
}
action.rdapResultSetMaxSize = 4;
@ -359,8 +360,8 @@ public class RdapDomainSearchActionTest {
action.clock = clock;
action.request = request;
action.response = response;
action.registrarParam = Optional.absent();
action.includeDeletedParam = Optional.absent();
action.registrarParam = Optional.empty();
action.includeDeletedParam = Optional.empty();
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
action.rdapLinkBase = "https://example.com/rdap/";
action.rdapWhoisServer = null;

View file

@ -15,6 +15,7 @@
package google.registry.rdap;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import static google.registry.testing.DatastoreHelper.createTld;
import static google.registry.testing.DatastoreHelper.persistResource;
import static google.registry.testing.DatastoreHelper.persistSimpleResources;
@ -28,7 +29,6 @@ import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import com.google.appengine.api.users.User;
import com.google.common.base.Optional;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
@ -45,6 +45,7 @@ import google.registry.testing.FakeResponse;
import google.registry.testing.InjectRule;
import google.registry.ui.server.registrar.SessionUtils;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;
import javax.servlet.http.HttpServletRequest;
import org.joda.time.DateTime;
@ -160,8 +161,8 @@ public class RdapEntityActionTest {
action.clock = clock;
action.request = request;
action.response = response;
action.registrarParam = Optional.<String>absent();
action.includeDeletedParam = Optional.<Boolean>absent();
action.registrarParam = Optional.<String>empty();
action.includeDeletedParam = Optional.<Boolean>empty();
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
action.rdapLinkBase = "https://example.com/rdap/";
action.rdapWhoisServer = null;

View file

@ -16,6 +16,7 @@ package google.registry.rdap;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import static google.registry.testing.DatastoreHelper.createTld;
import static google.registry.testing.DatastoreHelper.persistResource;
import static google.registry.testing.DatastoreHelper.persistResources;
@ -29,7 +30,6 @@ import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import com.google.appengine.api.users.User;
import com.google.common.base.Optional;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import google.registry.model.ImmutableObject;
@ -45,6 +45,7 @@ import google.registry.testing.InjectRule;
import google.registry.ui.server.registrar.SessionUtils;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;
import javax.servlet.http.HttpServletRequest;
import org.joda.time.DateTime;
@ -147,10 +148,10 @@ public class RdapEntitySearchActionTest {
action.rdapResultSetMaxSize = 4;
action.rdapLinkBase = "https://example.com/rdap/";
action.rdapWhoisServer = null;
action.fnParam = Optional.absent();
action.handleParam = Optional.absent();
action.registrarParam = Optional.absent();
action.includeDeletedParam = Optional.absent();
action.fnParam = Optional.empty();
action.handleParam = Optional.empty();
action.registrarParam = Optional.empty();
action.includeDeletedParam = Optional.empty();
action.sessionUtils = sessionUtils;
action.authResult = AuthResult.create(AuthLevel.USER, userAuthInfo);
}

View file

@ -15,6 +15,7 @@
package google.registry.rdap;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import static google.registry.testing.TestDataHelper.loadFileWithSubstitutions;
import com.google.common.collect.ImmutableMap;

View file

@ -15,6 +15,7 @@
package google.registry.rdap;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import static google.registry.testing.DatastoreHelper.createTld;
import static google.registry.testing.DatastoreHelper.persistResource;
import static google.registry.testing.DatastoreHelper.persistSimpleResources;
@ -26,7 +27,6 @@ import static google.registry.testing.FullFieldsTestEntityHelper.makeRegistrar;
import static google.registry.testing.TestDataHelper.loadFileWithSubstitutions;
import static javax.servlet.http.HttpServletResponse.SC_BAD_REQUEST;
import com.google.common.base.Optional;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
@ -49,6 +49,7 @@ import google.registry.rdap.RdapJsonFormatter.OutputDataType;
import google.registry.testing.AppEngineRule;
import google.registry.testing.FakeClock;
import google.registry.testing.InjectRule;
import java.util.Optional;
import org.joda.time.DateTime;
import org.json.simple.JSONValue;
import org.junit.Before;
@ -472,7 +473,7 @@ public class RdapJsonFormatterTest {
rdapJsonFormatter.makeRdapJsonForContact(
contactResourceTech,
false,
Optional.<DesignatedContact.Type>absent(),
Optional.<DesignatedContact.Type>empty(),
LINK_BASE,
WHOIS_SERVER,
clock.nowUtc(),
@ -487,7 +488,7 @@ public class RdapJsonFormatterTest {
rdapJsonFormatter.makeRdapJsonForContact(
contactResourceNotLinked,
false,
Optional.<DesignatedContact.Type>absent(),
Optional.<DesignatedContact.Type>empty(),
LINK_BASE,
WHOIS_SERVER,
clock.nowUtc(),

View file

@ -15,6 +15,7 @@
package google.registry.rdap;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import static google.registry.testing.DatastoreHelper.createTld;
import static google.registry.testing.DatastoreHelper.persistResource;
import static google.registry.testing.FullFieldsTestEntityHelper.makeAndPersistHostResource;
@ -24,7 +25,6 @@ import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import com.google.appengine.api.users.User;
import com.google.common.base.Optional;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
@ -39,6 +39,7 @@ import google.registry.testing.FakeResponse;
import google.registry.testing.InjectRule;
import google.registry.ui.server.registrar.SessionUtils;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;
import javax.servlet.http.HttpServletRequest;
import org.joda.time.DateTime;
@ -122,7 +123,7 @@ public class RdapNameserverActionTest {
}
private Object generateActualJson(String name) {
return generateActualJson(name, Optional.<String>absent(), Optional.<Boolean>absent());
return generateActualJson(name, Optional.<String>empty(), Optional.<Boolean>empty());
}
private Object generateActualJson(
@ -282,7 +283,7 @@ public class RdapNameserverActionTest {
public void testNameserver_found_sameRegistrarRequested() throws Exception {
assertThat(
generateActualJson(
"ns1.cat.lol", Optional.of("TheRegistrar"), Optional.<Boolean>absent()))
"ns1.cat.lol", Optional.of("TheRegistrar"), Optional.<Boolean>empty()))
.isEqualTo(
generateExpectedJsonWithTopLevelEntries(
"ns1.cat.lol",
@ -309,14 +310,14 @@ public class RdapNameserverActionTest {
@Test
public void testDeletedNameserver_notFound_includeDeletedSetFalse() throws Exception {
generateActualJson("nsdeleted.cat.lol", Optional.<String>absent(), Optional.of(false));
generateActualJson("nsdeleted.cat.lol", Optional.<String>empty(), Optional.of(false));
assertThat(response.getStatus()).isEqualTo(404);
}
@Test
public void testDeletedNameserver_notFound_notLoggedIn() throws Exception {
when(sessionUtils.checkRegistrarConsoleLogin(request, userAuthInfo)).thenReturn(false);
generateActualJson("nsdeleted.cat.lol", Optional.<String>absent(), Optional.of(true));
generateActualJson("nsdeleted.cat.lol", Optional.<String>empty(), Optional.of(true));
assertThat(response.getStatus()).isEqualTo(404);
}
@ -324,7 +325,7 @@ public class RdapNameserverActionTest {
public void testDeletedNameserver_notFound_loggedInAsDifferentRegistrar() throws Exception {
when(sessionUtils.checkRegistrarConsoleLogin(request, userAuthInfo)).thenReturn(true);
when(sessionUtils.getRegistrarClientId(request)).thenReturn("otherregistrar");
generateActualJson("nsdeleted.cat.lol", Optional.<String>absent(), Optional.of(true));
generateActualJson("nsdeleted.cat.lol", Optional.<String>empty(), Optional.of(true));
assertThat(response.getStatus()).isEqualTo(404);
}
@ -333,7 +334,7 @@ public class RdapNameserverActionTest {
when(sessionUtils.checkRegistrarConsoleLogin(request, userAuthInfo)).thenReturn(true);
when(sessionUtils.getRegistrarClientId(request)).thenReturn("TheRegistrar");
assertThat(
generateActualJson("nsdeleted.cat.lol", Optional.<String>absent(), Optional.of(true)))
generateActualJson("nsdeleted.cat.lol", Optional.<String>empty(), Optional.of(true)))
.isEqualTo(
generateExpectedJsonWithTopLevelEntries(
"nsdeleted.cat.lol",
@ -352,7 +353,7 @@ public class RdapNameserverActionTest {
when(sessionUtils.getRegistrarClientId(request)).thenReturn("irrelevant");
newRdapNameserverAction(
"nsdeleted.cat.lol",
Optional.<String>absent(),
Optional.<String>empty(),
Optional.of(true),
AuthResult.create(AuthLevel.USER, adminUserAuthInfo))
.run();

View file

@ -15,6 +15,7 @@
package google.registry.rdap;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import static google.registry.testing.DatastoreHelper.createTld;
import static google.registry.testing.DatastoreHelper.persistResource;
import static google.registry.testing.DatastoreHelper.persistResources;
@ -30,7 +31,6 @@ import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import com.google.appengine.api.users.User;
import com.google.common.base.Optional;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
@ -48,6 +48,7 @@ import google.registry.testing.FakeClock;
import google.registry.testing.FakeResponse;
import google.registry.testing.InjectRule;
import google.registry.ui.server.registrar.SessionUtils;
import java.util.Optional;
import javax.annotation.Nullable;
import javax.servlet.http.HttpServletRequest;
import org.joda.time.DateTime;
@ -150,10 +151,10 @@ public class RdapNameserverSearchActionTest {
action.rdapResultSetMaxSize = 4;
action.rdapLinkBase = "https://example.tld/rdap/";
action.rdapWhoisServer = null;
action.ipParam = Optional.absent();
action.nameParam = Optional.absent();
action.registrarParam = Optional.absent();
action.includeDeletedParam = Optional.absent();
action.ipParam = Optional.empty();
action.nameParam = Optional.empty();
action.registrarParam = Optional.empty();
action.includeDeletedParam = Optional.empty();
action.authResult = AuthResult.create(AuthLevel.USER, userAuthInfo);
action.sessionUtils = sessionUtils;
}

View file

@ -15,6 +15,7 @@
package google.registry.rdap;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth8.assertThat;
import google.registry.request.HttpException.UnprocessableEntityException;
import google.registry.testing.ExceptionRule;