schema.moveParticipants.exsd Maven / Gradle / Ivy
The newest version!
This extension point is used to define refactoring move participants.
<p>
This extension point supports the <code><enablement></code> element.
<!-- see org.eclipse.ltk.core.refactoring.participants.ParticipantExtensionPoint#createEvaluationContext(..): -->
The default variable is the element to be moved.
<br>Defined variables for <code><with></code> expressions are:
</p>
<ul>
<li>"element": type <code>java.lang.Object</code>; the element to be moved (same as the default variable)</li>
<li>"affectedNatures": type <code>java.util.List<String></code>; the natures of all projects affected by the refactoring</li>
<li>"processorIdentifier": type <code>java.lang.String</code>; the id of the refactoring processor that will own the participant</li>
</ul>
a fully qualified identifier of the target extension point
an optional identifier of the extension instance
an optional name of the extension instance
unique identifier for the move participant.
a human reabable name of the move participant
the name of the class that provides the participant implementation.
The example below defines a type move participant. The participant is enabled if one of the project affected by the refactoring has a Java nature and when the type to be moved is a JUnit test.
<pre>
<moveParticipant
id="org.eclipse.jdt.junit.moveTypeParticipant"
name="%MoveTypeParticipant.name"
class="org.eclipse.jdt.internal.junit.ui.TypeMoveParticipant">
<enablement>
<with variable="affectedNatures">
<iterate operator="or">
<equals value="org.eclipse.jdt.core.javanature"/>
</iterate>
</with>
<with variable="element">
<instanceof value="org.eclipse.jdt.core.IType"/>
<test property="org.eclipse.jdt.junit.isTest"/>
</with>
</enablement>
</moveParticipant>
</pre>
3.0
The contributed class must extend <code>org.eclipse.ltk.core.refactoring.participants.MoveParticipant</code>
Copyright (c) 2001, 2013 IBM Corporation and others.<br>
This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at <a href="https://www.eclipse.org/legal/epl-2.0">https://www.eclipse.org/legal/epl-v20.html</a>/
SPDX-License-Identifier: EPL-2.0