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
dark web drug marketplace deep web drug url
Touche. Outstanding arguments. Keep up the good effort.
What’s up to all, how is everything, I think every one is
getting more from this site, and your views are
pleasant for new users.
WOW just what I was searching for. Came here by searching for judi casino online
deep web search darknet search engine
dark net deep web markets
best darknet markets tor dark web
tor dark web dark web sites
darknet search engine dark web search engines
darknet sites dark markets
onion market dark market link
darknet site darknet market list
dark markets dark market
darkweb marketplace darkweb marketplace
black internet tor markets 2023
dark market dark web sites links
This means you’ll have a week to activate any matched deposit
bonuses and use the bonus funds ahead of they expire and disappear from your bonus balance.
Check outt my homepage :: get more info
order dapoxetine 90mg online cheap order dapoxetine 60mg generic xenical 120mg price
Building has not begun on Caesars Incheon.Paradise will use its current license from Paradcise
Casino Incheon.
Feel free to visit my site: read more
darknet drug market tor markets
darkmarket 2023 dark web sites links
RNG technologies guarantees that the outcome of the game is randomly produced.
Here is my web-site – yrmff.wikikali.com
The loading time was quick, and all the buttons, including our beloved
“Spin,” were fast to function.
Also visit my blog post … http://www.honesthawaiinotaries.com
dipyridamole eye drops
darknet site dark web sites links
levaquin tablets
deep web drug markets deep web sites
deep web drug url darknet drug links
[229] See id. see also Champion, 188 U.S. at 354 (carriage of lottery tickets involving states by an independent carrier constitutes interstate commerce).
Visit my homepage :: website
dark web search engine dark market link
darknet seiten deep web markets
darknet market lists deep web links
The Korean Demilitarisation Zone marks the boundary
among South Korea and North Korea.
my website :: https://yrmmm.designertoblog.com/
darkmarket list darkweb marketplace
dark market dark web sites
free dark web dark web market
dark web sites links darknet market list
darkmarket link darkmarket list
how to get on dark web dark net
acyclovir no prescription india
medrol discount
darknet market darkmarkets
darknet market dark web search engine
tor markets darknet drug market
deep web sites tor markets links
tor darknet deep web search
deep web drug url drug markets dark web
deep web sites dark market onion
how to access dark web dark web markets
dark web links darknet markets 2023