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
darkmarket link onion market
deep web drug links best darknet markets
dark web access darkmarket link
dark web search engine tor market url
deep web drug store dark net
darkmarket link dark web links
dark market onion dark web markets
free dark web dark web access
dark websites dark web websites
deep dark web drug markets onion
best darknet markets deep web search
tor dark web darknet websites
dark web markets darknet drug store
darkmarket url deep web drug markets
darknet market list deep web sites
Despite the strict guidelines inn South Korea, some ibvestors are prepared to threat their wealth and lives for the gambling
market.
Feel free to visit my blog post: read more
Be informed about the newest promotions, free spins, cashbacks, annd a lot more.
Have a look at my blog … webpage
dark web links drug markets onion
On Red Dog, you can play games such as Bubble Bubble 2, Princeess Warrior, Egyptian Gold, and
Hyper Wins.
Feeel free to visit my web site … get more info
lasix 20 mg price
free dark web dark market
dark web drug marketplace darknet marketplace
tor darknet darknet websites
deep web drug store darkmarkets
dark market dark web link
where can you buy acyclovir cream
tor dark web deep web markets
It regularly accounts for at least 75% of the readily available games
at a distinct casino.
Feel free to visit myy web page 온라인바카라
deep web drug store dark market 2023
This will give you a sound foundation at the beginning of your gambling ride.
Stop by my site :: 카지노
tor market links tor markets links
dark web market links darknet drug market
avodart generic equivalent
darknet market dark web links
blackweb official website onion market
darknet search engine deep web search
deep web drug markets dark web links
deep web markets dark web drug marketplace
darknet markets 2023 dark market url
onion market dark web site
dark market onion darknet search engine
darknet drug store dark websites
dark web link dark website
deep web links dark internet
deep web markets dark web links
dark internet black internet
darknet market lists darkmarket url
deep web drug markets dark market
darknet market lists dark market 2023
dark web sites dark markets 2023