SlideShare a Scribd company logo
1 of 11
Download to read offline
Make Me an Eclipse View (with less Plumbing):
    The PTP External Tools Framework
    Feedback View

                                                    Beth R. Tibbitts
                                                        IBM Corp.
                                                 tibbitts@us.ibm.com
                                                      March, 2010

                                    EclipseCon 2010, Santa Clara
       This material is partly based upon work supported by the Defense Advanced Research Projects Agency under
       its Agreement No. HR0011-07-9-0002




          EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
1         Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
          is licensed under Creative Commons Att. Nc Nd 2.5 license.
Background/Motivation

    •  You have a tool that generates information about a (source code)
       file, including line numbers
    •  You want to display the information to the end-user is a way that
       makes it easy to navigate to that src code line
        •  Like the “Problems” view
    •  You don’t want to write a lot of Eclipse “plumbing” code


      Problems view shows error
      Double-click on error
       to go to src line



           EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
2          Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
           is licensed under Creative Commons Att. Nc Nd 2.5 license.
Tool

ETFw Feedback view                                                                            ?
                                                                          File

    PTP External Tools Framework (ETFw)
    •  Provides simple way to integrate execution of existing
       (command-line?) tools into eclipse workbench
    •  But if your tool (launched from ETFw or not) has results, how to
       show user src lines that are relevant?
    •  Answer: ETFw Feedback view
        •  You provide:
           output file (e.g. xml file with info about src files and line numbers)
           A simple Parser that creates IFeedback items from your file
             (xml parser basics are in the sample)
        •  ETFw Feedback view provides:
           View with your items in a TreeTable view, mapped to src lines



            EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
3           Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
            is licensed under Creative Commons Att. Nc Nd 2.5 license.
ETFw Feedback view – What it looks like

    •  Select side
       file
    •  Select feedback
       action

    •  Show view
    •  Double-click
       line in view
       to highlight
       line of src




            EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
4           Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
            is licensed under Creative Commons Att. Nc Nd 2.5 license.
ETFw Feedback view – how to use

    •  See sample project:
       dev.eclipse.org / tools / org.eclipse.ptp / tools
         Project: org.eclipse.ptp.feedback.sample
    •  Add menus/actions, as desired – to invoke
    •  Name your parser
       recognized by initial node
       in side file (e.g. root XML node)
    •  Name your view
    •  Implement the action

      Most of the above classes are
      simple extensions of the base
      classes. Except..

            EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
5           Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
            is licensed under Creative Commons Att. Nc Nd 2.5 license.
ETFw Feedback view parser – you implement

    …Except for the parser that interprets your side file and creates
     objects that can be shown in the view




                                    …etc.


           EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
6          Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
           is licensed under Creative Commons Att. Nc Nd 2.5 license.
Sample XML file

    <?xml version="1.0"?>
    <SampleXMLRoot>   Root XML node identifies type of file
       <MyItem name="main is here" parent="mysample" file="sample.c"
      function="main" lineNo="14" isFunction="true" id="0"/>
       <MyItem name="loop is here" parent="mysample" file="sample.c"
      function="main" lineNo="16" isFunction="true" id="1"/>
       <MyItem name="this is return" parent="mysample" file="sample.c"
      function="turkey" lineNo="19" isFunction="true" id="2"/>
       <MyItem name="open brace" parent="braces" file="sample.c"
      function="turkey" lineNo="14" isFunction="true" id="3"/>
       <MyItem name="close brace" parent="braces" file="sample.c"
      function="turkey" lineNo="18" isFunction="true" id="4"/>
    </SampleXMLRoot>
                                                                                                     Parent node can be
                                                                                                     used to group items
                                                                                                     in Feedback view
                                                                                                     Tree



            EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
7           Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
            is licensed under Creative Commons Att. Nc Nd 2.5 license.
ETFw Feedback view with compiler reports

    •  Compiler
       attempts
       at inlining
       etc.
    •  Action can
       be attached.
       Refactoring?




             EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
8            Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
             is licensed under Creative Commons Att. Nc Nd 2.5 license.
