Eclipse india day 2011 EMFT Texo Project
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Eclipse india day 2011 EMFT Texo Project

  • 2,335 views
Uploaded on

EMFT Texo Project overview for Eclipse India Day 2011 conferece by Dzmitry Harachka

EMFT Texo Project overview for Eclipse India Day 2011 conferece by Dzmitry Harachka

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
2,335
On Slideshare
1,395
From Embeds
940
Number of Embeds
7

Actions

Shares
Downloads
10
Comments
0
Likes
0

Embeds 940

http://www.eclipseday.in 749
http://zmicer.com 173
https://545505983718058338_313be416e466a01ea362935539a5b40c99519d00.blogspot.com 9
http://www.linkedin.com 5
http://oslab.by 2
http://hghltd.yandex.net 1
https://www.linkedin.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. EMFT Texo Project MDD FUTURE Dzmitry Harachka (Belarus)
  • 2. Agenda
    • Why do we need texo: cases from a life
    • Texo introduction
    • Pros of Texo
    • Project architecture
    • Future Plans
    • Rich Web UI integration: JSON Web Service
  • 3. Case 1
    • You need Java Beans
    • You need ORM
    • You need Web Rich Client UI integration through JSON Rest Web Service
    • Or JAXB based Web Service
    • First of all you need model = xsd or ecore
  • 4. Case 2
    • XSD with the model of some content types/blocks from a web site
    • XSD based CMS (Content Management System)
      • Output is XML files
    • In-Memory Model Runtime or ORM
    • Work with model in Java
    • First of all you need a model
  • 5. A life without model
  • 6. Texo
    • In Latin = construct, build
      • MDD extendable technology for generating different artifacts using templates, runtime for generated java beans meta-information, facilities for working with generated artifacts on different environments, e.g. JSON Web Service
    • Part of Eclipse Development Environment
      • All modules are Eclipse plugins = OSGI bundles
    • Built on the top of EMF technologies
      • Xpand for templating and code generating
      • Ecore as model representation + built in editors
      • XML/XMI serialization
  • 7. Texo
  • 8. Texo
    • Runtime access to POJO beans ECore meta-information
      • Generate ECore and POJO wrappers
  • 9. Texo XSD Java POJO EMF ECore Java Texo meta model Java Texo In-Memory Runtime Templates ORM JSON + JS has access to all
  • 10. Texo Internal Data Flow
  • 11. Texo Pros
    • Code generation inside dev. env (in comparison with UML based generators)
    • POJO Java Beans
      • No runtime/compilation dependencies on texo jars
        • No specific annotations
        • No inheritance from Texo classes (as in EMF code generation)
    • Code formatting and code merging
      • @generated and @NotGenerated
  • 12. Texo Pros
    • Override and change standard templates
      • Detailed control over generated artifact blocks through built-in annotations model
    • Rather easy to introduce new generation type
      • Annotations model
      • Templates
      • Read annotations and generator code
  • 13. Belarus
  • 14. Testing environment
    • Hudson
    • Buckminster (consider as “maven for OSGI bundles”)
    • Ant
    • Three steps tests
      • Build code generation plugin
      • Generate code
      • Run unit tests on the build code
  • 15. XSD vs ECore
    • XSD
      • Choice
      • Sequence
      • Any types
    • Ecore
      • UML like
      • closer to OOP
      • Type safety
      • Work with a model in a simple way
  • 16. Reflexion vs ECore
    • Why not use reflexion (and annotations) and generate artifacts basing on it
      • Ecore meta-information access is faster
      • We would like to have POJO beans
      • We want to access business methods of model but not all the methods of POJO (toString and others)
  • 17. Ecore and Texo model classes
  • 18. Web UI Architecture
  • 19. Future Plans
    • JPA
    • JAXB
    • XML and JSON REST
    • Web UI Rich JS Client integration
      • Pages and content blocks generation
    • Generic architecture for quick conversion from EMF Ecore to any other format
    • Other not EMF based code generation patterns
  • 20. Questions
    • http://wiki.eclipse.org/Texo/
    • http://download.eclipse.org/modeling/emft/texo/updates/interim/
    • Dzmitry Harachka (Belarus)
      • http://www.zmicer.com
      • http://www.jazzteam.org
      • [email_address]
      • @zmicercom (a link to presentation at slideshare is available here)
      • http://www.linkedin.com/in/dzmitryharachka
  • 21. Links
    • http://wiki.eclipse.org/Xpand
    • http://www.eclipse.org/modeling/emf/
    • http://www.eclipse.org/modeling/emft/
    • http://wiki.eclipse.org/Teneo (Texo’ predecessor)
    • http://en.wikipedia.org/wiki/XML_Metadata_Interchange
    • http://www.eclipse.org/buckminster/
      • http://www.eclipse.org/modeling/emft/b3/
    • http://wiki.eclipse.org/Texo/Template_Overriding
  • 22. Belarus cows