// -*- mode: java; c-basic-offset: 2; -*- // Copyright 2009-2011 Google, All Rights reserved // Copyright 2011-2012 MIT, All rights reserved // Released under the Apache License, Version 2.0 // http://www.apache.org/licenses/LICENSE-2.0 package com.google.appinventor.server; import com.google.appengine.api.utils.SystemProperty; import com.google.appinventor.shared.rpc.ServerLayout; import javax.servlet.http.HttpServletRequest; /** * TODO(user); * Useful server-related methods. Probably these should be moved elsewhere. * */ public class Server { // Start page for ODE/YA. This is where other servlets redirect to to get the main page public static final String START_PAGE = getStartPage(); // System property name to obtain GWT UI module private static final String START_PAGE_KEY = "StartPage"; public static String getStartPage() { return System.getProperty(START_PAGE_KEY); } /** * Indicates whether this server instance is running on app engine production * * @return true if this server instance is running on app engine production */ public static boolean isProductionServer() { return SystemProperty.environment.value() == SystemProperty.Environment.Value.Production; } /** * Returns URL built by appending path to the current server and the server * port and base URL. * * @param req HTTP request * @param path requested path * @return build URL */ public static String urlFromPath(HttpServletRequest req, String path) { // TODO(user): omit the port if it is the default port for a schema return req.getScheme() + "://" + req.getServerName() + ':' + req.getServerPort() + ServerLayout.ODE_BASEURL + path; } }