Eclipse Yoxos Services Downloads Blogs About
Home > Blogs >

on Apr 11th, 2012RAP mobile 0.5.6 – New and Noteworthy

RAP mobile is progressing. In this post we’d like to give you a quick update on the latest features in the RAP mobile clients for iOS and Android.

Android

canvas 0.5.6 RAP mobile 0.5.6   New and Noteworthy

Graphical Context

For drawing arbitrary graphical elements in a widget, RAP mobile now supports the Canvas and GC (graphical context) API. This enables a variety of options for designing individual UI elements. The graphical context also lays the foundation for the development of custom widgets.

 

iOS and Android

Non-UI Objects

As we all know, mobile devices are equipped with local sensors and other hardware-based capabilities. With the current release, RAP mobile is ready to handle client side non-UI objects to model the local capabilities of your phone or tablet. In our first example, we developed a geolocation object to support the GPS receivers in mobile devices. In an upcoming blog post, we’ll explain the additions to the API in more detail.

Demos

The latest demos on the RAP mobile website give you a quick look at our latest development efforts. The demos contain videos of both the iOS and the Android platform as well as some code snippets. Follow the links to GIT hub if you want to take a look behind the scenes.

New demo “Dashboard”

android dashboard dual RAP mobile 0.5.6   New and NoteworthyWe have created a new interactive demo called “Dashboard”. Derived from an open information project from a German publisher, the demo graphically displays information about delays in national rail traffic.

Screen Shot 2012 04 11 at 2.31.24 PM RAP mobile 0.5.6   New and Noteworthy

New demo “Geolocation”

The “Geolocation” demo uses RAP mobile’s new object handling feature to interact with your mobile device’s hardware and determines your current location.

on Apr 5th, 2012Yoxos: Configuring your bundle pool

Yoxos not only provides you with a way to pool all your plugins in a single directory, but you can also configure that location.  Eclipse/p2 bundle pooling means that different applications (different Eclipse configurations for example) can share the same set of bundles. This saves both time and disk-space as you don’t need to download the same bundle more than once.

Screen Shot 2012 04 04 at 3.44.22 PM Yoxos: Configuring your bundle pool

Configuring this location is easy. In your Yoxos launcher directory, location the yoxos.ini file and adjust the following three settings:

-Dosgi.instance.area=@user.home/.yoxoslauncher/workspace
-Dyoxos.pool.p2.data.area=@user.home/.yoxoslauncher/p2
-Dyoxos.bundle.pool.data.area=@user.home/.yoxoslauncher

You can use path variables (such as @user.home) or absolute paths pointing to an external HD for example.

Make sure you download the latest Yoxos launcher from our downloads page.

on Apr 4th, 2012Modeling Symposium @ EclipseCon North America 2012 – Slides

Thank you to everyone who attended or gave a talk at the modeling symposium. I think we had a very interesting event and we got very good feedback. Maybe the symposium should become an regulary event at EclipseCon’s.

I would like to share the links to the presentations, which were shared with me. If you gave a talk and your slides are missing, please send me the link, I will post it here.

 

Talk 2

Presenter: Mickael Istria

Title: Iterative and agile principles applied to generated code

Slides: http://www.slideshare.net/mickaelistria/iterative-andagilecodegen

 

Talk 3

Title: What’s new in EGF (Eclipse Generation Factories)

Presenter: Benoit Langlois

Slides: http://wiki.eclipse.org/images/4/47/EclipseCon_US_2012-Whats_new_in_EGF.pdf

 

Talk 4

Title: You need to extend your models? EMF Facets vs. EMF Profiles

Presenter: Philip Langer & Hugo Bruneliere

Slides: http://www.slideshare.net/HugoBruneliere/you-need-to-extend-your-models-emf-facet-vs-emf-profiles-12163425

 

Talk 5

Title: EMF Diff/Merge

Presenter: Olivier Constant

Slides: http://wiki.eclipse.org/images/9/98/EclipseCon_US_2012-EDM.pdf

 

Talk 6

