File Source: UserDataServlet.java

         /* 
    P/P   *  Method: org.apache.roller.weblogger.ui.struts2.ajax.UserDataServlet__static_init
          */
     1  /*
     2   * Licensed to the Apache Software Foundation (ASF) under one or more
     3   *  contributor license agreements.  The ASF licenses this file to You
     4   * under the Apache License, Version 2.0 (the "License"); you may not
     5   * use this file except in compliance with the License.
     6   * You may obtain a copy of the License at
     7   *
     8   *     http://www.apache.org/licenses/LICENSE-2.0
     9   *
    10   * Unless required by applicable law or agreed to in writing, software
    11   * distributed under the License is distributed on an "AS IS" BASIS,
    12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13   * See the License for the specific language governing permissions and
    14   * limitations under the License.  For additional information regarding
    15   * copyright in this work, please see the NOTICE file in the top level
    16   * directory of this distribution.
    17   */
    18  
    19  package org.apache.roller.weblogger.ui.struts2.ajax;
    20  
    21  import java.io.IOException;
    22  import java.util.Iterator;
    23  import java.util.List;
    24  import javax.servlet.ServletException;
    25  import javax.servlet.http.HttpServlet;
    26  import javax.servlet.http.HttpServletRequest;
    27  import javax.servlet.http.HttpServletResponse;
    28  import org.apache.roller.weblogger.WebloggerException;
    29  import org.apache.roller.weblogger.business.Weblogger;
    30  import org.apache.roller.weblogger.business.WebloggerFactory;
    31  import org.apache.roller.weblogger.business.UserManager;
    32  import org.apache.roller.weblogger.pojos.User;
    33  
    34  
    35  /**
    36   * Return list of users matching a startsWith strings. <br />
    37   * Accepts request params (none required):<br />
    38   *     startsWith: string to be matched against username and email address<br />
    39   *     enabled: true include only enabled users (default: no restriction<br />
    40   *     offset: offset into results (for paging)<br />
    41   *     length: number of users to return (max is 50)<br /><br />
    42   * List format:<br />
    43   *     username0, emailaddress0 <br/>
    44   *     username1, emailaddress1 <br/>
    45   *     username2, emailaddress2 <br/>
    46   *     usernameN, emailaddressN <br/>
    47   */
         /* 
    P/P   *  Method: void org.apache.roller.weblogger.ui.struts2.ajax.UserDataServlet()
          * 
          *  Postconditions:
          *    this.MAX_LENGTH == 50
          */
    48  public class UserDataServlet extends HttpServlet {
    49      
    50      private final int MAX_LENGTH = 50;
    51      
    52      public void doGet(HttpServletRequest request, 
    53                        HttpServletResponse response)
    54              throws ServletException, IOException {
    55          
                 /* 
    P/P           *  Method: void doGet(HttpServletRequest, HttpServletResponse)
                  * 
                  *  Preconditions:
                  *    request != null
                  *    response != null
                  * 
                  *  Presumptions:
                  *    init'ed(java.lang.Boolean.FALSE)
                  *    init'ed(java.lang.Boolean.TRUE)
                  *    java.util.Iterator:next(...)@74 != null
                  *    javax.servlet.http.HttpServletResponse:getWriter(...)@75 != null
                  *    javax.servlet.http.HttpServletResponse:getWriter(...)@76 != null
                  *    ...
                  * 
                  *  Test Vectors:
                  *    java.lang.String:equals(...)@60: {0}, {1}
                  *    java.lang.String:equals(...)@61: {0}, {1}
                  *    java.util.Iterator:hasNext(...)@73: {0}, {1}
                  */
    56          String startsWith = request.getParameter("startsWith");
    57          Boolean enabledOnly = null;
    58          int offset = 0;
    59          int length = MAX_LENGTH;
    60          if ("true".equals(request.getParameter("enabled"))) enabledOnly = Boolean.TRUE;
    61          if ("false".equals(request.getParameter("enabled"))) enabledOnly = Boolean.FALSE;
    62          try { offset = Integer.parseInt(request.getParameter("offset"));
    63          } catch (Throwable ignored) {}
    64          try { length = Integer.parseInt(request.getParameter("length"));
    65          } catch (Throwable ignored) {}
    66          
    67          Weblogger roller = WebloggerFactory.getWeblogger();
    68          try {
    69              UserManager umgr = roller.getUserManager();
    70              List users =
    71                      umgr.getUsersStartingWith(startsWith, enabledOnly, offset, length);
    72              Iterator userIter = users.iterator();
    73              while (userIter.hasNext()) {
    74                  User user = (User)userIter.next();
    75                  response.getWriter().print(user.getUserName());
    76                  response.getWriter().print(",");
    77                  response.getWriter().println(user.getEmailAddress());
    78              }
    79              response.flushBuffer();
    80          } catch (WebloggerException e) {
    81              throw new ServletException(e.getMessage());
    82          }
    83      }
    84      
    85  }








SofCheck Inspector Build Version : 2.18479
UserDataServlet.java 2009-Jan-02 14:25:34
UserDataServlet.class 2009-Sep-04 03:12:45