@@ -0,0 +1,2522 @@
+// Copyright 2019 Google LLC%0A//%0A// Licensed under the Apache License, Version 2.0 (the %22License%22);%0A// you may not use this file except in compliance with the License.%0A// You may obtain a copy of the License at%0A//%0A//     https://www.apache.org/licenses/LICENSE-2.0%0A//%0A// Unless required by applicable law or agreed to in writing, software%0A// distributed under the License is distributed on an %22AS IS%22 BASIS,%0A// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A// See the License for the specific language governing permissions and%0A// limitations under the License.%0A%0Apackage com.google.sps.servlets;%0A%0Aimport com.google.appengine.api.users.UserService;%0Aimport com.google.appengine.api.users.UserServiceFactory;%0Aimport com.google.gson.Gson;%0Aimport com.google.sps.data.AuthenticationInformation;%0Aimport java.io.IOException;%0Aimport javax.servlet.annotation.WebServlet;%0Aimport javax.servlet.http.HttpServlet;%0Aimport javax.servlet.http.HttpServletRequest;%0Aimport javax.servlet.http.HttpServletResponse;%0A%0A/**%0A * Servlet with a GET handler that returns the login status and information about the user.%0A */%0A@WebServlet(%22/login-status%22)%0Apublic class LoginStatusServlet extends HttpServlet %7B%0A  private UserService userService = UserServiceFactory.getUserService();%0A%0A  private static final String HOME_PAGE_URL = %22/%22;%0A  private static final String LOGIN_PAGE_URL = %22/login.html%22;%0A%0A  @Override%0A  public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException %7B%0A    boolean loggedIn = userService.isUserLoggedIn();%0A    AuthenticationInformation authentication;%0A%0A    if (loggedIn) %7B%0A      String logoutUrl = userService.createLogoutURL(LOGIN_PAGE_URL);%0A      String email = userService.getCurrentUser().getEmail();%0A      authentication = new AuthenticationInformation(logoutUrl, email);%0A    %7D else %7B%0A      String loginUrl = userService.createLoginURL(HOME_PAGE_URL);%0A      authentication = new AuthenticationInformation(loginUrl);%0A    %7D%0A%0A    // Convert the authentication information to JSON.%0A    String json = convertToJson(authentication);%0A%0A    // Send the JSON as the response.%0A    response.setContentType(%22application/json;%22);%0A    response.getWriter().println(json);%0A  %7D%0A%0A  /**%0A   * Converts an AuthenticationInformation object into a JSON string using the Gson library.%0A   */%0A  private static String convertToJson(AuthenticationInformation authenticationInformation) %7B%0A    Gson gson = new Gson();%0A    String json = gson.toJson(authenticationInformation);%0A    return json;%0A  %7D%0A%7D%0A

Add login status servlet.