Eclipse One Inspector


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的更多相关文章
- 使用Eclipse Memory Analyzer Tool(MAT)分析线上故障(一) - 视图&功能篇
Eclipse Memory Analyzer Tool(MAT)相关文章目录: 使用Eclipse Memory Analyzer Tool(MAT)分析线上故障(一) - 视图&功能篇 使 ...
- Sencha EXTJS6的 Eclipse 插件安装指南
Sencha EXTJS的 Eclipse 插件安装指南 (翻译:苏生米沿) 本文地址:http://blog.csdn.net/sushengmiyan/article/details/52566 ...
- Eclipse MAT 安装及使用
Eclipse MAT官方网页:https://www.eclipse.org/mat/downloads.php 一.MAT是什么? MAT(Memory Analyzer Tool),一个基于Ec ...
- 转:Eclipse Memory Analyzer入门学习笔记
原文地址:https://blog.csdn.net/cc907566076/article/details/79108782 Eclipse Memory Analyzer是一个快速而功能丰富的Ja ...
- Eclipse MAT内存分析工具(Memory Analyzer Tool)
MAT内存分析工具 MAT是Memory Analyzer的简称,它是一款功能强大的Java堆内存分析器.可以用于查找内存泄露以及查看内存消耗情况.MAT是基于Eclipse开发的,是一款免费的性能分 ...
- Eclipse Configuration
*** Date: 2013年9月12日星期四中国标准时间上午8时41分50秒 *** Platform Details: *** System properties:applicationXMI=o ...
- (译)关于使用Eclipse Memory Analyzer的10点小技巧
作者 Rave_Tian 2016.02.01 17:56* 字数 2988 阅读 520评论 0喜欢 0 分析和理解应用的内存使用情况是开发过程中一项不小的挑战.一个微小的逻辑错误可能会导致监听器没 ...
- 【转】Eclipse MAT内存分析工具(Memory Analyzer Tool)
Eclipse MAT内存分析工具(Memory Analyzer Tool) MAT内存分析工具# MAT是Memory Analyzer的简称,它是一款功能强大的Java堆内存分析器.可以用于查找 ...
- 使用Eclipse Memory Analyzer Tool(MAT)分析故障
Eclipse Memory Analyzer Tool(MAT)是一个强大的基于Eclipse的内存分析工具,可以帮助我们找到内存泄露,减少内存消耗. 工作中经常会遇到一些内存溢出.内存泄露等问题, ...
随机推荐
- [JSOI2007]麻将 模拟 BZOJ1028
题目描述 麻将是中国传统的娱乐工具之一.麻将牌的牌可以分为字牌(共有东.南.西.北.中.发.白七种)和序数牌(分为条子.饼子.万子三种花色,每种花色各有一到九的九种牌),每种牌各四张. 在麻将中,通常 ...
- 苹果内购和 Apple Pay
作者:CC老师_MissCC链接:http://www.jianshu.com/p/e3bc47e81785來源:简书 苹果内购 1.什么是内购? 如果你购买的商品,是在本app中使用和消耗的,就一定 ...
- redis主从 && 伪群集
redis主从非常简单,仅需要要从上的配置文件里指定主的IP和端口就可以了.如果主上有密码,则再添加主的密码即可!! slaveof 192.168.15.230 6379 # 添加主上的IP和端口, ...
- 小数据池 is 和 == ,以及再谈编码
一.小数据池 1.id() 小数据池针对的是:int ,str,boo(都是不可变的数据类型) (1)如果是在py文件中写的字符串,几乎都是缓存的 (2)在黑窗口里写的机会都不会缓存 (3)不同的解释 ...
- 在OnActionExecuted 获取请求参数的值(包含类类型)
1.在OnActionExecuting里 获取请求参数的值 比较简单 /// <summary> /// 获取首参数的值 /// </summary> /// <par ...
- [转] Spring Boot配置多个DataSource
[From] https://www.liaoxuefeng.com/article/001484212576147b1f07dc0ab9147a1a97662a0bd270c20000 Sprin ...
- Djang视图层
视图 1.什么是视图 视图就是Django项目下的view.py,它的内部是一系列的函数或者是类,用来专门处理客户端访问请求并且返回相应的数据,相当于一个中央处理系统. 2.具体视图实例 3.CBV和 ...
- aoj0118
一.题意:有三种水果分别用,'@','*','#'三种符号表示,上下左右相连的同种水果被看做是一个区域,问一共有多少个区域 二.思路:用dfs去标记相连区域,然后遍历每个没有被标记的位置进行dfs 三 ...
- webAPI过滤器返回数据加密
项目需求: 接口返回的数据,存在一些敏感信息,不希望其他用户看到,将Data进行加密传输 代码如下: public class EncryptDataFilterAttribute : ActionF ...
- RBAC基于角色的权限访问控制
RBAC是什么,能解决什么难题?ThinkPHP中RBAC实现体系安全拦截器认证管理器访问决策管理运行身份管理器ThinkPHP中RBAC认证流程权限管理的具体实现过程RBAC相关的数据库介绍Th ...