diff --git a/gerrit_debug.launch b/gerrit_debug.launch index 8c09b25bbb..077458a66d 100644 --- a/gerrit_debug.launch +++ b/gerrit_debug.launch @@ -23,5 +23,5 @@ - + diff --git a/gerrit_macos.launch b/gerrit_macos.launch index f266c387c5..83fbd1813f 100644 --- a/gerrit_macos.launch +++ b/gerrit_macos.launch @@ -23,5 +23,5 @@ - + diff --git a/src/main/java/com/google/gerrit/server/AccountCookie.java b/src/main/java/com/google/gerrit/server/http/AccountCookie.java similarity index 97% rename from src/main/java/com/google/gerrit/server/AccountCookie.java rename to src/main/java/com/google/gerrit/server/http/AccountCookie.java index 96f65743d0..85ca4128ab 100644 --- a/src/main/java/com/google/gerrit/server/AccountCookie.java +++ b/src/main/java/com/google/gerrit/server/http/AccountCookie.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.gerrit.client.Gerrit; diff --git a/src/main/java/com/google/gerrit/server/BecomeAnyAccountLoginServlet.java b/src/main/java/com/google/gerrit/server/http/BecomeAnyAccountLoginServlet.java similarity index 99% rename from src/main/java/com/google/gerrit/server/BecomeAnyAccountLoginServlet.java rename to src/main/java/com/google/gerrit/server/http/BecomeAnyAccountLoginServlet.java index 030d235820..3ad1b30be7 100644 --- a/src/main/java/com/google/gerrit/server/BecomeAnyAccountLoginServlet.java +++ b/src/main/java/com/google/gerrit/server/http/BecomeAnyAccountLoginServlet.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.gerrit.client.reviewdb.Account; import com.google.gerrit.client.reviewdb.ReviewDb; diff --git a/src/main/java/com/google/gerrit/server/CatServlet.java b/src/main/java/com/google/gerrit/server/http/CatServlet.java similarity index 98% rename from src/main/java/com/google/gerrit/server/CatServlet.java rename to src/main/java/com/google/gerrit/server/http/CatServlet.java index b50277c283..f4ec22df96 100644 --- a/src/main/java/com/google/gerrit/server/CatServlet.java +++ b/src/main/java/com/google/gerrit/server/http/CatServlet.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import static com.google.gerrit.server.BaseServiceImplementation.canRead; @@ -24,6 +24,8 @@ import com.google.gerrit.client.reviewdb.PatchSet; import com.google.gerrit.client.reviewdb.Project; import com.google.gerrit.client.reviewdb.ReviewDb; import com.google.gerrit.client.rpc.Common; +import com.google.gerrit.server.FileTypeRegistry; +import com.google.gerrit.server.GerritServer; import com.google.gwtorm.client.OrmException; import com.google.gwtorm.client.SchemaFactory; import com.google.inject.Inject; diff --git a/src/main/java/com/google/gerrit/server/GerritCall.java b/src/main/java/com/google/gerrit/server/http/GerritCall.java similarity index 99% rename from src/main/java/com/google/gerrit/server/GerritCall.java rename to src/main/java/com/google/gerrit/server/http/GerritCall.java index 2ec9706077..c3b001b26a 100644 --- a/src/main/java/com/google/gerrit/server/GerritCall.java +++ b/src/main/java/com/google/gerrit/server/http/GerritCall.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.gerrit.client.Gerrit; import com.google.gerrit.client.reviewdb.Account; diff --git a/src/main/java/com/google/gerrit/server/rpc/GerritJsonServlet.java b/src/main/java/com/google/gerrit/server/http/GerritJsonServlet.java similarity index 97% rename from src/main/java/com/google/gerrit/server/rpc/GerritJsonServlet.java rename to src/main/java/com/google/gerrit/server/http/GerritJsonServlet.java index 8d6e8e3bc3..801245b20f 100644 --- a/src/main/java/com/google/gerrit/server/rpc/GerritJsonServlet.java +++ b/src/main/java/com/google/gerrit/server/http/GerritJsonServlet.java @@ -12,11 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.rpc; +package com.google.gerrit.server.http; import com.google.gerrit.client.rpc.NotSignedInException; import com.google.gerrit.client.rpc.SignInRequired; -import com.google.gerrit.server.GerritCall; import com.google.gerrit.server.config.AuthConfig; import com.google.gson.GsonBuilder; import com.google.gwtjsonrpc.client.RemoteJsonService; diff --git a/src/main/java/com/google/gerrit/server/rpc/GerritJsonServletProvider.java b/src/main/java/com/google/gerrit/server/http/GerritJsonServletProvider.java similarity index 97% rename from src/main/java/com/google/gerrit/server/rpc/GerritJsonServletProvider.java rename to src/main/java/com/google/gerrit/server/http/GerritJsonServletProvider.java index 19ed9f832c..3709403653 100644 --- a/src/main/java/com/google/gerrit/server/rpc/GerritJsonServletProvider.java +++ b/src/main/java/com/google/gerrit/server/http/GerritJsonServletProvider.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.rpc; +package com.google.gerrit.server.http; import com.google.gwtjsonrpc.client.RemoteJsonService; import com.google.inject.AbstractModule; diff --git a/src/main/java/com/google/gerrit/server/GerritServletConfig.java b/src/main/java/com/google/gerrit/server/http/GerritServletConfig.java similarity index 98% rename from src/main/java/com/google/gerrit/server/GerritServletConfig.java rename to src/main/java/com/google/gerrit/server/http/GerritServletConfig.java index 3d29538559..5d80c25386 100644 --- a/src/main/java/com/google/gerrit/server/GerritServletConfig.java +++ b/src/main/java/com/google/gerrit/server/http/GerritServletConfig.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import static com.google.inject.Scopes.SINGLETON; import static com.google.inject.Stage.PRODUCTION; @@ -24,6 +24,9 @@ import com.google.gerrit.client.rpc.Common.CurrentAccountImpl; import com.google.gerrit.git.PushAllProjectsOp; import com.google.gerrit.git.ReloadSubmitQueueOp; import com.google.gerrit.git.WorkQueue; +import com.google.gerrit.server.CurrentUser; +import com.google.gerrit.server.IdentifiedUser; +import com.google.gerrit.server.RemotePeer; import com.google.gerrit.server.config.DatabaseModule; import com.google.gerrit.server.config.FactoryModule; import com.google.gerrit.server.config.GerritConfigProvider; diff --git a/src/main/java/com/google/gerrit/server/HostPageServlet.java b/src/main/java/com/google/gerrit/server/http/HostPageServlet.java similarity index 99% rename from src/main/java/com/google/gerrit/server/HostPageServlet.java rename to src/main/java/com/google/gerrit/server/http/HostPageServlet.java index 8f8231e8d7..21970dc5d5 100644 --- a/src/main/java/com/google/gerrit/server/HostPageServlet.java +++ b/src/main/java/com/google/gerrit/server/http/HostPageServlet.java @@ -12,11 +12,12 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.gerrit.client.data.GerritConfig; import com.google.gerrit.client.reviewdb.Account; import com.google.gerrit.client.rpc.Common; +import com.google.gerrit.server.GerritServer; import com.google.gerrit.server.config.CanonicalWebUrl; import com.google.gerrit.server.config.Nullable; import com.google.gerrit.server.config.SitePath; diff --git a/src/main/java/com/google/gerrit/server/HtmlDomUtil.java b/src/main/java/com/google/gerrit/server/http/HtmlDomUtil.java similarity index 99% rename from src/main/java/com/google/gerrit/server/HtmlDomUtil.java rename to src/main/java/com/google/gerrit/server/http/HtmlDomUtil.java index 510901087d..cc01899b2a 100644 --- a/src/main/java/com/google/gerrit/server/HtmlDomUtil.java +++ b/src/main/java/com/google/gerrit/server/http/HtmlDomUtil.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import org.w3c.dom.Document; import org.w3c.dom.Element; diff --git a/src/main/java/com/google/gerrit/server/HttpCurrentUserProvider.java b/src/main/java/com/google/gerrit/server/http/HttpCurrentUserProvider.java similarity index 90% rename from src/main/java/com/google/gerrit/server/HttpCurrentUserProvider.java rename to src/main/java/com/google/gerrit/server/http/HttpCurrentUserProvider.java index 69ba3f180d..eeeba54498 100644 --- a/src/main/java/com/google/gerrit/server/HttpCurrentUserProvider.java +++ b/src/main/java/com/google/gerrit/server/http/HttpCurrentUserProvider.java @@ -12,9 +12,11 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.gerrit.client.reviewdb.Account; +import com.google.gerrit.server.CurrentUser; +import com.google.gerrit.server.IdentifiedUser; import com.google.inject.Inject; import com.google.inject.Provider; import com.google.inject.servlet.RequestScoped; diff --git a/src/main/java/com/google/gerrit/server/HttpRemotePeerProvider.java b/src/main/java/com/google/gerrit/server/http/HttpRemotePeerProvider.java similarity index 97% rename from src/main/java/com/google/gerrit/server/HttpRemotePeerProvider.java rename to src/main/java/com/google/gerrit/server/http/HttpRemotePeerProvider.java index 98900e1a60..a8ce141019 100644 --- a/src/main/java/com/google/gerrit/server/HttpRemotePeerProvider.java +++ b/src/main/java/com/google/gerrit/server/http/HttpRemotePeerProvider.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.inject.Inject; import com.google.inject.Provider; diff --git a/src/main/java/com/google/gerrit/server/PrettifyServlet.java b/src/main/java/com/google/gerrit/server/http/PrettifyServlet.java similarity index 98% rename from src/main/java/com/google/gerrit/server/PrettifyServlet.java rename to src/main/java/com/google/gerrit/server/http/PrettifyServlet.java index 49bd48f428..eb94f6f0c7 100644 --- a/src/main/java/com/google/gerrit/server/PrettifyServlet.java +++ b/src/main/java/com/google/gerrit/server/http/PrettifyServlet.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.inject.Inject; import com.google.inject.Singleton; diff --git a/src/main/java/com/google/gerrit/server/http/RpcServletModule.java b/src/main/java/com/google/gerrit/server/http/RpcServletModule.java new file mode 100644 index 0000000000..8b259c7c3f --- /dev/null +++ b/src/main/java/com/google/gerrit/server/http/RpcServletModule.java @@ -0,0 +1,46 @@ +// Copyright (C) 2009 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package com.google.gerrit.server.http; + +import com.google.gwtjsonrpc.client.RemoteJsonService; +import com.google.inject.Key; +import com.google.inject.Scopes; +import com.google.inject.servlet.ServletModule; + +/** Binds {@link RemoteJsonService} implementations to a JSON servlet. */ +public abstract class RpcServletModule extends ServletModule { + private final String prefix; + + protected RpcServletModule(final String pathPrefix) { + prefix = pathPrefix; + } + + protected void rpc(Class clazz) { + String name = clazz.getSimpleName(); + if (name.endsWith("Impl")) { + name = name.substring(0, name.length() - 4); + } + rpc(name, clazz); + } + + protected void rpc(final String name, Class clazz) { + final Key srv = + Key.get(GerritJsonServlet.class, ServletNameImpl.named(name)); + final GerritJsonServletProvider provider = + new GerritJsonServletProvider(clazz); + serve(prefix + name).with(srv); + bind(srv).toProvider(provider).in(Scopes.SINGLETON); + } +} diff --git a/src/main/java/com/google/gerrit/server/config/ServletName.java b/src/main/java/com/google/gerrit/server/http/ServletName.java similarity index 95% rename from src/main/java/com/google/gerrit/server/config/ServletName.java rename to src/main/java/com/google/gerrit/server/http/ServletName.java index 91061fb6eb..70f714e81a 100644 --- a/src/main/java/com/google/gerrit/server/config/ServletName.java +++ b/src/main/java/com/google/gerrit/server/http/ServletName.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.config; +package com.google.gerrit.server.http; import com.google.inject.BindingAnnotation; diff --git a/src/main/java/com/google/gerrit/server/config/ServletNameImpl.java b/src/main/java/com/google/gerrit/server/http/ServletNameImpl.java similarity index 97% rename from src/main/java/com/google/gerrit/server/config/ServletNameImpl.java rename to src/main/java/com/google/gerrit/server/http/ServletNameImpl.java index 5a8a471040..616678de2f 100644 --- a/src/main/java/com/google/gerrit/server/config/ServletNameImpl.java +++ b/src/main/java/com/google/gerrit/server/http/ServletNameImpl.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server.config; +package com.google.gerrit.server.http; import java.lang.annotation.Annotation; diff --git a/src/main/java/com/google/gerrit/server/SshServlet.java b/src/main/java/com/google/gerrit/server/http/SshServlet.java similarity index 98% rename from src/main/java/com/google/gerrit/server/SshServlet.java rename to src/main/java/com/google/gerrit/server/http/SshServlet.java index d45a978713..7756e5ffda 100644 --- a/src/main/java/com/google/gerrit/server/SshServlet.java +++ b/src/main/java/com/google/gerrit/server/http/SshServlet.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.gerrit.server.ssh.SshInfo; import com.google.inject.Inject; diff --git a/src/main/java/com/google/gerrit/server/StaticServlet.java b/src/main/java/com/google/gerrit/server/http/StaticServlet.java similarity index 99% rename from src/main/java/com/google/gerrit/server/StaticServlet.java rename to src/main/java/com/google/gerrit/server/http/StaticServlet.java index c68f0456db..9a52863d57 100644 --- a/src/main/java/com/google/gerrit/server/StaticServlet.java +++ b/src/main/java/com/google/gerrit/server/http/StaticServlet.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.gerrit.server.config.SitePath; import com.google.gwt.user.server.rpc.RPCServletUtils; diff --git a/src/main/java/com/google/gerrit/server/UrlRewriteFilter.java b/src/main/java/com/google/gerrit/server/http/UrlRewriteFilter.java similarity index 99% rename from src/main/java/com/google/gerrit/server/UrlRewriteFilter.java rename to src/main/java/com/google/gerrit/server/http/UrlRewriteFilter.java index 3716e20a09..68283671a6 100644 --- a/src/main/java/com/google/gerrit/server/UrlRewriteFilter.java +++ b/src/main/java/com/google/gerrit/server/http/UrlRewriteFilter.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.server; +package com.google.gerrit.server.http; import com.google.gerrit.client.Link; import com.google.gerrit.client.reviewdb.Account; diff --git a/src/main/java/com/google/gerrit/server/rpc/OpenIdServiceImpl.java b/src/main/java/com/google/gerrit/server/rpc/OpenIdServiceImpl.java index 353b8bad27..a2b4431993 100644 --- a/src/main/java/com/google/gerrit/server/rpc/OpenIdServiceImpl.java +++ b/src/main/java/com/google/gerrit/server/rpc/OpenIdServiceImpl.java @@ -25,12 +25,12 @@ import com.google.gerrit.client.reviewdb.AccountExternalIdAccess; import com.google.gerrit.client.reviewdb.ReviewDb; import com.google.gerrit.client.reviewdb.SystemConfig; import com.google.gerrit.client.rpc.Common; -import com.google.gerrit.server.GerritCall; import com.google.gerrit.server.GerritServer; import com.google.gerrit.server.UrlEncoded; import com.google.gerrit.server.config.AuthConfig; import com.google.gerrit.server.config.CanonicalWebUrl; import com.google.gerrit.server.config.Nullable; +import com.google.gerrit.server.http.GerritCall; import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwtorm.client.KeyUtil; import com.google.gwtorm.client.OrmException; diff --git a/src/main/java/com/google/gerrit/server/rpc/UiRpcModule.java b/src/main/java/com/google/gerrit/server/rpc/UiRpcModule.java index 5c69426b60..ce59496dd1 100644 --- a/src/main/java/com/google/gerrit/server/rpc/UiRpcModule.java +++ b/src/main/java/com/google/gerrit/server/rpc/UiRpcModule.java @@ -14,15 +14,15 @@ package com.google.gerrit.server.rpc; -import com.google.gerrit.server.config.ServletNameImpl; +import com.google.gerrit.server.http.RpcServletModule; import com.google.gerrit.server.patch.PatchDetailServiceImpl; -import com.google.gwtjsonrpc.client.RemoteJsonService; -import com.google.inject.Key; -import com.google.inject.Scopes; -import com.google.inject.servlet.ServletModule; /** Registers servlets to answer RPCs from client UI. */ -public class UiRpcModule extends ServletModule { +public class UiRpcModule extends RpcServletModule { + public UiRpcModule() { + super("/gerrit/rpc/"); + } + @Override protected void configureServlets() { serve("/login").with(OpenIdLoginServlet.class); @@ -39,21 +39,4 @@ public class UiRpcModule extends ServletModule { rpc(SuggestServiceImpl.class); rpc(SystemInfoServiceImpl.class); } - - private void rpc(Class clazz) { - String name = clazz.getSimpleName(); - if (name.endsWith("Impl")) { - name = name.substring(0, name.length() - 4); - } - rpc(name, clazz); - } - - private void rpc(final String name, Class clazz) { - final Key srv = - Key.get(GerritJsonServlet.class, ServletNameImpl.named(name)); - final GerritJsonServletProvider provider = - new GerritJsonServletProvider(clazz); - serve("/gerrit/rpc/" + name).with(srv); - bind(srv).toProvider(provider).in(Scopes.SINGLETON); - } } diff --git a/src/main/java/com/google/gerrit/server/ssh/NoShell.java b/src/main/java/com/google/gerrit/server/ssh/NoShell.java index 06be6b9063..b4eb39c946 100644 --- a/src/main/java/com/google/gerrit/server/ssh/NoShell.java +++ b/src/main/java/com/google/gerrit/server/ssh/NoShell.java @@ -14,7 +14,7 @@ package com.google.gerrit.server.ssh; -import com.google.gerrit.server.SshServlet; +import com.google.gerrit.server.http.SshServlet; import org.apache.sshd.server.ShellFactory; import org.spearce.jgit.lib.Constants; diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index dbcab649f9..4ef561c1ca 100644 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -16,6 +16,6 @@ - com.google.gerrit.server.GerritServletConfig + com.google.gerrit.server.http.GerritServletConfig