handledMarkerTypes
siden 3.2.
Fra og med 3.2 kan en utvidelse angi hvilke typer problemmerkere den kan behandle. Den får bare problemer av disse typene til behandling. Hvis ingen behandlede merketyper er oppgitt, får prosessoren bare problemer av typene org.eclipse.jdt.core.problem, org.eclipse.jdt.core.buildpath_problem og org.eclipse.jdt.core.task.
Dette utvidelsespunktet støtter koden enablement
. Egenskaper for testing er:
<!ELEMENT extension (quickFixProcessor*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT quickFixProcessor (enablement , handledMarkerTypes*)>
<!ATTLIST quickFixProcessor
id CDATA #REQUIRED
name CDATA #IMPLIED
class CDATA #REQUIRED
requiredSourceLevel CDATA #IMPLIED>
<!ELEMENT handledMarkerTypes (markerType+)>
Angir merketypene til problemene denne hurtigrettelseprosessoren kan behandle. Hvis ingen behandlede merketyper er oppgitt, får denne prosessoren problemer av typene org.eclipse.jdt.core.problem, org.eclipse.jdt.core.buildpath_problem og org.eclipse.jdt.core.task.
<!ELEMENT markerType EMPTY>
<!ATTLIST markerType
id CDATA #REQUIRED>
<!ELEMENT enablement (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Et generisk rotelement. Elementet kan brukes i et utvidelsespunkt for å definere det tilhørende aktiveringsuttrykket. Underordnede til et aktiveringsuttrykk kombineres med operatoren AND.
<!ELEMENT not (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>
Dette elementet representerer en NOT-operasjon på resultatet av evalueringen av underelementuttrykket.
<!ELEMENT and (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Dette elementet representerer en AND-operasjon på resultatet av evalueringen av alle de tilhørende delelementuttrykkene.
<!ELEMENT or (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Dette elementet representerer en OR-operasjon på resultatet av evalueringen av alle de tilhørende delelementuttrykkene.
<!ELEMENT instanceof EMPTY>
<!ATTLIST instanceof
value CDATA #REQUIRED>
Dette elementet brukes til å utføre en instanceof-kontroll av objektet i fokus. Uttrykket returnerer EvaluationResult.TRUE hvis objektets type er en subtype for typen som er oppgitt med value-attributtet. Ellers returneres EvaluationResult.FALSE.
<!ELEMENT test EMPTY>
<!ATTLIST test
property CDATA #REQUIRED
args CDATA #IMPLIED
value CDATA #IMPLIED>
Dette elementet brukes til å evaluere egenskapstilstanden til objektet i fokus. Settet med testbare egenskaper kan utvides ved hjelp av utvidelsespunktet for egenskapstesting. Restuttrykket returnerer EvaluationResult.NOT_LOADED hvis egenskapstesteren som utfører den faktiske testingen, ikke er lastet inn ennå.
<!ELEMENT systemTest EMPTY>
<!ATTLIST systemTest
property CDATA #REQUIRED
value CDATA #REQUIRED>
Tester en systemegenskap ved å sende kall til metoden System.getProperty, og sammenlikner resultatet med verdien som er oppgitt ved hjelp av value-attributtet.
<!ELEMENT equals EMPTY>
<!ATTLIST equals
value CDATA #REQUIRED>
Dette elementet brukes til å utføre en equals-kontroll av objektet i fokus. Uttrykket returnerer EvaluationResult.TRUE hvis objektet er lik verdien som er oppgitt av value-attributtet. Ellers returneres EvaluationResult.FALSE.
<!ELEMENT count EMPTY>
<!ATTLIST count
value CDATA #REQUIRED>
Dette elementet brukes til å teste antallet elementer i en samling.
<!ELEMENT with (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST with
variable CDATA #REQUIRED>
Dette elementet endrer objektet som skal inspiseres, for alle underordnede elementer til objektet det refereres til med den oppgitte variabelen. Hvis variabelen ikke kan behandles, vil uttrykket kaste et ExpressionException ved evaluering. Underordnede til et with-uttrykk kombineres ved hjelp av operatoren AND.
<!ELEMENT resolve (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST resolve
variable CDATA #REQUIRED
args CDATA #IMPLIED>
Dette elementet endrer objektet som skal inspiseres, for alle underordnede elementer til objektet det refereres til med den oppgitte variabelen. Hvis variabelen ikke kan behandles, vil uttrykket kaste et ExpressionException ved evaluering. Underordnede til et with-uttrykk kombineres ved hjelp av operatoren AND.
<!ELEMENT adapt (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST adapt
type CDATA #REQUIRED>
Dette elementet brukes til å tilpasse objektet i fokus til typen som er oppgitt av attributtet type. Uttrykket returnerer ikke lastet inn hvis adapteren eller typen som det refereres til, ikke er lastet inn. Det kaster et ExpressionException under evaluering hvis typenavnet ikke finnes i det hele tatt. Underordnede til et adapt-uttrykk kombineres ved hjelp av operatoren AND.
<!ELEMENT iterate (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST iterate
operator (or|and) >
Dette elementet brukes til å gjenta en variabel som er av typen java.util.Collection. Hvis objektet i fokus ikke er av typen java.util.Collection, kastes et ExpressionException ved evaluering av uttrykket.
<extension point=
"org.eclipse.jdt.ui.quickFixProcessors"
>
<quickFixProcessor id=
"AdvancedQuickFixProcessor"
name=
"Advanced Quick Fix Processor"
requiredSourceLevel=
"1.5"
class=
"com.example.AdvancedQuickFixProcessor"
>
<handledMarkerTypes>
<markerType id=
"org.eclipse.myplugin.audits"
/>
</handledMarkerTypes>
<enablement>
<with variable=
"projectNatures"
>
<iterate operator=
"or"
>
<equals value=
"org.eclipse.jdt.core.javanature"
/>
</iterate>
</with>
</enablement>
</quickFixProcessor>
</extension>
org.eclipse.jdt.ui.java.IQuickFixProcessor
Copyright (c) 2001, 2006 IBM Corporation and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html