ETFw Feedback view with Bottleneck reports




         EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
9        Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
         is licensed under Creative Commons Att. Nc Nd 2.5 license.
Summary

     •  Feedback view provides simple/easy way to view results of
        external tools
     •  Good reviews from users
     •  Can attach other actions… to leverage data from the tools
     •  PTP 3.0.x contains framework/abstract code for Feedback view
         •  PTP 4.0 in Helios too
         •  No concrete views; Sample project in CVS

     •  Simple Implementation now
     •  Some limitations now
     •  Open to suggestions on extensions / other uses



            EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
10          Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
            is licensed under Creative Commons Att. Nc Nd 2.5 license.
References

       Parallel Tools Platform: http://eclipse.org/ptp
       ETFw wiki page: http://wiki.eclipse.org/PTP/ETFw/PTP_External_Tools_Framework
       ETFw Feedback view specifically:
       http://wiki.eclipse.org/PTP/ETFw/PTP_External_Tools_Framework_Feedback_View




              EclipseCon 2010: Beth Tibbitts                          Make Me an Eclipse View … the PTP ETFw Feedback view
11            Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation
              is licensed under Creative Commons Att. Nc Nd 2.5 license.

More Related Content

Similar to EclipseCon 2010: Make Me an Eclipse View with PTP ETFw

Discovery the p2 API (updated to Indigo)
Discovery the p2 API (updated to Indigo)Discovery the p2 API (updated to Indigo)
Discovery the p2 API (updated to Indigo)Pascal Rapicault
 
Tycho Tutorial EclipseCon 2013
Tycho Tutorial EclipseCon 2013Tycho Tutorial EclipseCon 2013
Tycho Tutorial EclipseCon 2013jsievers
 
What is new in Helios
What is new in HeliosWhat is new in Helios
What is new in HeliosTomasz Zarna
 
javagruppen.dk - e4, the next generation Eclipse platform
javagruppen.dk - e4, the next generation Eclipse platformjavagruppen.dk - e4, the next generation Eclipse platform
javagruppen.dk - e4, the next generation Eclipse platformTonny Madsen
 
Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)Mikkel Flindt Heisterberg
 
Plug yourself in and your app will never be the same (2 hour edition)
Plug yourself in and your app will never be the same (2 hour edition)Plug yourself in and your app will never be the same (2 hour edition)
Plug yourself in and your app will never be the same (2 hour edition)Mikkel Flindt Heisterberg
 
Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012
Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012
Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012jsievers
 
Eclipse Overview
Eclipse Overview Eclipse Overview
Eclipse Overview Lars Vogel
 
ITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-insITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-insTonny Madsen
 
Ef Poco And Unit Testing
Ef Poco And Unit TestingEf Poco And Unit Testing
Ef Poco And Unit TestingJames Phillips
 
Lotusphere 2011 Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
Lotusphere 2011  Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...Lotusphere 2011  Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
Lotusphere 2011 Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...Ryan Baxter
 
Plug yourself in and your app will never be the same (1 hr edition)
Plug yourself in and your app will never be the same (1 hr edition)Plug yourself in and your app will never be the same (1 hr edition)
Plug yourself in and your app will never be the same (1 hr edition)Mikkel Flindt Heisterberg
 
Eclipse Plug-in Develompent Tips And Tricks
Eclipse Plug-in Develompent Tips And TricksEclipse Plug-in Develompent Tips And Tricks
Eclipse Plug-in Develompent Tips And TricksChris Aniszczyk
 
Staying ahead of the multi-core revolution with CDT debug
Staying ahead of the multi-core revolution with CDT debugStaying ahead of the multi-core revolution with CDT debug
Staying ahead of the multi-core revolution with CDT debugmarckhouzam
 
Os Tibbittstutorial
Os TibbittstutorialOs Tibbittstutorial
Os Tibbittstutorialoscon2007
 
Fun with ASP.NET MVC 3, MEF and NuGet
Fun with ASP.NET MVC 3, MEF and NuGetFun with ASP.NET MVC 3, MEF and NuGet
Fun with ASP.NET MVC 3, MEF and NuGetMaarten Balliauw
 