Title: The CDO Model Repository

Presenter: Eike Stepper

Slides: http://www.slideshare.net/Holmes70/cdo-ignite-12281516

 

Talk 7

Title: EMFStore

Presenter: Maximilian Kögel

Slides: http://www.slideshare.net/koegel/emfstore-demo-eclipsecon2012

 

Talk 8

Title: EMF Client Platform

Presenter: Jonas Helming

Slides: http://www.slideshare.net/JonasHelming/emf-client-platform-modeling-symposium-eclipsecon-north-america-2012

 

Talk 9

Presenter: Mickael Istria

Title: What’s up GMF Tooling?

Slides: http://www.slideshare.net/mickaelistria/iterative-andagilecodegen

 

Talk 10

Presenter: Andres Alvarez & Ruben de Dios

Title: GMF simple map editor

Slides: GMF Simple Mapping Editor (EMS)

 

Talk 13

Title: MDT/OCL

Presenter: Ed Willink

Slides: http://www.eclipse.org/modeling/mdt/ocl/docs/publications/EclipseConNA2012/EclipseCon2012.pdf

on Mar 30th, 2012RAP mobile 0.5.5 – New and Noteworthy

In this post we’d like to give you a quick overview of the latest in RAP mobile, version 0.5.5.

Android

Support for UI Callback

The UI callback mechanism enables a RAP client to automatically update the UI without user interaction. With this feature we can support progress indicators or updates to displays that are triggered by events on the server side. Watch for examples in the upcoming releases.

Label Alignment

Labels and buttons now follow the SWT alignment styles SWT.LEFT, SWT.LEFT, SWT.CENTER.label alignment RAP mobile 0.5.5   New and Noteworthy

Bug fixes

  • Rotating a device now correctly re-positions a scrolled composite.
  • The vertical alignment of text in a label is now updated correctly when a relayout is triggered.

iOS

Automatic Discovery of Entry Points

To make it easier to access the different entry points of a RAP mobile application running on the server, the iOS client now supports automatic EntryPoint discovery. To list all available EntryPoints, navigate the native client to the server url followed by a “/index.json”. The following URL on the RAP demo server provides you with an example: http://rap.eclipsesource.com/demos-0.5.5/index.json

Property to control idle display

You can now choose to have the display automatically switch off in idle mode or remain on.

Bug fixes

  • Animated widgets are now more stable (they sometimes “jumped” when the animation was playing).
  • We’ve made significant improvements to memory management.
  • TabFolders now support the style argument SWT.TOP.
  • We’ve improved reliability when reloading a session.
  • Centering TITLEs in a ToolBar is now easier – the SWT.SEPARATOR is no longer required.

 

on Mar 23rd, 2012Client-Side input validation with RAP ClientScripting

The RAP team started working on a new feature called ClientScripting. It’s still in it’s infancy and will not (yet) be part of the core framework , but its already very useable. The goal is to allow adding pieces of behavior to the client-components of RAP widgets. This makes it possible to have swift, dynamic user feedback in situations that require a certain amout of logic – so far a problematic scenario for RAP applications. It can be considered an alternative to custom widget development in many cases, and might also save some network traffic. We currently focus on the scenario of validating text input while typing, and will expand from there. Interactions between widgets are not yet possible, but is planned.

As you can test for yourself, the difference between server-side and client-side validation is quite noticeable.

When using ClientScripting, you will need to know very little JavaScript, and all API is as close to SWT as possible. The project has a wiki page with all further information you might need (including where to get the code). Note that you need RAP 1.5M6 or newer to use it. If you try it out, please consider giving some feedback, report bugs or file enhancement requests.

on Mar 23rd, 2012M6 brings markup text support to RAP

The RAP 1.5 M6 milestone build is packed with new features, especially for Trees and Tables. But most notably, you can now use HTML markup in Tables, Trees, and also in Labels:

MarkupInTable M6 brings markup text support to RAP

