/**
   * session will be exclude for this broadcast
   *
   * @param msg
   * @param s
   * @return
   */
  public Future<Object> broadcast(Object msg, HttpSession s) {

    if (destroyed.get()) {
      throw new IllegalStateException("This Broadcaster has been destroyed and cannot be used");
    }

    Set<AtmosphereResource> subset = new HashSet<AtmosphereResource>();
    subset.addAll(resources);

    for (AtmosphereResource r : resources) {
      if (!r.getAtmosphereResourceEvent().isCancelled() && s.equals(r.getRequest().getSession())) {
        subset.remove(r);
      }
    }

    start();
    Object newMsg = filter(msg);
    if (newMsg == null) {
      return null;
    }

    BroadcasterFuture<Object> f =
        new BroadcasterFuture<Object>(newMsg, subset.size(), broadcasterListeners, this);
    messages.offer(new Entry(newMsg, subset, f, msg));
    return f;
  }
  /**
   * session will be exclude for this broadcast
   *
   * @param msg
   * @param s
   * @return
   */
  public Future<Object> broadcast(Object msg, HttpSession s) {

    if (destroyed.get()) {
      return futureDone(msg);
    }

    Set<AtmosphereResource> subset = new HashSet<AtmosphereResource>();
    subset.addAll(resources);

    for (AtmosphereResource r : resources) {
      if (!r.getAtmosphereResourceEvent().isCancelled() && s.equals(r.getRequest().getSession())) {
        subset.remove(r);
      }
    }

    start();
    Object newMsg = filter(msg);
    if (newMsg == null) {
      return futureDone(msg);
    }

    BroadcasterFuture<Object> f = new BroadcasterFuture<Object>(newMsg, subset.size(), this);
    dispatchMessages(new Entry(newMsg, subset, f, msg));
    return f;
  }
Esempio n. 3
0
  public void login() {
    RequestContext context = RequestContext.getCurrentInstance();
    FacesMessage msg = null;
    boolean loggedIn = false;

    if (username != null && password != null) {
      SystemUser su = seguridadService.logIn(username, password);
      if (su != null) {
        loggedIn = true;
        msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Bienvenido", su.getNombreCompleto());
        FacesContext.getCurrentInstance()
            .getExternalContext()
            .getSessionMap()
            .put("systemUser", su);
        Map<String, Object> appMap =
            FacesContext.getCurrentInstance().getExternalContext().getApplicationMap();
        HttpSession session1 = (HttpSession) appMap.get(su.getNombre());
        HttpSession session2 =
            (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false);
        if ((session1 != null) && !(session1.equals(session2))) {
          try {
            session1.invalidate();
          } catch (IllegalStateException e) {
          }
        }
        appMap.put(su.getNombre(), session2);
      } else {
        loggedIn = false;
        msg = new FacesMessage(FacesMessage.SEVERITY_WARN, "Login Error", "Credenciales inválidas");
      }
    } else {
      loggedIn = false;
      msg = new FacesMessage(FacesMessage.SEVERITY_WARN, "Login Error", "Credenciales inválidas");
    }

    FacesContext.getCurrentInstance().addMessage(null, msg);
    context.addCallbackParam("loggedIn", loggedIn);
  }
  /**
   * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
   *
   * @param request servlet request
   * @param response servlet response
   * @throws ServletException if a servlet-specific error occurs
   * @throws IOException if an I/O error occurs
   */
  protected void processRequest(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    response.setContentType("text/html");
    EntityManager em = emf.createEntityManager();
    dao_loggin dao = new logginDaoImpl(em);
    dao_rental rdao = new rentalDaoImpl(em);
    PrintWriter out = response.getWriter();
    HttpSession session = request.getSession();
    String username = request.getParameter("user");
    String pass = request.getParameter("pass");
    String idR = request.getParameter("id");

    e_loggin le = dao.getById(idR);
    if (session.equals("")) {
      out.println("<script type=\"text/javascript\">");
      out.println("alert('Anda Telah Log Out '); window.location.href = 'logginRental.jsp';");
      out.println("</script>");
    } else if (username.equals("") || pass.equals("") || idR.equals("")) {
      out.println("<script type=\"text/javascript\">");
      out.println(
          "alert('User Name atau User ID dan Password anda SALAH '); window.location.href = 'logginRental.jsp';");
      out.println("</script>");
    } else if (le != null) {
      try {
        HttpSession sess = request.getSession();
        sess.setAttribute("userID", idR);
        out.println("<script type=\"text/javascript\">");
        out.println("alert('Anda Berhasil Login '); window.location.href = 'kendaraanSer';");
        out.println("</script>");
      } catch (Exception e) {
        out.println("<script type=\"text/javascript\">");
        out.println("alert('ID User atau Password atau User Name anda ada yang salah');");
        out.println("location='logginRental.jsp'; ");
        out.println("</script>");
      }
    }
  }