// Copyright 2012 Google Inc. All Rights Reserved. // // 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.collide.shared; /** * Yes. Another shared constants file across client and server. */ public final class FrontendConstants { // TODO - might need to move these if the FE doesn't actually look at them /** Constants relating to file upload */ public static final class UploadConstants { /** The globally unique ID for this upload session */ public static final String SESSION_ID = "sessionId"; /** The ID of the workspace these files are uploading to */ public static final String WORKSPACE_ID = "workspaceId"; /** The workspace path for the file */ public static final String WORKSPACE_PATH = "workspacePath"; /** The number of file failures in the metadata */ public static final String FILE_FAILURE_SIZE = "fileFailureCount"; /** The prefix for each file path in the metadata */ public static final String FILE_FAILURE_PREFIX = "fileFailure"; /** The failure message for the upload */ public static final String FAILURE_MESSAGE = "failureMessage"; /** The string inside a path that will cause a simulated network failure */ public static final String SIMULATED_NETWORK_FAILURE_PATH_SUBSTRING = "simulateNetworkFailure"; /** The string inside a path that will cause a simulated processing failure */ public static final String SIMULATED_PROCESSING_FAILURE_PATH_SUBSTRING = "simulateProcessingFailure"; } /** * The name of the header for attaching the bootstrap client id to each * request. */ public static final String CLIENT_BOOTSTRAP_ID_HEADER = "X-Bootstrap-ClientId"; /** * Path for provisioning a browser channel. */ public static final String BROWSER_CHANNEL_PATH = "/channel/comm"; /** * Test Path required for provisioning a browser channel. */ public static final String BROWSER_CHANNEL_TEST_PATH = "/channel/test"; /** * Query parameter sent with browser channel requests by the client to * identify itself to the frontend. */ public static final String CLIENTID_PARAM_NAME = "clientId"; /** * Query parameter used to name a resource in a given workspace. */ public static final String FILE_PARAM_NAME = "file"; /** * Maximum allowed length of project names. */ public static final int MAX_PROJECT_NAME_LEN = 128; /** * Maximum allowed size for uploaded files. */ public static final long MAX_UPLOAD_FILE_SIZE = 4L * 1024 * 1024; // 4MB /** * The name of the header for attaching an XSRF token to each request. */ public static final String XSRF_TOKEN_HEADER = "X-Xsrf-Token"; /** * The name of the header that we keep the Client->Frontend protocol version hash. */ public static final String CLIENT_VERSION_HASH_HEADER = "X-Version-Hash"; /** * The default depth to load the file tree and sub-directories. A depth of -1 indicates infinite * depth. */ public static final int DEFAULT_FILE_TREE_DEPTH = -1; private FrontendConstants() { } }