SlideShare a Scribd company logo
1 of 58
Download to read offline
TMF meets GMF
Combining Graphical & Textual Modeling
Alexander Nyßen
itemis AG
Donnerstag, 3. November 2011
Simultaneous/Parallel Editing
• http://www.eclipse.org/Xtext/documentation/2_0_0/210-
emf-integration.php
• A. Mülder, A. Nyßen: TMF meets GMF. Eclipse Magazin
03/2011 (German)
Donnerstag, 3. November 2011
Simultaneous/Parallel Editing
• http://www.eclipse.org/Xtext/documentation/2_0_0/210-
emf-integration.php
• A. Mülder, A. Nyßen: TMF meets GMF. Eclipse Magazin
03/2011 (German)
Out of Scope here!
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Enable editing of Xtext-strings
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Enable editing of Xtext-strings, providing all the nice
Xtext-features like syntax coloring, content assist, and
validation
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Enable editing of Xtext-strings, providing all the nice
Xtext-features like syntax coloring, content assist, and
validation, outside an Xtext-editor within the following
contexts:
• SWT/JFace: enable editing of Xtext-strings e.g. within
WizardPages or PropertySheets.
• GEF/GMF (and potentially Graphiti): enable „direct-
editing“ of Xtext-strings from within graphical editors.
Donnerstag, 3. November 2011
So, let‘s start with looking at
SWT/JFace!
Donnerstag, 3. November 2011
Xtext-JFace-Integration
• StyledTextXtextAdapter to adapt Xtext-editing
functionality to any StyledText (SWT control)
• XtextStyledTextCellEditor to enable Xtext-editing
within arbitrary JFaceViewers (using StyledText and XtextAdapter)
Donnerstag, 3. November 2011
Adapter & CellEditor Usage
• StyledTextXtextAdapter can easily be „hooked“ to
any StyledText
• XtextStyledTextCellEditor can be used
transparently as any JFace CellEditor (it adapts internally)
StyledText styledText = new StyledText(parent, style);
xtextAdapter = new StyledTextXtextAdapter(getInjector());
xtextAdapter.adapt(styledText);
xtextCellEditor = new XtextStyledTextCellEditor(style,
getInjector());	 	 	 	
xtextCellEditor.create((Composite)viewer.getControl());
Donnerstag, 3. November 2011
Xtext-JFace-Integration
• Syntax Highlighting:
• Auto Completion:
• Validation:
✓
✓
✓
Donnerstag, 3. November 2011
And how to integrate Xtext with
GEF/GMF?
Donnerstag, 3. November 2011
Direct-Editing Embedded-Xtext
• GEF-integration:
• XtextDirectEditManager,
internally making use of the Xtext-
StyledTextCellEditor
• GMF-integration:
• XtextLabelEditPart (CompartmentEditPart)
• ExternalXtextLabelEditPart (LabelEditPart)
Donnerstag, 3. November 2011
DirectEditManager Usage
protected void performDirectEditRequest(final Request request) {
final XtextDirectEditManager manager =
new XtextDirectEditManager(this, getInjector(), getEditorStyles());
try {
getEditingDomain().runExclusive(new Runnable() {
public void run() {
...
manager.show();
...
}
});
} catch (final InterruptedException e) {...}
}
• XtextDirectEditManager can be transparently used as
any GEF DirectEditManager:
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Donnerstag, 3. November 2011
And how does it work?
Donnerstag, 3. November 2011
PropertySection
Donnerstag, 3. November 2011
PropertySection
Donnerstag, 3. November 2011
PropertySection
PropertySection
Donnerstag, 3. November 2011
PropertySection
PropertySection
Input Object
Property
Donnerstag, 3. November 2011
PropertySection
PropertySection
PropertyPage
Text (SWT)
Input Object
Property
Donnerstag, 3. November 2011
PropertySection
PropertySection
PropertyPage
Text (SWT)
Input Object
Property
Donnerstag, 3. November 2011
Xtext-Editor
Donnerstag, 3. November 2011
Xtext-Editor
Donnerstag, 3. November 2011
Xtext-Editor
XtextEditor
Donnerstag, 3. November 2011
Xtext-Editor
XtextEditor
XtextDocument
XtextResource
Donnerstag, 3. November 2011
Xtext-Editor
XtextEditor
XtextDocument
XtextSourceViewer
StyledText (SWT)
XtextResource
Donnerstag, 3. November 2011
Xtext-Editor
XtextEditor
XtextDocument
XtextSourceViewer
StyledText (SWT)
XtextResource
Donnerstag, 3. November 2011
Xtext-JFace-Integration -The Principle
Donnerstag, 3. November 2011
Xtext-JFace-Integration -The Principle
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)
Xtext-JFace-Integration -The Principle
Input Object
Property
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
Xtext-JFace-Integration -The Principle
Input Object
Property
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
Xtext-JFace-Integration -The Principle
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
Xtext-JFace-Integration -The Principle
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
XtextEditor
XtextDocument
XtextSourceViewer
StyledText (SWT)
Xtext-JFace-Integration -The Principle
XtextResource
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
XtextDocument
XtextSourceViewer
StyledText (SWT)
Xtext-JFace-Integration -The Principle
XtextResource
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
StyledTextXtextAdapter
XtextDocument
XtextSourceViewer
StyledText (SWT)
Xtext-JFace-Integration -The Principle
XtextResource
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
StyledTextXtextAdapter
XtextDocument
XtextSourceViewer
Xtext-JFace-Integration -The Principle
XtextResource
Input Object
PropertyXtext-String
StyledText (SWT)
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
StyledTextXtextAdapter
XtextDocument
XtextSourceViewer
Xtext-JFace-Integration -The Principle
Input Object
(Fake-)XtextResourcePropertyXtext-String
StyledText (SWT)
Donnerstag, 3. November 2011
And what about scoping?
Donnerstag, 3. November 2011
Scoping in Xtext
• When resolving cross-references scoping decides which
elements (of potentially different resources) are referable
Donnerstag, 3. November 2011
Scoping in Xtext
• When resolving cross-references scoping decides which
elements (of potentially different resources) are referable
Donnerstag, 3. November 2011
Scoping in Xtext (continued)
• Xtext distincs two notions of scope:
• Local Scope (internal to the context resource)
• Global Scope (external to the context resource)
• Global Scope is based on ResourceDescriptions which are
provided by an indexing mechanism (Xtext builder)
• XtextEditors are dirty-aware, i.e. their current editing state is
proclamated to the ResourceDescriptions
Donnerstag, 3. November 2011
Scoping in Embedded Xtext?
Donnerstag, 3. November 2011
Scoping in Embedded Xtext?
Donnerstag, 3. November 2011
Fake-XtextResource
The Fake-XtextResource used by the XtextAdapter does
only contain the currently edited Xtext-String, not any other
contents of the context resource
Local scope will allow us to refer to elements in the
edited Xtext-String, but not outside
Global scope will allow to reference external
elements, but by default context resource contents
is not proclamated to the global scope
Donnerstag, 3. November 2011
Scoping based on Fake Resources
• Sophisticated Solution:
• Expose all Xtext-Strings contained within context resource
to ResourceDescriptions „dirty-state aware“
• Simple Solution:
• Populate the Fake-Xtext-Resource‘s ResourceSet with other
Fake-Context-Resources (e.g. one for each Xtext-String)
Donnerstag, 3. November 2011
StyledTextXtextAdapter
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-XtextResource
Donnerstag, 3. November 2011
StyledTextXtextAdapter
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Donnerstag, 3. November 2011
StyledTextXtextAdapterIXtextFakeContext
ResourcesProvider
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Donnerstag, 3. November 2011
StyledTextXtextAdapterIXtextFakeContext
ResourcesProvider
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Context-Fake
Resource (1)
Donnerstag, 3. November 2011
StyledTextXtextAdapterIXtextFakeContext
ResourcesProvider
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Context-Fake
Resource (2)
Context-Fake
Resource (1)
Donnerstag, 3. November 2011
StyledTextXtextAdapterIXtextFakeContext
ResourcesProvider
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Context-Fake
Resource(n)
Context-Fake
Resource (2)
Context-Fake
Resource (1)
...
Donnerstag, 3. November 2011
Populating Fake Resource Set
• IXtextContextFakeResourcesProvider allows to
populate the fake ResourceSet:
IXtextFakeContextResourcesProvider provider =
new IXtextFakeContextResourcesProvider(){
public void populateFakeResourceSet(
ResourceSet fakeResourceSet,	
XtextResource fakeResource){
// create context fake resources via given resource set
...
	 }
};
xtextAdapter = new StyledTextXtextAdapter(getInjector(), provider);
xtextAdapter.adapt(styledText);
Donnerstag, 3. November 2011
And where can I get it?
Donnerstag, 3. November 2011
Xtext-Integration @Yakindu
• Xtext-JFace-Integration and Xtext-GMF-Integration is made
available by theYAKINDU project
• Open Source / EPL
• Project Site: http://yakindu.org
• Eclipse Labs Site: http://code.google.com/a/eclipselabs.org/p/yakindu/
• Update Site: http://updates.yakindu.com/indigo/milestones/
• Source Code: http://svn.codespot.com/a/eclipselabs.org/yakindu/BASE/trunk/
de.itemis.xtext.utils
Donnerstag, 3. November 2011
ThankYou! Questions?
Donnerstag, 3. November 2011