Just enable the markup support for a certain widget (see below), then you can make its text bold, italic, yellow or … no, not blinking! Actually, RAP will validate the markup and allows only a selection of tags (no <script> tags, please!). But since the <img> tag is in that list, you can add a smiley instead icon wink M6 brings markup text support to RAP .

Table table = new Table( parent, SWT.BORDER );
table.setData( RWT.MARKUP_ENABLED, Boolean.TRUE );
TableItem item = new TableItem( table, SWT.NONE );
item.setText( "Some <em>text</em> with <strong>markup<strong>" );

This also means that you don’t have to break your neck anymore just to add an HTML link to your RAP UI. You can now place real links in any Label or CLabel:

Label label = new Label( parent, SWT.NONE );
label.setData( RWT.MARKUP_ENABLED, Boolean.TRUE );
label.setText( "<a href=\"http://eclipse.org/rap\" target=\"_blank\">RAP project page<a>" );

Don’t like the setData() programming? We don’t like it either. But for now, it’s the simplest way to expose additional functionality without changing the SWT API. For RAP 2.0, we plan to come up with some better API for our extensions.

Try out the markup support in our updated online demo! BTW, did you notice that this is a deep link into the demo application? Yes, there was a bug preventing them from working in RAP for long, and it’s now finally fixed! You can now use the BrowserHistory to navigate to a certain point in your application right on startup. Here’s the link to an example page that shows markup in a Table.

And there are more Table and Tree enhancements, such as the fixed columns support that lets you exclude one or more colums from horizontal scrolling. Check out the full list of changes in the New & Noteworthy.

Get it while it’s hot, this milestone is a must have icon wink M6 brings markup text support to RAP

on Mar 23rd, 2012p2 in DC

Next week I’ll be at EclipseCon in Reston, Virginia.  EclipseCon has always been my favorite conference and if my math hasn’t failed me, this will be my 6th one.

eclipsecon p2 in DC

I’ll be giving two presentations on p2 (and likely spending lots of time in the bar talking about p2).  The first presentation is a very gentle introduction to p2.  In this talk we will introduce p2 more pragmatically, presenting the relevant files (profile, content.xml, …), tools (director, mirror, …) and concepts.

In the second talk, It’s Raining Bytes, we’ll discuss how we scale p2 using a variety of cloud technologies.  In particular, we’ll discuss how we deploy over 64,000 plugins (and over store over 500,000 IUs) using different AWS services.

If you’re interested in p2, Yoxos, Eclipse releng, modeling or anything Eclipse related, look for me in the bar or stop by one of my talks.

I look forward to seeing everyone next week!

on Mar 22nd, 2012CKEditor for RAP

If you ever need a WYSIWYG editor in your RAP application, look no further.

ckeditor CKEditor for RAP

I originally implemented this as an example of how JavaScript applications can be embedded in RAP as custom widgets. So if you have a similar scenario, you could also use this project as a template. The editor is fairly customizable, read the README for details. You can get the code on GitHub.

on Mar 20th, 2012Simple JUnit4 templates for Eclipse

JUnit and Eclipse are a great combination, but one thing that I missed every time I worked with JUnit4 was the code templates. Currently, Eclipse ships with pre-defined templates for JUnit3 but not for JUnit4. So, I wrote three basic JUnit4 templates that can be imported from the “Templates” Preference Page. Take a look at the screenshot below to see how to get there. The templates are called test, setup and teardown. They all create method stubs with the right Annotation and the necessary static imports – pretty simple but I think its efficient. You can find the templates in this gist.

Screen Shot 2012 03 20 at 12.20.54 PM Simple JUnit4 templates for Eclipse

After importing the templates you can use them in a test class by typing the first letters of each template and use the content assist (Ctrl/cmd+space) to complete. This results in an assist like the one below. By pressing enter the template will be inserted into your class. Hope this makes test writing easier icon smile Simple JUnit4 templates for Eclipse

Screen Shot 2012 03 20 at 12.24.04 PM Simple JUnit4 templates for Eclipse

 

on Mar 19th, 2012Modeling Symposium @ EclipseCon North America 2012

