Ginga-J Emulator: uma Ferramenta de Execução de Aplicações Imperativas para o Middleware Ginga

Preview:

DESCRIPTION

Defesa de TCC sobre o Ginga-J Emulator, ferramenta para execução de aplicações Ginga-J no Desktop, desenvolvida no LAViD/UFPB.

Citation preview

Ginga-J Emulator: Uma Ferramenta de Execução de Aplicações

Imperativas para o Middleware Ginga

Aluno: Erisvaldo Gadelha Saraiva Júnior

Orientador: Dr. Guido Lemos de Souza FilhoBanca: Me. Alan Kelon Oliveira de Moraes

Me. Raoni Kulesza

Universidade Federal da Paraíba

Centro de Ciências Exatas e da Natureza

Departamento de Informática

Roteiro

• Introdução

• Trabalhos Relacionados

• Ginga-J Emulator

• Considerações Finais

INTRODUÇÃO

Por que desenvolveu-se

o Ginga-J Emulator?

O middleware Ginga

Arquitetura do Ginga-J

Pacotes do Ginga-J

• Plataforma JavaME (CDC 1.1, FP 1.1, PBP 1.1)• API JavaTV 1.1• API Java Media Framework (JMF) 2.1• API Java Secure Socket Extension (JSSE) 1.0.2• API Java Cryptography Extension (JCE) 1.0• SATSA 1.0.1• JavaDTV 1.3• Pacotes específicos do Ginga-J

APIs do JavaDTV

Especificação JavaDTV 1.3

Modelo Gráfico do JavaDTV

LWUIT – Lightweight UI Toolkit

• Baseado no Swing;

• Plataformas JavaME (CLDC 1.1, MIDP 2.0 / CDC, FP e PBP) e JavaSE;

• Animações, botões, fontes, transicões de telas, temas, layouts, abas e caixas de diálogo;

• No JavaDTV, é usado em conjunto com o DTV-UI (com.sun.dtv.ui), que traz funcionalidades específicas para TV Digital.

Componentes do LWUIT

Ginga-J Device Integration API

br.org.sbtvd.interactiondevices

TRABALHOS RELACIONADOS

Emuladores de aplicações Java para TV Digital

Ferramenta CaracterísticasMiddleware

CompatívelLicença

Comunicação

Multidispositivo

XletviewExecutor de

AplicaçõesMHP (GEM) Aberta Não

CESARCiTVExecutor de

AplicaçõesMHP (GEM) Aberta Não

TVDesigner

Ambiente de

Desenvolvimento de

AplicaçõesMHP (GEM) Aberta Não

Sun JavaDTV

Emulator

Executor de

Aplicações

Ginga

(JavaDTV)Aberta Não

GINGA-J EMULATOR

O Ginga-J Emulator

• Ambiente que simula um STB com Ginga-J seguindo a especificação JavaDTV;

• Planos gráficos, eventos, componentes de interface (LWUIT) e também pacotes específicos do Ginga-J;

• Implementa a Ginga-J Device Integration API (pacote br.org.sbtvd.interactiondevices).

Estratégia de Implementação

• Baseado no Xletview, emulador de código aberto para o MHP (GEM);

• Manteve-se o código base do Xletview, eliminando os pacotes do GEM e substituindo-os pelos equivalentes no JavaDTV;

• Priorizou-se os pacotes com.sun.dtv.lwuit (interface) e com.sun.dtv.ui.event (eventos).

Estratégia de Implementação

➔ Pacote com.sun.dtv.* (Especificação JavaDTV); ➔ Pacote br.org.sbtvd.* (Pacotes específicos do Ginga-J); ➔ Pacote net.beiker.xletview.* (Base do Xletview); ➔ Pacote org.openginga.dev.emulator.* (Implementação).

Uso do padrão de projeto Adapter

Pacote org.openginga.dev.emulator.lwuit(Adaptadores)

LabelAdapter

com.sun.dtv.lwuit.Label

Pacote org.openginga.dev.emulator.interactiondevices

Planos Gráficos(net.beiker.xletview.window.TvWindow)

javax.swing.JLayeredPane

Status do Desenvolvimento (LWUIT – Lightweight UI Toolkit)

Status do Desenvolvimento(JavaDTV e Pacotes Específicos)

Pacotes específicos do Ginga-J Pacotes do JavaDTV 1.3

br.org.sbtvd.interactiondevices

br.org.sbtvd.ui

br.org.sbtvd.bridge

br.org.sbtvd.net

br.org.sbtvd.net.rc

br.org.sbtvd.net.si

br.org.sbtvd.net.tuning

com.sun.dtv.applicationcom.sun.dtv.iocom.sun.dtv.locatorcom.sun.dtv.lwuitcom.sun.dtv.net com.sun.dtv.platformcom.sun.dtv.resourcescom.sun.dtv.smartcardcom.sun.dtv.ui

com.sun.dtv.media

com.sun.dtv.broadcastcom.sun.dtv.transportcom.sun.dtv.tunercom.sun.dtv.filteringcom.sun.dtv.service

GingaCDN(http://dev.openginga.org)

Ambiente de acompanhamento dos

projetos relacionados ao Ginga-J

• Código-fonte;

• Aplicações;

• Ginga Remote;

• Tutoriais;

• Tarefas, Documentos e Atualizações.

Exemplos de aplicações Ginga-J

Ginga Remote

CONSIDERAÇÕES FINAIS

Conclusões

• Ferramenta funcional para execução de aplicações Ginga-J;

• Roda em qualquer SO com a JVM e possui ambiente familiar ao desenvolvedor;

• Pode se consolidar como a maneira mais prática e popular de testar aplicações imperativas para o Ginga.

Trabalhos Futuros

• Implementar pacotes restantes do JavaDTV e específicos do Ginga-J;

• Gerenciador de Canais;

• Versão stand-alone do emulador, integrada ao Ginga-J Plugin para Eclipse;

• Integração com Ferramenta de Autoria para Ginga-J (TVA).