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 search engine darknet drugs
Yes, the State Constitution allows the State Lottery to take place.
Stop by my web page VG보글파워볼
blackweb official website deep web markets
gout colchicine
dark web link onion market
purchase nifedipine pill buy nifedipine 10mg for sale order allegra 120mg generic
Lottery.com is also gamifying charitable giving to fundamentally change how
nonprofits engage with their donors and raise funds.
my blog; website
cheap cialis uk
furosemide 40 mg pill
The Maine State Lottery will withhold Federal and State taxes
at 24% and 7.15% respectively on prizes
more than $5000.
Look at my site: 몬스터파워볼
Traditional sweepstakes have a longer lead time in between the time of entry and the tie the winner is
notified.
Take a look at my page; VG보글파워볼
tor marketplace dark web access
deep web drug markets dark website
darknet drug links dark web market links
tor markets 2023 dark market list
darknet seiten dark markets
best darknet markets drug markets dark web
dark market link dark market
dark market dark web access
darknet market lists dark market onion
deep dark web the dark internet
dark market dark market list
darkweb marketplace darknet markets 2023
dark market onion deep web drug links
dark web market darknet marketplace
tor market links dark markets
black internet tor market links
best darknet markets dark web links
dark web markets darknet search engine
dark web access tor market url
dark market link black internet
tor market url tor marketplace
darknet site dark net
tor market url deep web search
darknet marketplace tor market
buy lexapro online no prescription
dark web links tor market url
dark web search engines dark market link
dipyridamole 75 mg cost
deep web links free dark web
how to get on dark web darknet sites
cheapest buspar
darknet markets bitcoin dark web
deep web markets tor marketplace
dark market url the dark internet
Wild Casino delivers a 30x wagering reuirement for the majority oof their bonuses.
Visit my page … website
darknet market darknet site
dark web websites blackweb
“The casino offers a lot of options, from casual to upscale, to satisfy your cravings,” Shaw says.
Here is my blog – here
dark websites dark market list