Demystifying dot NET reverse engineering - Part1
Demystifying  dot NET reverse engineering - Part1Demystifying  dot NET reverse engineering - Part1
Demystifying dot NET reverse engineering - Part1Soufiane Tahiri
 
EEF You Want Sexy Properties ...
EEF You Want Sexy Properties ...EEF You Want Sexy Properties ...
EEF You Want Sexy Properties ...glefur
 
eBPF — Divulging The Hidden Super Power.pdf
eBPF — Divulging The Hidden Super Power.pdfeBPF — Divulging The Hidden Super Power.pdf
eBPF — Divulging The Hidden Super Power.pdfSGBSeo
 

Similar to EclipseCon 2010: Make Me an Eclipse View with PTP ETFw (20)

Discovery the p2 API (updated to Indigo)
Discovery the p2 API (updated to Indigo)Discovery the p2 API (updated to Indigo)
Discovery the p2 API (updated to Indigo)
 
Tycho Tutorial EclipseCon 2013
Tycho Tutorial EclipseCon 2013Tycho Tutorial EclipseCon 2013
Tycho Tutorial EclipseCon 2013
 
What is new in Helios
What is new in HeliosWhat is new in Helios
What is new in Helios
 
javagruppen.dk - e4, the next generation Eclipse platform
javagruppen.dk - e4, the next generation Eclipse platformjavagruppen.dk - e4, the next generation Eclipse platform
javagruppen.dk - e4, the next generation Eclipse platform
 
Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)
 
Plug yourself in and your app will never be the same (2 hour edition)
Plug yourself in and your app will never be the same (2 hour edition)Plug yourself in and your app will never be the same (2 hour edition)
Plug yourself in and your app will never be the same (2 hour edition)
 
Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012
Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012
Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012
 
Discovering the p2 API
Discovering the p2 APIDiscovering the p2 API
Discovering the p2 API
 
Eclipse Overview
Eclipse Overview Eclipse Overview
Eclipse Overview
 
ITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-insITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-ins
 
Ef Poco And Unit Testing
Ef Poco And Unit TestingEf Poco And Unit Testing
Ef Poco And Unit Testing
 
Lotusphere 2011 Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
Lotusphere 2011  Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...Lotusphere 2011  Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
Lotusphere 2011 Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
 
Plug yourself in and your app will never be the same (1 hr edition)
Plug yourself in and your app will never be the same (1 hr edition)Plug yourself in and your app will never be the same (1 hr edition)
Plug yourself in and your app will never be the same (1 hr edition)
 
Eclipse Plug-in Develompent Tips And Tricks
Eclipse Plug-in Develompent Tips And TricksEclipse Plug-in Develompent Tips And Tricks
Eclipse Plug-in Develompent Tips And Tricks
 
Staying ahead of the multi-core revolution with CDT debug
Staying ahead of the multi-core revolution with CDT debugStaying ahead of the multi-core revolution with CDT debug
Staying ahead of the multi-core revolution with CDT debug
 
Os Tibbittstutorial
Os TibbittstutorialOs Tibbittstutorial
Os Tibbittstutorial
 
Fun with ASP.NET MVC 3, MEF and NuGet
Fun with ASP.NET MVC 3, MEF and NuGetFun with ASP.NET MVC 3, MEF and NuGet
Fun with ASP.NET MVC 3, MEF and NuGet
 
Demystifying dot NET reverse engineering - Part1
Demystifying  dot NET reverse engineering - Part1Demystifying  dot NET reverse engineering - Part1
Demystifying dot NET reverse engineering - Part1
 
EEF You Want Sexy Properties ...
EEF You Want Sexy Properties ...EEF You Want Sexy Properties ...
EEF You Want Sexy Properties ...
 
eBPF — Divulging The Hidden Super Power.pdf
eBPF — Divulging The Hidden Super Power.pdfeBPF — Divulging The Hidden Super Power.pdf
eBPF — Divulging The Hidden Super Power.pdf
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 