We’re happy to announce the agenda for the modeling symposium at EclipseCon North America 2012 in Reston, VA. The symposium takes place on Monday afternoon, March 26th. You’ll find more information about the location under http://www.eclipsecon.org/2012/sessions/modeling-symposium.

The goal of the symposium is to provide an overview of what’s hot and new in the modeling area. We therefore decided to provide many short slots.

Marcelo Paternostro will open the symposium with a 1 minute teaser from his full talk:

“I cheated on EMF with RDF and I may do it again”  (http://www.eclipsecon.org/2012/sessions/i-cheated-emf-rdf-and-i-may-do-it-again).

After that we will have 13 short talks. Each speaker will have 10 minutes including questions. We hope to provide a good overview of what’s cooking in the modeling area. We are looking forward to seeing you there!

Talk 1

Title: Jnario

Presenter: Sebastian Benz

Description: “Jnario” is a framework helping you write executable software specifications. It leverages the expressiveness of Xtend and is easy to integrate, as it compiles to plain JUnit tests. In our other presentation at this EclipseCon, we demonstrate how to use Jnario for writing executable acceptance specifications in a business readable fashion. This session introduces you to Jnario Specs – another language of Jnario allowing software behavior specification on a unit level. We demonstrate how you can design and document your software at the same time.

Talk 2

Presenter: Mickael Istria

Title: Iterative and agile principles applied to generated code

Description: When relying on code generation to produce pieces of your software, you introduce an additional step to your development workflow. This additional step introduce some more complexity, as a drawback of its high productivity. You’ll learn some practical tips to keep you project easy to maintain and benefit of generation at its maximum. Although most examples will rely on GMF Tooling, these principles also apply to other generative frameworks such as EMF and XText.

Basically, it will contain some tips about the generation-gap pattern, why not modifying generated code is a cool things, what are the other ways to customize without modifying. And also I’ll show how to make easier to deal with generation through iterations with GMF Tooling example. I think I can make it in 10 minutes, if we assume most people already used generation frameworks and know there drawbacks.

Talk 3

Title: What’s new in EGF (Eclipse Generation Factories)

Presenter: Benoit Langlois

Description: EGF (Eclipse Generation Factories) is a software factory tool. It is not restricted to text generation but addresses generation in general with issues such as orchestration of heterogeneous activities involved during a generation, generation customization, generation DSL. This talk remind what are the main concepts of EGF (Factory Component, Task, Generation Chain, Portfolio) and the new features that will be available in Juno (e.g., post-processing for model-to-text, support of Ant / JRuby / Acceleo / ATL tasks, enrichment of the EMF generation).

Talk 4

Title: You need to extend your models? EMF Facets vs. EMF Profiles

Presenter: Philip Langer & Hugo Bruneliere

Description: When using the Eclipse Modeling Framework, directly or as part of Eclipse-based solutions, one often faces the problem of having to extend EMF models in an efficient and structured way. However, either due to technical or business reasons, the respective original EMF models/metamodels cannot be modified or “polluted” with the intended additional information.
To this end, an advanced and lightweight model extension mechanism is worth a mint!

EMF Facet<http://www.eclipse.org/modeling/emft/facet/> and EMF Profiles<http://code.google.com/a/eclipselabs.org/p/emf-profiles/>, respectively hosted in Eclipse-EMFT and Eclipse Labs, are two projects implementing such an extension mechanism. The former offers a way to dynamically extend models at runtime, while the latter provides a UML-like profile mechanism adapted to be used for any EMF model.
In this lightning talk, we introduce both tools very briefly and directly demonstrate on a simple example how they can be used in a complementary way.

Talk 5

Title: EMF Diff/Merge

Presenter: Olivier Constant

Description: EMF Diff/Merge is a newly proposed project which aims to provide a lightweight, reliable and scalable engine for comparing and merging models using IDs. It particularly focuses on preserving the integrity and consistency of models during the merge process according to user-defined policies. It includes a customizable diff/merge engine and GUI components which are designed to be used by or integrated into other tools. Envisioned usages of the tool include for example: incremental model transformations, bridges between model-based tools, model refactoring, or merge of models under version control.

Talk 6

Title: The CDO Model Repository

Presenter: Eike Stepper

Description: CDO is a runtime platform for modeled application systems. It provides transparent and highly efficient solutions to most technical challenges with EMF models, such as scalability, transactionality, thread safety, persistence, replication, versioning or collaboration. In this talk you’ll see a brief functional overview and a demo.

Talk 7

Title: EMFStore

Presenter: Maximilian Kögel

Description: EMFStore (http://emfstore.org) is an Eclipse project and a model repository featuring collaborative editing and versioning of models. In this presentation we will demonstrate the recent 0.8.9 release. Further we show how we successfully integrated the EMFStore technology into an existing industrial tool to enable collaborative editing of models and versioning. We will discuss which pitfalls we fell into and which ones we were able to avoid.

Talk 8

Title: EMF Client Platform

Presenter: Jonas Helming

Description: The EMF Client Platform (ECP) provides a generic and reflective user interface for arbitrary EMF models. In this demonstration we present the abilities of the recent 0.8.9 release. But, even though the UI is for free, an important question remains, “Should I use the CDO Model Repository or EMFStore to store my models? Or maybe just XMI files?” We can’t answer this question for you but we’ve done the next best thing. Committers from the EMF Client Platform, CDO and EMFStore have joined forces to enable you to seamlessly switch between the different options. We will give a preview of the upcoming major release onf the EMF Client Platform showing this.

Talk 9

Presenter: Mickael Istria

Title: What’s up GMF Tooling?

Talk 10

Presenter: Andres Alvarez & Ruben de Dios

Title: GMF simple map editor

Description: In order to simplify the creation process of the GMF models we created a graphical tool (Based on GMF) to allow us to create a complete GMF model in a few minutes.

More Info: 

http://modelingsideoflife.wordpress.com/2011/12/13/simple-gmf-model-editor/

 

Talk 11

Title: EMF Texo

Presenter: Martin Taal

Description: Texo (http://wiki.eclipse.org/Texo) is an EMF code generation and runtime framework targeted for server side web apps. I will demo entity code generation, JPA annotation generation and persistence and some main features of the runtime framework. If there is time I will show how you can adapt or extend the code generation templates making use of the Texo build in support of code formatting, manual-changes-preservation and java import resolving.
A concluding slide will be spend on other not-demoed features of Texo.

Talk 12

Title: Task-focused modeling with Mylyn, EMF and Papyrus

Presenter: Benjamin Muskalla

Description: In order to bring the productivity benefits of the task-focused interface to engineers using Eclipse-based modeling technologies, Mylyn created a “Context Bridge” for EMF-based models and diagram editors. The result of this will be a focused mode for diagrams that shows only the elements related to the task-at-hand, dramatically reducing information overload for engineers working on large models. In addition, the task-focused interface extensions will provide Mylyn’s one-click multitasking facilities for working with models, ensuring that engineers can instantly recover from interruptions, and share model-specific expertise, when working with models in addition to what Mylyn already provides for engineers working with source code. In this session, we will showcase the use of the task-focused interface within the Ecore Tools and the Papyrus UML Editor. In addition, we will discuss the aspects of bringing the task-focused interface to model and diagram editors and will give a quick overview how to enable these for your own diagram types.

Talk 13

Title: MDT/OCL

Presenter: Ed Willink

Description: The major innovation in MDT/OCL for Juno is the addition of Direct OCL 2 Java generation. This enables an Ecore or UML model to be annotated with OCL constraints, so that the previously missing bodies that required manual Java can now be realised directly in a specification language and executed with the aid of the new OCL Transformation Virtual Machine. This eliminates compilation costs at run-time and replaces interpreted execution by inline code exploiting optimized dispatch tables. Combined with the OCLinEcore (Xtext) editor, OCL is finally suitable for modelers as well as Java hackers.

 

© EclipseSource 2008 - 2011