More Related Content

Similar to TMF meets GMF

Migrating from Ext GWT 2.x to 3.0
Migrating from Ext GWT 2.x to 3.0Migrating from Ext GWT 2.x to 3.0
Migrating from Ext GWT 2.x to 3.0Sencha
 
Introducing Ext GWT 3.0
Introducing Ext GWT 3.0Introducing Ext GWT 3.0
Introducing Ext GWT 3.0Sencha
 
Community Code: Xero
Community Code: XeroCommunity Code: Xero
Community Code: XeroSencha
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language ProcessingCloudxLab
 
RESTo - restful semantic search tool for geospatial
RESTo - restful semantic search tool for geospatialRESTo - restful semantic search tool for geospatial
RESTo - restful semantic search tool for geospatialGasperi Jerome
 
Xml holland - XQuery novelties - Geert Josten
Xml holland - XQuery novelties - Geert JostenXml holland - XQuery novelties - Geert Josten
Xml holland - XQuery novelties - Geert JostenDaidalos
 
Government Polytechnic Arvi-1.pptx
Government Polytechnic Arvi-1.pptxGovernment Polytechnic Arvi-1.pptx
Government Polytechnic Arvi-1.pptxShivamDenge
 
XML Prague 2005 EXSLT
XML Prague 2005 EXSLTXML Prague 2005 EXSLT
XML Prague 2005 EXSLTjimfuller2009
 
