Move HTTP related classes to an HTTP specific package

This cleans up the top level directory a bit, making it easier to
determine what the major purpose is for each section of code in
the server implementation.

Signed-off-by: Shawn O. Pearce <sop@google.com>
This commit is contained in:
Shawn O. Pearce 2009-08-01 08:40:23 -07:00
parent 4760516da6
commit b9e93f7ad5
24 changed files with 82 additions and 46 deletions

View File

@ -23,5 +23,5 @@
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-war ${resource_loc:/gerrit/src/main/webapp} -startupUrl /Gerrit com.google.gerrit.Gerrit"/>
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="gerrit"/>
<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.maven.ide.eclipse.launchconfig.sourcepathProvider"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx256M -DGerritServer=${resource_loc:/gerrit/src/main/java/GerritServer.properties} -Dcom.google.gerrit.server.BecomeAnyAccountLoginServlet=true"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx256M -DGerritServer=${resource_loc:/gerrit/src/main/java/GerritServer.properties} -Dcom.google.gerrit.server.http.BecomeAnyAccountLoginServlet=true"/>
</launchConfiguration>

View File

@ -23,5 +23,5 @@
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-war ${resource_loc:/gerrit/src/main/webapp} -startupUrl /Gerrit com.google.gerrit.Gerrit"/>
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="gerrit"/>
<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.maven.ide.eclipse.launchconfig.sourcepathProvider"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx256M -XstartOnFirstThread -DGerritServer=${resource_loc:/gerrit/src/main/java/GerritServer.properties} -Dcom.google.gerrit.server.BecomeAnyAccountLoginServlet=true"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx256M -XstartOnFirstThread -DGerritServer=${resource_loc:/gerrit/src/main/java/GerritServer.properties} -Dcom.google.gerrit.server.http.BecomeAnyAccountLoginServlet=true"/>
</launchConfiguration>

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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<? extends RemoteJsonService> 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<? extends RemoteJsonService> clazz) {
final Key<GerritJsonServlet> 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);
}
}

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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<? extends RemoteJsonService> 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<? extends RemoteJsonService> clazz) {
final Key<GerritJsonServlet> 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);
}
}

View File

@ -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;

View File

@ -16,6 +16,6 @@
</filter-mapping>
<listener>
<listener-class>com.google.gerrit.server.GerritServletConfig</listener-class>
<listener-class>com.google.gerrit.server.http.GerritServletConfig</listener-class>
</listener>
</web-app>