Subversion Repositories SmartDukaan

Rev

Rev 6912 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package in.shop2020.serving.controllers;

import in.shop2020.datalogger.EventType;
import in.shop2020.serving.services.UserSessionInfo;
import in.shop2020.thrift.clients.UserClient;
import in.shop2020.utils.DataLogger;

import java.util.Date;

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 Logger log = Logger.getLogger(Class.class);
        private static final long serialVersionUID = 1L;
        /**
         * 
         */
        
        public LogoutController() {
                super();
                
        }
    
    // GET /logout
    public String index() throws Exception {
                if(this.userinfo.isLoggedIn()){
                        logoutUser(this.userinfo.getUserId());
                        //Clean the old userinfo
                        userinfo = new UserSessionInfo();
                        clearUserCookies();
                }
                try {
//                  DataLogger.logData(EventType.LOGOUT, getSessionId(), userinfo.getUserId(), userinfo.getEmail());
                } catch(Exception e) {
                    log.error("Unable to logDate on AppEngine", e);
                }
                return "success";
        
    }
        

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

}