Subversion Repositories SmartDukaan

Rev

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

package in.shop2020.serving.controllers;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.apache.log4j.Logger;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Actions;
import org.apache.struts2.convention.annotation.Result;
import org.apache.thrift.TException;
import org.apache.thrift.transport.TTransportException;

import in.shop2020.serving.utils.Utils;
import in.shop2020.thrift.clients.HelperClient;
import in.shop2020.utils.HelperServiceException;
import in.shop2020.utils.QuickLink;

@Result(name = "index", location = "quicklinks-index.vm")
public class QuicklinksController extends BaseController {
        
        private static Logger log = Logger.getLogger(Class.class);
        
        private Map<String, String> quicklinksMap = null;
        private Map<String, String> rechargelinksMap = null;

        @Actions({
                @Action("/quicklinks"),
                @Action("/rechargelinks")
        })
        public String index()   {
                if(rechargelinksMap == null){
                        rechargelinksMap = new HashMap<String, String>();
                        Map<String, Map<String, String>> uriMap = Utils.getUriOperatorMap();
                        for(String key: uriMap.keySet()){
                                rechargelinksMap.put(key, uriMap.get(key).get("Name") + " Recharge Online");
                        }
                }
                if(quicklinksMap == null){
                        quicklinksMap = new HashMap<String, String>();
                        try {
                                HelperClient helperServiceClient = new HelperClient();
                                in.shop2020.utils.HelperService.Client helperClient = helperServiceClient.getClient();
                                
                                List<QuickLink> quickLinks = helperClient.getQuickLinks();
                                for (QuickLink quicklink: quickLinks)   {
                                        quicklinksMap.put(quicklink.getUrl(), quicklink.getText());
                                }
                        } catch (TTransportException e) {
                                log.error("" + e);
                        } catch (HelperServiceException e) {
                                log.error("" + e);
                        } catch (TException e) {
                                log.error("" + e);
                        }
                }
                return "index";
        }
        
        public Map<String, String> getQuickLinks()      {
                if(request.getRequestURI().contains("rechargelinks")){
                        return this.rechargelinksMap;
                }else{
                        return this.quicklinksMap;
                }
        }
}