Recently uploaded (20)

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 

EclipseCon 2010: Make Me an Eclipse View with PTP ETFw

  • 1. Make Me an Eclipse View (with less Plumbing): The PTP External Tools Framework Feedback View Beth R. Tibbitts IBM Corp. tibbitts@us.ibm.com March, 2010 EclipseCon 2010, Santa Clara This material is partly based upon work supported by the Defense Advanced Research Projects Agency under its Agreement No. HR0011-07-9-0002 EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 1 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 2. Background/Motivation •  You have a tool that generates information about a (source code) file, including line numbers •  You want to display the information to the end-user is a way that makes it easy to navigate to that src code line •  Like the “Problems” view •  You don’t want to write a lot of Eclipse “plumbing” code Problems view shows error Double-click on error to go to src line EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 2 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 3. Tool ETFw Feedback view ? File PTP External Tools Framework (ETFw) •  Provides simple way to integrate execution of existing (command-line?) tools into eclipse workbench •  But if your tool (launched from ETFw or not) has results, how to show user src lines that are relevant? •  Answer: ETFw Feedback view •  You provide: output file (e.g. xml file with info about src files and line numbers) A simple Parser that creates IFeedback items from your file (xml parser basics are in the sample) •  ETFw Feedback view provides: View with your items in a TreeTable view, mapped to src lines EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 3 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 4. ETFw Feedback view – What it looks like •  Select side file •  Select feedback action •  Show view •  Double-click line in view to highlight line of src EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 4 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 5. ETFw Feedback view – how to use •  See sample project: dev.eclipse.org / tools / org.eclipse.ptp / tools Project: org.eclipse.ptp.feedback.sample •  Add menus/actions, as desired – to invoke •  Name your parser recognized by initial node in side file (e.g. root XML node) •  Name your view •  Implement the action Most of the above classes are simple extensions of the base classes. Except.. EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 5 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 6. ETFw Feedback view parser – you implement …Except for the parser that interprets your side file and creates objects that can be shown in the view …etc. EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 6 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 7. Sample XML file <?xml version="1.0"?> <SampleXMLRoot> Root XML node identifies type of file <MyItem name="main is here" parent="mysample" file="sample.c" function="main" lineNo="14" isFunction="true" id="0"/> <MyItem name="loop is here" parent="mysample" file="sample.c" function="main" lineNo="16" isFunction="true" id="1"/> <MyItem name="this is return" parent="mysample" file="sample.c" function="turkey" lineNo="19" isFunction="true" id="2"/> <MyItem name="open brace" parent="braces" file="sample.c" function="turkey" lineNo="14" isFunction="true" id="3"/> <MyItem name="close brace" parent="braces" file="sample.c" function="turkey" lineNo="18" isFunction="true" id="4"/> </SampleXMLRoot> Parent node can be used to group items in Feedback view Tree EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 7 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 8. ETFw Feedback view with compiler reports •  Compiler attempts at inlining etc. •  Action can be attached. Refactoring? EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 8 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 9. ETFw Feedback view with Bottleneck reports EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 9 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 10. Summary •  Feedback view provides simple/easy way to view results of external tools •  Good reviews from users •  Can attach other actions… to leverage data from the tools •  PTP 3.0.x contains framework/abstract code for Feedback view •  PTP 4.0 in Helios too •  No concrete views; Sample project in CVS •  Simple Implementation now •  Some limitations now •  Open to suggestions on extensions / other uses EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 10 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
  • 11. References   Parallel Tools Platform: http://eclipse.org/ptp   ETFw wiki page: http://wiki.eclipse.org/PTP/ETFw/PTP_External_Tools_Framework   ETFw Feedback view specifically: http://wiki.eclipse.org/PTP/ETFw/PTP_External_Tools_Framework_Feedback_View EclipseCon 2010: Beth Tibbitts Make Me an Eclipse View … the PTP ETFw Feedback view 11 Copyright © IBM Corp. 2010. All rights reserved. Source code in this presentation is made available under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.