Criando uma lista na sessão com DWR – Parte 3
Na parte 3 do nosso artigo vamos ver que tipos de métodos iremos criar no nosso FacadeAjaxSession explicado no artigo anterior.
Agora veremos os trechos dos novos métodos:
Método para adicionar um objeto na sessão:
public void addMapSession(BeanSession beanSession){ Session session = new SessionFacade();//01 Map<String, BeanSession> sessionMap = null;//02 if(session.getAttribute("sessionMap") != null){ //03 sessionMap = (Map) session.getAttribute("sessionMap");//04 }else{ sessionMap = new HashMap<String, BeanSession>();//05 } String keyMap = beanSession.getId() + "_" + beanSession.getName();//06 beanSession.setKeyMap(keyMap); //07 sessionMap.put(keyMap, beanSession); //08 session.setAttribute("sessionMap", sessionMap); //09 }
Listagem 03: Método que adiciona em um atributo da sessão o objeto passado como parâmetro.
Na listagem 03 vimos o método addMapSession() que espera como parâmetro um BeanSession(ver listagem 01), veja baixo:
01:Criamos o objeto session a partir de nossa classe SessionFacade;
02:Criamos um Map(sessionMap);
03: Recuperamos da sessão o atributo utilizado, e verificamos se o mesmo já existe;
04:Caso o Atributo exista(linha 03) pegamos o valor desse atributo e adicionamos no Map(sessionMap);
05:Caso o atributo não exista inicializamos o sessionMap;
06:Criamos uma variável que servirá como identificador do objeto, que será utilizado no lado JavaScript para identificar o objeto que o usuário está clicando. OS: Como não estou utilizando dados de um banco, tive que fazer essa “adaptação” para simular o id. O que eu fiz foi nada mais que garantir que o objeto que estou inserindo neste momento não terá o mesmo id do próximo;
07:Adiciono esse keyMap(identifica o mapa, linha 06) no meu BeanSession;
08:Adiciono no sessionMap a chave do meu mapa(keyMap) e o meu objeto(BeanSession).
Método para listar um objeto na sessão:
public Map listMapSession() throws Throwable { Session session = new SessionFacade(); Map<String, BeanSession> sessionMap = null; if (session.getAttribute("sessionMap") != null) { sessionMap = (Map) session.getAttribute("sessionMap"); } else { sessionMap = new HashMap<String, BeanSession>(); } return sessionMap; }
Listagem 04: Método que retorna um Map da sessão.
Este método dispensa explicação mais detalhada, ele apenas retorna um Map que está salvo em um determinado atributo na sessão.
Método para excluir um objeto da sessão:
public void removeValueMap(BeanSession beanSession) throws Throwable { Session session = new SessionFacade(); Map sessionMap = null; if (session.getAttribute("sessionMap") != null) { sessionMap = (Map) session.getAttribute("sessionMap"); } else { sessionMap = new HashMap<String, BeanSession>(); } if (sessionMap.containsKey(beanSession.getKeyMap())) { sessionMap.remove(beanSession.getKeyMap()); } session.setAttribute("sessionMap", sessionMap); }
Listagem 05: Método que exclui o objeto passado como parâmetro da sessão.
Um método também bem simples. Recebe o objeto como parâmetro, recupera o valor da sessão, verifica se existe um objeto no Map através da chave (keyMap), caso exista ele remove o objeto do Map e adiciona novamente o Map na sessão.
São métodos simples e claro precisam de mais alguns requintes, mas, esse não é o objetivo do nosso artigo. Quero apenas exemplificar essa funcionalidade.
No próximo artigo(parte 4) iremos ver a implementação no lado JavaScript.
Abraços
deep web drug url https://heinekendrugsonline.com/ darknet market
cheap generic lexapro online
deep web search https://worldonlinedrugs.com/ darkweb marketplace
darknet drug market https://worldoniondarkweb.com/ dark market link
tor markets links https://heinekenoniondarkmarket.com/ dark market 2023
drug markets dark web https://cypherdarkmarketplace.com/ dark market
dark web link https://worldmarketplace24.com/ onion market
darknet search engine https://heineken-onion-market.com/ tor market
black internet https://cypher-dark-market.com/ deep web markets
dark web sites https://world-onion-market.com/ how to get on dark web
best darknet markets https://world-drugsonline.com/ dark web market links
dark web markets https://heinekendrugsmarketplace.com/ darkmarket link
purchase diltiazem without prescription order zyloprim 300mg order allopurinol without prescription
dark web link https://cypher-darkmarket-online.com/ darkmarkets
deep web links https://darkmarketworld.com/ deep web search
tor markets https://cypherdrugsmarketplace.com/ deep web drug links
darkweb marketplace https://cypherdarkwebmarket.com/ deep web links
dark web market links https://world-onlinedrugs.com/ tor dark web
dark market link https://dark-market-world.com/ best darknet markets
I have read so many articles or reviews concerning the
blogger lovers except this article is genuinely a nice piece of writing, keep it up.
dark market url https://world-darkmarket.com/ deep web search
deep web search https://kingdom-darkmarket.com/ tor marketplace
dark market link https://cyphermarket-darknet.com/ deep web drug store
dark web search engines https://dark-market-heineken.com/ dark web markets
blackweb official website https://worlddarkweb.com/ darknet search engine
black internet https://cyphermarket-url.com/ darknet search engine
tor darknet https://heineken-darknet-drugstore.com/ dark web markets
darknet market lists https://world-onion-darkweb.com/ dark market 2023
darkweb marketplace https://heineken-online-drugs.com/ deep dark web
drug levaquin
dark market url https://world-online-drugs.com/ dark market onion
dark market link https://world-darknet-drugstore.com/ darknet site
deep web markets https://darkweb-cypher.com/ tor marketplace
dark market list https://darkmarket-world.com/ blackweb
dark web websites https://heineken-drugsonline.com/ dark market list
dark web sites links https://heinekenoniondarkweb.com/ how to get on dark web
darknet drug market https://heineken-onlinedrugs.com/ dark web market
darkmarket list https://worldoniondarkweb.com/ darknet search engine
tor marketplace https://heinekenonlinedrugs.com/ deep web drug links
dark web markets https://cypherdarkmarketplace.com/ blackweb
dark market list https://worldmarketplace24.com/ dark market url
darknet links https://heineken-onion-market.com/ deep web search
deep web sites https://world-drugsonline.com/ tor market url
darkmarket link https://cypherdarkmarketx.com/ deep web search
darknet market https://cypher-onion-darkmarket.com/ darknet market links
tor markets https://darkmarketcypher.com/ deep web drug markets
darknet site https://cypheroniondarkmarket.com/ darkmarket url
dark market https://cypher-darknet.com/ dark market
the dark internet https://darkmarketworld.com/ darkmarket
darkmarket 2023 https://heinekendrugsmarket.com/ dark market 2023