Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(205)

Unified Diff: components/devtools_bridge/test/android/javatests/src/org/chromium/components/devtools_bridge/ui/RemoteInstanceListFragment.java

Issue 1142463003: Remove devtools_bridge component (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/devtools_bridge/test/android/javatests/src/org/chromium/components/devtools_bridge/ui/RemoteInstanceListFragment.java
diff --git a/components/devtools_bridge/test/android/javatests/src/org/chromium/components/devtools_bridge/ui/RemoteInstanceListFragment.java b/components/devtools_bridge/test/android/javatests/src/org/chromium/components/devtools_bridge/ui/RemoteInstanceListFragment.java
deleted file mode 100644
index 8441da0e504f24335057a525c0a5522a19d6ff6f..0000000000000000000000000000000000000000
--- a/components/devtools_bridge/test/android/javatests/src/org/chromium/components/devtools_bridge/ui/RemoteInstanceListFragment.java
+++ /dev/null
@@ -1,350 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.components.devtools_bridge.ui;
-
-import android.accounts.Account;
-import android.accounts.AccountManager;
-import android.accounts.AccountManagerCallback;
-import android.accounts.AccountManagerFuture;
-import android.app.Activity;
-import android.app.ListFragment;
-import android.content.Intent;
-import android.os.AsyncTask;
-import android.os.Bundle;
-import android.util.Log;
-import android.view.ContextMenu;
-import android.view.LayoutInflater;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ArrayAdapter;
-import android.widget.ListView;
-import android.widget.Toast;
-
-import org.chromium.components.devtools_bridge.RTCConfiguration;
-import org.chromium.components.devtools_bridge.SessionBase;
-import org.chromium.components.devtools_bridge.apiary.ApiaryClientFactory;
-import org.chromium.components.devtools_bridge.apiary.TestApiaryClientFactory;
-import org.chromium.components.devtools_bridge.commands.Command;
-import org.chromium.components.devtools_bridge.commands.CommandSender;
-import org.chromium.components.devtools_bridge.gcd.RemoteInstance;
-
-import java.io.IOException;
-import java.util.List;
-
-/**
- * Fragment of application for manual testing the DevTools bridge. Shows instances
- * registered in GCD and lets unregister them.
- */
-public abstract class RemoteInstanceListFragment extends ListFragment {
- private static final String TAG = "RemoteInstanceListFragment";
- private static final String NO_ID = "";
- private static final int CODE_ACCOUNT_SELECTED = 1;
-
- private final TestApiaryClientFactory mClientFactory = new TestApiaryClientFactory();
- private ArrayAdapter<RemoteInstance> mListAdapter;
- private String mOAuthToken;
- private RemoteInstance mSelected;
-
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- mListAdapter = new ArrayAdapter<RemoteInstance>(
- getActivity(), android.R.layout.simple_list_item_1);
- new UpdateListAction().execute();
- setListAdapter(mListAdapter);
- }
-
- @Override
- public void onDestroy() {
- new AsyncTask<Void, Void, Void>() {
- @Override
- protected final Void doInBackground(Void... args) {
- mClientFactory.close();
- return null;
- }
- }.execute();
- super.onDestroy();
- }
-
- @Override
- public View onCreateView(
- LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- View root = super.onCreateView(inflater, container, savedInstanceState);
- registerForContextMenu(root);
- return root;
- }
-
- @Override
- public void onListItemClick(ListView listView, View view, int position, long id) {
- mSelected = mListAdapter.getItem(position);
- if (mOAuthToken == null) {
- signIn();
- } else {
- getActivity().openContextMenu(view);
- }
- }
-
- @Override
- public void onCreateContextMenu(
- ContextMenu menu, View view, ContextMenu.ContextMenuInfo menuInfo) {
- super.onCreateContextMenu(menu, view, menuInfo);
-
- if (mOAuthToken == null) return;
-
- menu.add("Connect")
- .setOnMenuItemClickListener(new ConnectAction())
- .setEnabled(mSelected != null);
- menu.add("Send invalid offer")
- .setOnMenuItemClickListener(new SendInvalidOfferAction())
- .setEnabled(mSelected != null);
- menu.add("Delete")
- .setOnMenuItemClickListener(new DeleteInstanceAction(mSelected))
- .setEnabled(mSelected != null);
- menu.add("Update list")
- .setOnMenuItemClickListener(new UpdateListAction());
- menu.add("Delete all")
- .setOnMenuItemClickListener(new DeleteAllAction());
- }
-
- public void signIn() {
- AccountManager manager = AccountManager.get(getActivity());
-
- Intent intent = manager.newChooseAccountIntent(
- null /* selectedAccount */,
- null /* allowableAccounts */,
- new String[] { "com.google" } /* allowableAccountTypes */,
- true /* alwaysPromptForAccount */,
- "Sign into GCD" /* descriptionOverrideText */,
- null /* addAccountAuthTokenType */,
- null /* addAccountRequiredFeatures */,
- null /* addAccountOptions */);
- startActivityForResult(intent, CODE_ACCOUNT_SELECTED);
- }
-
- @Override
- public void onActivityResult(final int requestCode, final int resultCode, final Intent data) {
- if (requestCode == CODE_ACCOUNT_SELECTED && resultCode == Activity.RESULT_OK) {
- queryOAuthToken(new Account(
- data.getStringExtra(AccountManager.KEY_ACCOUNT_NAME),
- data.getStringExtra(AccountManager.KEY_ACCOUNT_TYPE)));
- }
- }
-
- protected abstract void connect(String oAuthToken, String remoteInstanceId);
-
- public void queryOAuthToken(Account accout) {
- AccountManager manager = AccountManager.get(getActivity());
-
- manager.getAuthToken(
- accout,
- "oauth2:" + ApiaryClientFactory.OAUTH_SCOPE, null /* options */, getActivity(),
- new AccountManagerCallback<Bundle>() {
- @Override
- public void run(AccountManagerFuture<Bundle> future) {
- try {
- mOAuthToken = future.getResult().getString(
- AccountManager.KEY_AUTHTOKEN);
- updateList();
- } catch (Exception e) {
- Log.d(TAG, "Failed to get token: ", e);
- }
- }
- }, null);
- }
-
- public void updateList() {
- new UpdateListAction().execute();
- }
-
- private final class ConnectAction implements MenuItem.OnMenuItemClickListener {
- @Override
- public boolean onMenuItemClick(MenuItem item) {
- if (mOAuthToken != null && mSelected != null) {
- connect(mOAuthToken, mSelected.id);
- return true;
- }
- return false;
- }
- }
-
- private abstract class AsyncAction extends AsyncTask<Void, Void, Boolean>
- implements MenuItem.OnMenuItemClickListener {
- private final String mActionName;
-
- protected AsyncAction(String actionName) {
- mActionName = actionName;
- }
-
- @Override
- public boolean onMenuItemClick(MenuItem item) {
- execute();
- return true;
- }
-
- @Override
- protected final Boolean doInBackground(Void... args) {
- try {
- doInBackgroundImpl();
- return Boolean.TRUE;
- } catch (IOException e) {
- Log.e(TAG, mActionName + " failed", e);
- return Boolean.FALSE;
- }
- }
-
- @Override
- protected void onPostExecute(Boolean success) {
- if (Boolean.TRUE.equals(success)) {
- onSuccess();
- showToast(mActionName + " completed");
- } else {
- onFailure();
- showToast(mActionName + " failed");
- }
- }
-
- protected void showToast(String message) {
- Toast.makeText(getActivity(), message, Toast.LENGTH_SHORT).show();
- }
-
- protected abstract void doInBackgroundImpl() throws IOException;
- protected abstract void onSuccess();
- protected void onFailure() {}
- }
-
- private final class SendInvalidOfferAction extends AsyncAction {
- private final String mOAuthTokenCopy = mOAuthToken;
- private final RemoteInstance mSelectedCopy = mSelected;
- private IOException mException;
-
- public SendInvalidOfferAction() {
- super("Sending invalid offer");
- }
-
- @Override
- protected final void doInBackgroundImpl() throws IOException {
- if (mOAuthTokenCopy == null || mSelected == null) {
- throw new IOException("Action cann't be applied.");
- }
-
- final String sessionId = "sessionId";
- final String offer = "INVALID_OFFER";
- final RTCConfiguration config = new RTCConfiguration();
-
- CommandSender sender = new CommandSender() {
- @Override
- protected void send(Command command, Runnable completionCallback) {
- try {
- mClientFactory.newTestGCDClient(mOAuthTokenCopy)
- .send(mSelectedCopy.id, command);
- } catch (IOException e) {
- mException = e;
- command.setFailure("IO exception");
- } finally {
- completionCallback.run();
- }
- }
- };
-
- sender.startSession(sessionId, config, offer, new SessionBase.NegotiationCallback() {
- @Override
- public void onSuccess(String answer) {
- mException = new IOException("Unexpected success");
- }
-
- @Override
- public void onFailure(String errorMessage) {
- Log.i(TAG, "Expected failure: " + errorMessage);
- }
- });
-
- if (mException != null)
- throw mException;
- }
-
- @Override
- protected void onSuccess() {
- }
- }
-
- private final class UpdateListAction extends AsyncAction {
- private final String mOAuthTokenCopy = mOAuthToken;
- private List<RemoteInstance> mResult;
-
- public UpdateListAction() {
- super("Updating instance list");
- }
-
- @Override
- protected final void doInBackgroundImpl() throws IOException {
- if (mOAuthTokenCopy == null) return;
-
- mResult = mClientFactory.newTestGCDClient(mOAuthTokenCopy).fetchInstances();
- }
-
- @Override
- protected void onSuccess() {
- mListAdapter.clear();
- if (mOAuthTokenCopy == null) {
- mListAdapter.add(new RemoteInstance(NO_ID, "Sign in"));
- } else if (mResult.size() > 0) {
- mListAdapter.addAll(mResult);
- } else {
- mListAdapter.add(new RemoteInstance(NO_ID, "Empty list"));
- }
- }
-
- @Override
- protected void onFailure() {
- mListAdapter.clear();
- mListAdapter.add(new RemoteInstance(NO_ID, "Update failed"));
- }
-
- @Override
- protected void showToast(String message) {}
- }
-
- private final class DeleteInstanceAction extends AsyncAction {
- private final String mOAuthTokenCopy = mOAuthToken;
- private final RemoteInstance mInstance;
-
- public DeleteInstanceAction(RemoteInstance instance) {
- super("Deleting instance");
- mInstance = instance;
- }
-
- @Override
- protected final void doInBackgroundImpl() throws IOException {
- mClientFactory.newTestGCDClient(mOAuthTokenCopy).deleteInstance(mInstance.id);
- }
-
- @Override
- protected void onSuccess() {
- updateList();
- }
- }
-
- private final class DeleteAllAction extends AsyncAction {
- private final String mOAuthTokenCopy = mOAuthToken;
-
- public DeleteAllAction() {
- super("Deleting all");
- }
-
- @Override
- protected final void doInBackgroundImpl() throws IOException {
- for (RemoteInstance instance :
- mClientFactory.newTestGCDClient(mOAuthTokenCopy).fetchInstances()) {
- mClientFactory.newTestGCDClient(mOAuthTokenCopy).deleteInstance(instance.id);
- }
- }
-
- @Override
- protected void onSuccess() {
- updateList();
- }
- }
-}

Powered by Google App Engine
This is Rietveld 408576698