net.sf.yari.eclipse.EclipseInspectorViewPart

Through the outline of EclipseInspectorViewPart, we can get known how the above "Eclipse Inspector" view is created and what is happening when clicking some buttons or view opening or refreshing or setting memento, etc.

plugin.xml

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
<!-- expose this extension to outside -->
<extension-point id="net.sf.yari.eclipse" name="inspection" schema="schema/net.sf.yari.eclipse.exsd"/>
<extension point="org.eclipse.ui.views">
<view
category="net.sf.yari.category"
class="net.sf.yari.eclipse.EclipseInspectorViewPart" <!--Create a view and content inside of view-->
icon="icons/16x16/dialog-information.png"
id="net.sf.yari.eclipseInspectorView"
name="Eclipse Inspector">
</view>
</extension>
<extension point="org.eclipse.ui.commands">
<command
defaultHandler="net.sf.yari.eclipse.handler.EvaluateExpressionHandler" <!--command handler-->
description="opens a dialog where eclipse expressions can be validated"
id="net.sf.yari.openExpressionEvalutatorCommand"
name="Open Expression Evaluator"><!--MainMenu/YARI/Open Expression Evaluator-->
</command>
<command
defaultHandler="net.sf.yari.ui.internal.handler.OpenViewHandler"<!--command handler-->
description="opens a dialog which contains all available views"
id="net.sf.yari.eclipse.openViewList"
name="Open ViewSelection dialog"> <!--MainMenu/YARI/Open ViewSelection dialog-->
</command>
</extension>
<extension point="org.eclipse.ui.menus">
<menuContribution
locationURI="menu:yari?before=eclipse">
<command
commandId="net.sf.yari.openExpressionEvalutatorCommand"
id="net.sf.yari.menuContribution.expressionEvalutator"
style="push"
tooltip="Open a dialog where eclipse expressions can be evaluated">
</command>
<command
commandId="net.sf.yari.eclipse.openViewList"
id="net.sf.yari.menuContribution.openViewList"
style="push"
tooltip="Opens a dialog which contains all available views">
</command>
</menuContribution>
</extension>
<extension point="net.sf.yari.eclipse"> <!--extension itself point which just is exposed-->
<eclipseInspection lookupClass="net.sf.yari.eclipse.internal.ContributionLookup">
</eclipseInspection> <!--set property of EclipseInspection interface by create a new object of ContributionLookup-->
<eclipseInspection lookupClass="net.sf.yari.eclipse.internal.MenuEntriesLookup">
</eclipseInspection>
<eclipseInspection lookupClass="net.sf.yari.eclipse.internal.WorkbenchLookup">
</eclipseInspection>
<eclipseInspection lookupClass="net.sf.yari.eclipse.internal.BundlesLookup">
</eclipseInspection>
<eclipseInspection lookupClass="net.sf.yari.eclipse.internal.JavaStuffLookup">
</eclipseInspection>
</extension> </plugin>

schema/net.sf.yari.eclipse.exsd

<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="net.sf.yari.eclipse" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appInfo>
<meta.schema plugin="net.sf.yari.eclipse" id="net.sf.yari.eclipse" name="inspection"/>
</appInfo>
<documentation>
[Enter description of this extension point.]
</documentation>
</annotation>
<element name="extension">
<annotation>
<appInfo>
<meta.element />
</appInfo>
</annotation>
<complexType>
<choice>
<element ref="eclipseInspection" minOccurs="1" maxOccurs="unbounded"/>
</choice>
<attribute name="point" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="id" type="string">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="name" type="string">
<annotation>
<documentation>
</documentation>
<appInfo>
<meta.attribute translatable="true"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="eclipseInspection">
<annotation>
<documentation>
hook for inspecting eclipse stuff
</documentation>
</annotation>
<complexType>
<attribute name="lookupClass" type="string" use="required"> <!--lookupClass property to look up all related class-->
<annotation>
<documentation>
</documentation>
<appInfo>
<meta.attribute kind="java" basedOn=":net.sf.yari.eclipse.IEclipseInspection"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appInfo>
<meta.section type="since"/>
</appInfo>
<documentation>
[Enter the first release in which this extension point appears.]
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="examples"/>
</appInfo>
<documentation>
[Enter extension point usage example here.]
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="apiinfo"/>
</appInfo>
<documentation>
[Enter API information here.]
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="implementation"/>
</appInfo>
<documentation>
[Enter information about supplied implementation of this extension point.]
</documentation>
</annotation>
</schema>

