Subversion Repositories SmartDukaan

Rev

Rev 462 | Blame | 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.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 Log log = LogFactory.getLog(LogoutController.class);
        
        private String id;
        
        
        
        public LogoutController() {
                super();
                
        }
    
    // GET /logout
    public String index() throws Exception {
                if(this.userinfo.isLoggedIn()){
                        logoutUser(this.userinfo.getUserId());
                        this.session.removeAttribute("userinfo");
                        Cookie cookie1 = new Cookie("userid","");
                        cookie1.setMaxAge(0);
                this.response.addCookie(cookie1);
                }       
                return "success";
        
    }
        
    /**
     * 
     * @param id
     */
    public void setId(String id) {
        this.id = id;
    }

    public boolean logoutUser(long userId) throws Exception{
                UserContextServiceClient userContextServiceClient = null;
                in.shop2020.model.v1.user.UserContextService.Client userClient = null;

                userContextServiceClient = new UserContextServiceClient();
                userClient = userContextServiceClient.getClient();
                
                userClient.setUserAsLoggedOut(userId, (new Date()).getTime());
                
        return true;
    }

}