Subversion Repositories SmartDukaan

Rev

Rev 832 | Rev 1044 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

/**
 * 
 */
package in.shop2020.serving.controllers;

import in.shop2020.thrift.clients.UserContextServiceClient;

import java.util.Date;

import javax.servlet.http.Cookie;

import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
import org.apache.log4j.Logger;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;

/**
 * @author rajveer
 *
 */
@Results({
    @Result(name="success", type="redirectAction", 
                params = {"actionName" , "home"})
})

public class LogoutController extends BaseController {

        
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
        /**
         * 
         */
        private static Logger log = Logger.getLogger(Class.class);
        
        public LogoutController() {
                super();
                
        }
    
    // GET /logout
    public String index() throws Exception {
                if(this.userinfo.isLoggedIn()){
                        logoutUser(this.userinfo.getUserId());
                        this.session.removeAttribute("userinfo");
                        Cookie uidCookie = cookiesMap.get("uid");
                        uidCookie.setMaxAge(0);
                this.response.addCookie(uidCookie);
                }       
                return "success";
        
    }
        

    public boolean logoutUser(long userId) throws Exception{
                UserContextServiceClient userContextServiceClient =new UserContextServiceClient();
                in.shop2020.model.v1.user.UserContextService.Client userClient = userContextServiceClient.getClient();
                
                userClient.setUserAsLoggedOut(userId, (new Date()).getTime());
                
        return true;
    }

}