Elasticsearch Basics
Elasticsearch BasicsElasticsearch Basics
Elasticsearch BasicsShifa Khan
 
Introduction to libre « fulltext » technology
Introduction to libre « fulltext » technologyIntroduction to libre « fulltext » technology
Introduction to libre « fulltext » technologyRobert Viseur
 
DBXTalk: Smalltalk Relational Database Suite
DBXTalk: Smalltalk Relational Database SuiteDBXTalk: Smalltalk Relational Database Suite
DBXTalk: Smalltalk Relational Database SuiteMariano Martínez Peck
 
DITA and Translation Best Praticices
DITA and Translation Best PraticicesDITA and Translation Best Praticices
DITA and Translation Best PraticicesAndrzej Zydroń MBCS
 
SkinMuseum: a museum collection management software
SkinMuseum: a museum collection management softwareSkinMuseum: a museum collection management software
SkinMuseum: a museum collection management softwareNuxeo
 
SANS Windows Artifact Analysis 2012
SANS Windows Artifact Analysis 2012SANS Windows Artifact Analysis 2012
SANS Windows Artifact Analysis 2012Rian Yulian
 
Write code that writes code! A beginner's guide to Annotation Processing - Ja...
Write code that writes code! A beginner's guide to Annotation Processing - Ja...Write code that writes code! A beginner's guide to Annotation Processing - Ja...
Write code that writes code! A beginner's guide to Annotation Processing - Ja...DroidConTLV
 

Similar to TMF meets GMF (20)

Migrating from Ext GWT 2.x to 3.0
Migrating from Ext GWT 2.x to 3.0Migrating from Ext GWT 2.x to 3.0
Migrating from Ext GWT 2.x to 3.0
 
Introducing Ext GWT 3.0
Introducing Ext GWT 3.0Introducing Ext GWT 3.0
Introducing Ext GWT 3.0
 
Community Code: Xero
Community Code: XeroCommunity Code: Xero
Community Code: Xero
 
IR with lucene
IR with luceneIR with lucene
IR with lucene
 
RunDeck
RunDeckRunDeck
RunDeck
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
RESTo - restful semantic search tool for geospatial
RESTo - restful semantic search tool for geospatialRESTo - restful semantic search tool for geospatial
RESTo - restful semantic search tool for geospatial
 
Text Mining with R
Text Mining with RText Mining with R
Text Mining with R
 
Xml holland - XQuery novelties - Geert Josten
Xml holland - XQuery novelties - Geert JostenXml holland - XQuery novelties - Geert Josten
Xml holland - XQuery novelties - Geert Josten
 
Government Polytechnic Arvi-1.pptx
Government Polytechnic Arvi-1.pptxGovernment Polytechnic Arvi-1.pptx
Government Polytechnic Arvi-1.pptx
 
XML Prague 2005 EXSLT
XML Prague 2005 EXSLTXML Prague 2005 EXSLT
XML Prague 2005 EXSLT
 
Elasticsearch Basics
Elasticsearch BasicsElasticsearch Basics
Elasticsearch Basics
 
Introduction to libre « fulltext » technology
Introduction to libre « fulltext » technologyIntroduction to libre « fulltext » technology
Introduction to libre « fulltext » technology
 
