summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/google/gerrit/client/rpc/GerritCallback.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/gerrit/client/rpc/GerritCallback.java')
-rw-r--r--src/main/java/com/google/gerrit/client/rpc/GerritCallback.java79
1 files changed, 0 insertions, 79 deletions
diff --git a/src/main/java/com/google/gerrit/client/rpc/GerritCallback.java b/src/main/java/com/google/gerrit/client/rpc/GerritCallback.java
deleted file mode 100644
index dd69d517b0..0000000000
--- a/src/main/java/com/google/gerrit/client/rpc/GerritCallback.java
+++ /dev/null
@@ -1,79 +0,0 @@
-// Copyright (C) 2008 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.client.rpc;
-
-import com.google.gerrit.client.ErrorDialog;
-import com.google.gerrit.client.Gerrit;
-import com.google.gerrit.client.NotSignedInDialog;
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.user.client.rpc.AsyncCallback;
-import com.google.gwt.user.client.rpc.InvocationException;
-import com.google.gwtjsonrpc.client.JsonUtil;
-import com.google.gwtjsonrpc.client.RemoteJsonException;
-import com.google.gwtjsonrpc.client.ServerUnavailableException;
-
-/** Abstract callback handling generic error conditions automatically */
-public abstract class GerritCallback<T> implements AsyncCallback<T> {
- public void onFailure(final Throwable caught) {
- if (isNotSignedIn(caught) || isInvalidXSRF(caught)) {
- new NotSignedInDialog().center();
-
- } else if (isNoSuchEntity(caught)) {
- new ErrorDialog(Gerrit.C.notFoundBody()).center();
-
- } else if (isNoSuchAccount(caught)) {
- final String msg = caught.getMessage();
- final String who = msg.substring(NoSuchAccountException.MESSAGE.length());
- final ErrorDialog d = new ErrorDialog(Gerrit.M.noSuchAccountMessage(who));
- d.setText(Gerrit.C.noSuchAccountTitle());
- d.center();
-
- } else if (isNameAlreadyUsed(caught)) {
- new ErrorDialog(Gerrit.C.nameAlreadyUsedBody()).center();
-
- } else if (caught instanceof ServerUnavailableException) {
- new ErrorDialog(RpcConstants.C.errorServerUnavailable()).center();
-
- } else {
- GWT.log(getClass().getName() + " caught " + caught, caught);
- new ErrorDialog(caught).center();
- }
- }
-
- private static boolean isInvalidXSRF(final Throwable caught) {
- return caught instanceof InvocationException
- && caught.getMessage().equals(JsonUtil.ERROR_INVALID_XSRF);
- }
-
- private static boolean isNotSignedIn(final Throwable caught) {
- return caught instanceof RemoteJsonException
- && caught.getMessage().equals(NotSignedInException.MESSAGE);
- }
-
- protected static boolean isNoSuchEntity(final Throwable caught) {
- return caught instanceof RemoteJsonException
- && caught.getMessage().equals(NoSuchEntityException.MESSAGE);
- }
-
- private static boolean isNoSuchAccount(final Throwable caught) {
- return caught instanceof RemoteJsonException
- && caught.getMessage().startsWith(NoSuchAccountException.MESSAGE);
- }
-
- private static boolean isNameAlreadyUsed(final Throwable caught) {
- return caught instanceof RemoteJsonException
- && caught.getMessage().equals(NameAlreadyUsedException.MESSAGE);
- }
-}