michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: package org.mozilla.gecko.sync.setup; michael@0: michael@0: import android.content.Intent; michael@0: michael@0: public class Constants { michael@0: // Constants for Firefox Sync SyncAdapter Accounts. michael@0: public static final String OPTION_SYNCKEY = "option.synckey"; michael@0: public static final String OPTION_USERNAME = "option.username"; michael@0: public static final String AUTHTOKEN_TYPE_PLAIN = "auth.plain"; michael@0: public static final String OPTION_SERVER = "option.serverUrl"; michael@0: public static final String DATA_ENABLE_ON_UPGRADE = "data.enableOnUpgrade"; michael@0: michael@0: public static final String DEFAULT_PROFILE = "default"; michael@0: michael@0: /** michael@0: * Name of file to pickle current account preferences to each sync. michael@0: *
michael@0: * Must not contain path separators! michael@0: */ michael@0: public static final String ACCOUNT_PICKLE_FILENAME = "sync.account.json"; michael@0: michael@0: /** michael@0: * Key in sync extras bundle specifying stages to sync this sync session. michael@0: *
michael@0: * Corresponding value should be a String JSON-encoding an object, the keys of
michael@0: * which are the stage names to sync. For example:
michael@0: * "{ \"stageToSync\": 0 }"
.
michael@0: */
michael@0: public static final String EXTRAS_KEY_STAGES_TO_SYNC = "sync";
michael@0:
michael@0: /**
michael@0: * Key in sync extras bundle specifying stages to skip this sync session.
michael@0: *
michael@0: * Corresponding value should be a String JSON-encoding an object, the keys of
michael@0: * which are the stage names to skip. For example:
michael@0: * "{ \"stageToSkip\": 0 }"
.
michael@0: */
michael@0: public static final String EXTRAS_KEY_STAGES_TO_SKIP = "skip";
michael@0:
michael@0: // Constants for Activities.
michael@0: public static final String INTENT_EXTRA_IS_SETUP = "isSetup";
michael@0: public static final String INTENT_EXTRA_IS_PAIR = "isPair";
michael@0: public static final String INTENT_EXTRA_IS_ACCOUNTERROR = "isAccountError";
michael@0:
michael@0: public static final int FLAG_ACTIVITY_REORDER_TO_FRONT_NO_ANIMATION =
michael@0: Intent.FLAG_ACTIVITY_REORDER_TO_FRONT |
michael@0: Intent.FLAG_ACTIVITY_NO_ANIMATION;
michael@0:
michael@0: // Constants for Account Authentication.
michael@0: public static final String AUTH_SERVER_VERSION = "1.1/";
michael@0: public static final String AUTH_SERVER_SUFFIX = "info/collections/";
michael@0:
michael@0: // Account Authentication Errors.
michael@0: public static final String AUTH_ERROR_NOUSER = "auth.error.badcredentials";
michael@0:
michael@0: // Links for J-PAKE setup help pages.
michael@0: public static final String LINK_FIND_CODE = "https://support.mozilla.org/kb/find-code-to-add-device-to-firefox-sync";
michael@0: public static final String LINK_FIND_ADD_DEVICE = "https://support.mozilla.org/kb/add-a-device-to-firefox-sync";
michael@0:
michael@0: // Constants for JSON payload.
michael@0: public static final String JSON_KEY_PAYLOAD = "payload";
michael@0: public static final String JSON_KEY_CIPHERTEXT = "ciphertext";
michael@0: public static final String JSON_KEY_HMAC = "hmac";
michael@0: public static final String JSON_KEY_IV = "IV";
michael@0: public static final String JSON_KEY_TYPE = "type";
michael@0: public static final String JSON_KEY_VERSION = "version";
michael@0: public static final String JSON_KEY_ETAG = "etag";
michael@0:
michael@0: public static final String JSON_KEY_ACCOUNT = "account";
michael@0: public static final String JSON_KEY_PASSWORD = "password";
michael@0: public static final String JSON_KEY_SYNCKEY = "synckey";
michael@0: public static final String JSON_KEY_SERVER = "serverURL";
michael@0: public static final String JSON_KEY_CLUSTER = "clusterURL";
michael@0: public static final String JSON_KEY_CLIENT_NAME = "clientName";
michael@0: public static final String JSON_KEY_CLIENT_GUID = "clientGUID";
michael@0: public static final String JSON_KEY_SYNC_AUTOMATICALLY = "syncAutomatically";
michael@0: public static final String JSON_KEY_TIMESTAMP = "timestamp";
michael@0:
michael@0: public static final String CRYPTO_KEY_GR1 = "gr1";
michael@0: public static final String CRYPTO_KEY_GR2 = "gr2";
michael@0:
michael@0: public static final String ZKP_KEY_GX1 = "gx1";
michael@0: public static final String ZKP_KEY_GX2 = "gx2";
michael@0:
michael@0: public static final String ZKP_KEY_ZKP_X1 = "zkp_x1";
michael@0: public static final String ZKP_KEY_ZKP_X2 = "zkp_x2";
michael@0: public static final String ZKP_KEY_B = "b";
michael@0: public static final String ZKP_KEY_GR = "gr";
michael@0: public static final String ZKP_KEY_ID = "id";
michael@0:
michael@0: public static final String ZKP_KEY_A = "A";
michael@0: public static final String ZKP_KEY_ZKP_A = "zkp_A";
michael@0:
michael@0: // J-PAKE errors.
michael@0: public static final String JPAKE_ERROR_CHANNEL = "jpake.error.channel";
michael@0: public static final String JPAKE_ERROR_NETWORK = "jpake.error.network";
michael@0: public static final String JPAKE_ERROR_SERVER = "jpake.error.server";
michael@0: public static final String JPAKE_ERROR_TIMEOUT = "jpake.error.timeout";
michael@0: public static final String JPAKE_ERROR_INTERNAL = "jpake.error.internal";
michael@0: public static final String JPAKE_ERROR_INVALID = "jpake.error.invalid";
michael@0: public static final String JPAKE_ERROR_NODATA = "jpake.error.nodata";
michael@0: public static final String JPAKE_ERROR_KEYMISMATCH = "jpake.error.keymismatch";
michael@0: public static final String JPAKE_ERROR_WRONGMESSAGE = "jpake.error.wrongmessage";
michael@0: public static final String JPAKE_ERROR_USERABORT = "jpake.error.userabort";
michael@0: public static final String JPAKE_ERROR_DELAYUNSUPPORTED = "jpake.error.delayunsupported";
michael@0: }