DBXTalk: Smalltalk Relational Database Suite
DBXTalk: Smalltalk Relational Database SuiteDBXTalk: Smalltalk Relational Database Suite
DBXTalk: Smalltalk Relational Database Suite
 
DITA and Translation Best Praticices
DITA and Translation Best PraticicesDITA and Translation Best Praticices
DITA and Translation Best Praticices
 
SkinMuseum: a museum collection management software
SkinMuseum: a museum collection management softwareSkinMuseum: a museum collection management software
SkinMuseum: a museum collection management software
 
SANS Windows Artifact Analysis 2012
SANS Windows Artifact Analysis 2012SANS Windows Artifact Analysis 2012
SANS Windows Artifact Analysis 2012
 
Shivam PPT.pptx
Shivam PPT.pptxShivam PPT.pptx
Shivam PPT.pptx
 
Lucene indexing
Lucene indexingLucene indexing
Lucene indexing
 
Write code that writes code! A beginner's guide to Annotation Processing - Ja...
Write code that writes code! A beginner's guide to Annotation Processing - Ja...Write code that writes code! A beginner's guide to Annotation Processing - Ja...
Write code that writes code! A beginner's guide to Annotation Processing - Ja...
 

More from Alexander Nyßen

GEF 5.0.0 - From a User's Perspective
GEF 5.0.0 - From a User's PerspectiveGEF 5.0.0 - From a User's Perspective
GEF 5.0.0 - From a User's PerspectiveAlexander Nyßen
 
The Next Generation Eclipse Graphical Editing Framework
The Next Generation Eclipse Graphical Editing FrameworkThe Next Generation Eclipse Graphical Editing Framework
The Next Generation Eclipse Graphical Editing FrameworkAlexander Nyßen
 
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...Alexander Nyßen
 
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Alexander Nyßen
 
GEF4 - There's really something going on!
GEF4 - There's really something going on!GEF4 - There's really something going on!
GEF4 - There's really something going on!Alexander Nyßen
 
GEF4 - Continue to Share and Enjoy!
GEF4 - Continue to Share and Enjoy!GEF4 - Continue to Share and Enjoy!
GEF4 - Continue to Share and Enjoy!Alexander Nyßen
 
GEF - Past, Present, and Future
GEF - Past, Present, and FutureGEF - Past, Present, and Future
GEF - Past, Present, and FutureAlexander Nyßen
 
GEF4 - Our Mission to Mars
GEF4 - Our Mission to MarsGEF4 - Our Mission to Mars
GEF4 - Our Mission to MarsAlexander Nyßen
 
YAKINDU SCT - Domain-Specific Statecharts
YAKINDU SCT - Domain-Specific StatechartsYAKINDU SCT - Domain-Specific Statecharts
YAKINDU SCT - Domain-Specific StatechartsAlexander Nyßen
 

More from Alexander Nyßen (12)

GEF 5.0.0 - From a User's Perspective
GEF 5.0.0 - From a User's PerspectiveGEF 5.0.0 - From a User's Perspective
GEF 5.0.0 - From a User's Perspective
 
The Next Generation Eclipse Graphical Editing Framework
The Next Generation Eclipse Graphical Editing FrameworkThe Next Generation Eclipse Graphical Editing Framework
The Next Generation Eclipse Graphical Editing Framework
 
GEF(4) Dot Oh Dot Oh
GEF(4) Dot Oh Dot OhGEF(4) Dot Oh Dot Oh
GEF(4) Dot Oh Dot Oh
 
GEF4 - Sightseeing Mars
GEF4 - Sightseeing MarsGEF4 - Sightseeing Mars
GEF4 - Sightseeing Mars
 
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
 
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
 
GEF4 - There's really something going on!
GEF4 - There's really something going on!GEF4 - There's really something going on!
GEF4 - There's really something going on!
 
GEF4 - Continue to Share and Enjoy!
GEF4 - Continue to Share and Enjoy!GEF4 - Continue to Share and Enjoy!
GEF4 - Continue to Share and Enjoy!
 
GEF - Past, Present, and Future
GEF - Past, Present, and FutureGEF - Past, Present, and Future
GEF - Past, Present, and Future
 
GEF4 - Our Mission to Mars
GEF4 - Our Mission to MarsGEF4 - Our Mission to Mars
GEF4 - Our Mission to Mars
 
YAKINDU SCT - Domain-Specific Statecharts
YAKINDU SCT - Domain-Specific StatechartsYAKINDU SCT - Domain-Specific Statecharts
YAKINDU SCT - Domain-Specific Statecharts
 
GEF4 - Share and Enjoy!
GEF4 - Share and Enjoy!GEF4 - Share and Enjoy!
GEF4 - Share and Enjoy!
 

Recently uploaded

How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 

Recently uploaded (20)

How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 

TMF meets GMF