Eclipse One Inspector的更多相关文章

  1. 使用Eclipse Memory Analyzer Tool(MAT)分析线上故障(一) - 视图&功能篇

    Eclipse Memory Analyzer Tool(MAT)相关文章目录: 使用Eclipse Memory Analyzer Tool(MAT)分析线上故障(一) - 视图&功能篇 使 ...

  2. Sencha EXTJS6的 Eclipse 插件安装指南

    Sencha EXTJS的 Eclipse 插件安装指南 (翻译:苏生米沿) 本文地址:http://blog.csdn.net/sushengmiyan/article/details/52566 ...

  3. Eclipse MAT 安装及使用

    Eclipse MAT官方网页:https://www.eclipse.org/mat/downloads.php 一.MAT是什么? MAT(Memory Analyzer Tool),一个基于Ec ...

  4. 转:Eclipse Memory Analyzer入门学习笔记

    原文地址:https://blog.csdn.net/cc907566076/article/details/79108782 Eclipse Memory Analyzer是一个快速而功能丰富的Ja ...

  5. Eclipse MAT内存分析工具(Memory Analyzer Tool)

    MAT内存分析工具 MAT是Memory Analyzer的简称,它是一款功能强大的Java堆内存分析器.可以用于查找内存泄露以及查看内存消耗情况.MAT是基于Eclipse开发的,是一款免费的性能分 ...

  6. Eclipse Configuration

    *** Date: 2013年9月12日星期四中国标准时间上午8时41分50秒 *** Platform Details: *** System properties:applicationXMI=o ...

  7. (译)关于使用Eclipse Memory Analyzer的10点小技巧

    作者 Rave_Tian 2016.02.01 17:56* 字数 2988 阅读 520评论 0喜欢 0 分析和理解应用的内存使用情况是开发过程中一项不小的挑战.一个微小的逻辑错误可能会导致监听器没 ...

  8. 【转】Eclipse MAT内存分析工具(Memory Analyzer Tool)

    Eclipse MAT内存分析工具(Memory Analyzer Tool) MAT内存分析工具# MAT是Memory Analyzer的简称,它是一款功能强大的Java堆内存分析器.可以用于查找 ...

  9. 使用Eclipse Memory Analyzer Tool(MAT)分析故障

    Eclipse Memory Analyzer Tool(MAT)是一个强大的基于Eclipse的内存分析工具,可以帮助我们找到内存泄露,减少内存消耗. 工作中经常会遇到一些内存溢出.内存泄露等问题, ...

随机推荐

  1. HDU - 5997 树状数组+set

    和之前一道省选题目很像: (梦幻布丁): 我们维护的时候用树状数组维护,在断电处打上标记: 合并的时候小的合并到大的里面: #include<iostream> #include<c ...

  2. SpringMVC 商城项目

    1.  商城视频中有word   笔记文档

  3. Git的深入理解与GitHub托管服务的使用

    [转自] http://www.cnblogs.com/cocowool/archive/2012/02/17/2356125.html 源代码管理系统(SCM)与版本控制 版本控制是一种记录若干文件 ...

  4. 剪邮票--蓝桥杯--dfs--思路超清晰

    剪邮票 如[图1.jpg], 有12张连在一起的12生肖的邮票. 现在你要从中剪下5张来,要求必须是连着的. (仅仅连接一个角不算相连) 比如,[图2.jpg],[图3.jpg]中,粉红色所示部分就是 ...

  5. JENKINS安装及新建用户,权限配置

    JENKINS安装及新建用户,权限配置 1. 下载安装 jenkins 官网地址https://jenkins.io/index.html 下载地址https://jenkins.io/downloa ...

  6. 4.整体架构和Smart Scan

    寻道时间: 外圈,比内圈要多, 即外圈是比较快的. 第一次创建grid disk 时,是创建外圈,用于存放数据的,内圈存储归档这些数据 CellCLI> CREATE GRIDDISK ALL ...

  7. Java基础17-成员变量、return关键字和多参方法

    1.成员变量 在类中声明的变量为成员变量 //Dog类 class Dog{ String name;//成员变量 } public class Test1{ public static void m ...

  8. 移动端或APP禁止放大标识

    如果手机端或者APP的应用里面,有点击一下屏幕会自己放大,解决办法如下: 在头部添加一条meta标识 <meta name="viewport" content=" ...

  9. jQuery 文本插入和标签移动方法

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. D3(v5) in TypeScript 坐标轴之 饼状图生成

    饼状图生成时依旧遇到了类型问题,记录如下: import * as d3 from 'd3'; import * as React from 'react'; class TestGraph exte ...