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. Matlab2015 双目相机自动标定

    标定步骤 调出标定工具箱 在命令行输入stereoCameraCalibrator,出现如下界面: 勾选相应的选项 然后将上面的“Skew”.“Tangential Distortion”以及“3 C ...

  2. python基础03-循环结构及函数基础

    循环结构及函数基础 循环结构(for-in) 说明:也是循环结构的一种,经常用于遍历字符串.列表,元组,字典等 格式: for x in y: 循环体 执行流程:x依次表示y中的一个元素,遍历完所有元 ...

  3. vue 阻止冒泡弹窗小案例( 知识点:@click.stop=''")

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

  4. git 各个区的区别

    Git有三大区(工作区.暂存区.版本库)以及几个状态(untracked.unstaged.uncommited) 把文件往Git版本库里添加的时候,是分两步执行的: 第一步是用 git add 把文 ...

  5. 【算法笔记】B1011 A+B 和 C

    1011 A+B 和 C (15 分) 给定区间 [−2​31​​,2​31​​] 内的 3 个整数 A.B 和 C,请判断 A+B 是否大于 C. 输入格式: 输入第 1 行给出正整数 T (≤10 ...

  6. 用 ASP.NET MVC 实现基于 XMLHttpRequest long polling(长轮询) 的 Comet

    ASP.NET 计时器   http://www.cnblogs.com/dudu/archive/2011/10/17/2215321.html   http://www.cnblogs.com/w ...

  7. 牌型种数-dfs-蓝桥杯2015

    牌型种数 牌型种数 小明被劫持到 X 赌城,被迫与其他 3 人玩牌. 一副扑克牌(去掉大小王牌,共 52 张),均匀发给 4 个人,每个人 13 张. 这时,小明脑子里突然冒出一个问题: 如果不考虑花 ...

  8. hdu 2654 Be a hero

    ()Become A Hero Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  9. mutillidae之Insert型注入

    A1:Insert型注入 1.输入内容,确定内容输出位置,确定插入字段顺序 输入test')-- -,页面报错,可知test并非最后一个字段,继续尝试test','123'),页面返回正常,确定tes ...

  10. pycharm和webstorm永久激活方法

    永久激活方法 准备工作 下载JetBrains产品(pycharm.webstorm),自行安装.链接地址:http://www.jetbrains.com/products.html 下载Crack ...