From 8c6540e84b7cfed4687ea964709b78d0558f5f2e Mon Sep 17 00:00:00 2001 From: Dave Borowitz Date: Tue, 20 Sep 2016 11:26:35 -0400 Subject: [PATCH] WebLinks: Convert Functions/Predicates to lambdas Change-Id: I96e7c03839fb86c775d63e6dd6adf10a233865a1 --- .../com/google/gerrit/server/WebLinks.java | 159 +++++++----------- 1 file changed, 62 insertions(+), 97 deletions(-) diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/WebLinks.java b/gerrit-server/src/main/java/com/google/gerrit/server/WebLinks.java index 761f2a3d54..6dccbc2b8b 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/WebLinks.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/WebLinks.java @@ -39,37 +39,31 @@ import org.slf4j.LoggerFactory; @Singleton public class WebLinks { private static final Logger log = LoggerFactory.getLogger(WebLinks.class); + private static final Predicate INVALID_WEBLINK = - new Predicate() { - - @Override - public boolean apply(WebLinkInfo link) { - if (link == null) { - return false; - } else if (Strings.isNullOrEmpty(link.name) - || Strings.isNullOrEmpty(link.url)) { - log.warn(String.format("%s is missing name and/or url", - link.getClass().getName())); - return false; - } - return true; + link -> { + if (link == null) { + return false; + } else if (Strings.isNullOrEmpty(link.name) + || Strings.isNullOrEmpty(link.url)) { + log.warn(String.format("%s is missing name and/or url", + link.getClass().getName())); + return false; } + return true; }; - private static final Predicate INVALID_WEBLINK_COMMON = - new Predicate() { - @Override - public boolean apply(WebLinkInfoCommon link) { - if (link == null) { - return false; - } else if (Strings.isNullOrEmpty(link.name) - || Strings.isNullOrEmpty(link.url)) { - log.warn(String.format("%s is missing name and/or url", link - .getClass().getName())); - return false; - } - return true; + private static final Predicate INVALID_WEBLINK_COMMON = + link -> { + if (link == null) { + return false; + } else if (Strings.isNullOrEmpty(link.name) + || Strings.isNullOrEmpty(link.url)) { + log.warn(String.format("%s is missing name and/or url", link + .getClass().getName())); + return false; } + return true; }; private final DynamicSet patchSetLinks; @@ -85,8 +79,7 @@ public class WebLinks { DynamicSet fileLogLinks, DynamicSet diffLinks, DynamicSet projectLinks, - DynamicSet branchLinks - ) { + DynamicSet branchLinks) { this.patchSetLinks = patchSetLinks; this.fileLinks = fileLinks; this.fileHistoryLinks = fileLogLinks; @@ -101,15 +94,11 @@ public class WebLinks { * @param commit SHA1 of commit. * @return Links for patch sets. */ - public FluentIterable getPatchSetLinks(final Project.NameKey project, - final String commit) { - return filterLinks(patchSetLinks, new Function() { - - @Override - public WebLinkInfo apply(WebLink webLink) { - return ((PatchSetWebLink)webLink).getPatchSetWebLink(project.get(), commit); - } - }); + public FluentIterable getPatchSetLinks(Project.NameKey project, + String commit) { + return filterLinks( + patchSetLinks, + webLink -> webLink.getPatchSetWebLink(project.get(), commit)); } /** @@ -119,15 +108,11 @@ public class WebLinks { * @param file File name. * @return Links for files. */ - public FluentIterable getFileLinks(final String project, final String revision, - final String file) { - return filterLinks(fileLinks, new Function() { - - @Override - public WebLinkInfo apply(WebLink webLink) { - return ((FileWebLink)webLink).getFileWebLink(project, revision, file); - } - }); + public FluentIterable getFileLinks(String project, + String revision, String file) { + return filterLinks( + fileLinks, + webLink -> webLink.getFileWebLink(project, revision, file)); } /** @@ -137,39 +122,31 @@ public class WebLinks { * @param file File name. * @return Links for file history */ - public FluentIterable getFileHistoryLinks(final String project, - final String revision, final String file) { - return filterLinks(fileHistoryLinks, new Function() { - - @Override - public WebLinkInfo apply(WebLink webLink) { - return ((FileHistoryWebLink) webLink).getFileHistoryWebLink(project, - revision, file); - } - }); + public FluentIterable getFileHistoryLinks(String project, + String revision, String file) { + return filterLinks( + fileHistoryLinks, + webLink -> webLink.getFileHistoryWebLink(project, revision, file)); } public FluentIterable getFileHistoryLinksCommon( - final String project, final String revision, final String file) { + String project, String revision, String file) { return FluentIterable .from(fileHistoryLinks) - .transform(new Function() { - @Override - public WebLinkInfoCommon apply(WebLink webLink) { - WebLinkInfo info = - ((FileHistoryWebLink) webLink).getFileHistoryWebLink(project, - revision, file); - if (info == null) { - return null; - } - WebLinkInfoCommon commonInfo = new WebLinkInfoCommon(); - commonInfo.name = info.name; - commonInfo.imageUrl = info.imageUrl; - commonInfo.url = info.url; - commonInfo.target = info.target; - return commonInfo; - } - }) + .transform( + webLink -> { + WebLinkInfo info = + webLink.getFileHistoryWebLink(project, revision, file); + if (info == null) { + return null; + } + WebLinkInfoCommon commonInfo = new WebLinkInfoCommon(); + commonInfo.name = info.name; + commonInfo.imageUrl = info.imageUrl; + commonInfo.url = info.url; + commonInfo.target = info.target; + return commonInfo; + }) .filter(INVALID_WEBLINK_COMMON); } @@ -190,14 +167,10 @@ public class WebLinks { final int patchSetIdB, final String revisionB, final String fileB) { return FluentIterable .from(diffLinks) - .transform(new Function() { - @Override - public DiffWebLinkInfo apply(WebLink webLink) { - return ((DiffWebLink) webLink).getDiffLink(project, changeId, + .transform(webLink -> + webLink.getDiffLink(project, changeId, patchSetIdA, revisionA, fileA, - patchSetIdB, revisionB, fileB); - } - }) + patchSetIdB, revisionB, fileB)) .filter(INVALID_WEBLINK); } @@ -207,13 +180,9 @@ public class WebLinks { * @return Links for projects. */ public FluentIterable getProjectLinks(final String project) { - return filterLinks(projectLinks, new Function() { - - @Override - public WebLinkInfo apply(WebLink webLink) { - return ((ProjectWebLink)webLink).getProjectWeblink(project); - } - }); + return filterLinks( + projectLinks, + webLink -> webLink.getProjectWeblink(project)); } /** @@ -223,17 +192,13 @@ public class WebLinks { * @return Links for branches. */ public FluentIterable getBranchLinks(final String project, final String branch) { - return filterLinks(branchLinks, new Function() { - - @Override - public WebLinkInfo apply(WebLink webLink) { - return ((BranchWebLink)webLink).getBranchWebLink(project, branch); - } - }); + return filterLinks( + branchLinks, + webLink -> webLink.getBranchWebLink(project, branch)); } - private FluentIterable filterLinks(DynamicSet links, - Function transformer) { + private FluentIterable filterLinks(DynamicSet links, + Function transformer) { return FluentIterable .from(links) .transform(transformer)