handledMarkerTypes
elem a 3.2-es változat óta.
A 3.2-es verzió óta a kiterjesztések megadhatják, mely problémajelző típusokat képesek kezelni. Csak az ilyen típusú problémákat kapják meg feldolgozásra. Ha nincs megadva kezelt jelzőtípus, akkor a feldolgozó csak org.eclipse.jdt.core.problem, org.eclipse.jdt.core.buildpath_problem és org.eclipse.jdt.core.task (a 3.2-es változat előtti viselkedéssel kompatiblis) típusú problémákat kap.
Ez a kiterjesztési pont támogatja az enablement
címkét. A tesztelhető
tulajdonságok:
<!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+)>
Megadja azon problémák jelzőtípusait, melyeket ez a gyorsjavítás feldolgozó kezelni tud. Ha nincs megadva kezelt jelzőtípus, akkor a feldolgozó org.eclipse.jdt.core.problem, org.eclipse.jdt.core.buildpath_problem és org.eclipse.jdt.core.task típusú problémákat kap.
<!ELEMENT markerType EMPTY>
<!ATTLIST markerType
id CDATA #REQUIRED>
<!ELEMENT enablement (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Általános gyökérelem. Az elem kiterjesztési pontokon belül használható a hozzá tartozó enablement kifejez meghatározására. Az enablement kifejezések leszármazottai az and operátorral kombinálhatók.
<!ELEMENT not (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>
Ez az elem egy NOT műveletet képvisel a részelemeként kiértékelt kifejezés eredményén.
<!ELEMENT and (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Ez az elem egy AND műveletet képvisel a részelemeként kiértékelt összes kifejezés eredményén.
<!ELEMENT or (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Ez az elem egy OR műveletet képvisel a részelemeként kiértékelt összes kifejezés eredményén.
<!ELEMENT instanceof EMPTY>
<!ATTLIST instanceof
value CDATA #REQUIRED>
Ezzel az elemmel végezhető el a fókuszban lévő objektum instanceof ellenőrzése. A kifejezés az EvaluationResult.TRUE értékkel tér vissza, ha az objektum típusa a value attribútumban megadott típus altípusa. Ellenkező esetben EvaluationResult.FALSE kerül visszaadásra.
<!ELEMENT test EMPTY>
<!ATTLIST test
property CDATA #REQUIRED
args CDATA #IMPLIED
value CDATA #IMPLIED>
Ezzel az elemmel értékelhető ki a fókuszban lévő objektum tulajdonságának állapota. A tesztelhető tulajdonságok halmaza a tulajdonságtesztelő kiterjesztési ponton terjeszthető ki. A tesztelési kifejezés EvaluationResult.NOT_LOADED értéket ad vissza, ha a tényleges tesztelést végző tulajdonságtesztelő még nincs betöltve.
<!ELEMENT systemTest EMPTY>
<!ATTLIST systemTest
property CDATA #REQUIRED
value CDATA #REQUIRED>
Megvizsgál egy rendszertulajdonságot a System.getProperty metódus meghívásával, és összehasonlítja az eredményt a value attribútumban megadott értékkel.
<!ELEMENT equals EMPTY>
<!ATTLIST equals
value CDATA #REQUIRED>
Ezzel az elemmel végezhető el a fókuszban lévő objektum egyenlőségi ellenőrzése. A kifejezés az EvaluationResult.TRUE értékkel tér vissza, ha az objektum egyenlő a value attribútumban megadott értékkel. Ellenkező esetben EvaluationResult.FALSE kerül visszaadásra.
<!ELEMENT count EMPTY>
<!ATTLIST count
value CDATA #REQUIRED>
Ezzel az elemmel vizsgálható megy egy kollekció elemszáma.
<!ELEMENT with (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST with
variable CDATA #REQUIRED>
Az elem módosítja a leszármazott elemek tekintetében megvizsgálandó objektumot az adott változó által hivatkozott objektumra. Ha a változó nem oldható fel, akkor a kifejezés a kiértékelés során ExpressionException kivételt ad. A with kifejezések leszármazottai az and operátorral kombinálhatók.
<!ELEMENT resolve (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST resolve
variable CDATA #REQUIRED
args CDATA #IMPLIED>
Az elem módosítja a leszármazott elemek tekintetében megvizsgálandó objektumot az adott változó által hivatkozott objektumra. Ha a változó nem oldható fel, akkor a kifejezés a kiértékelés során ExpressionException kivételt ad. A with kifejezések leszármazottai az and operátorral kombinálhatók.
<!ELEMENT adapt (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST adapt
type CDATA #REQUIRED>
Ezzel az elemmel adaptálható a fókuszban lévő objektum a type attribútummal megadott típusra. A kifejezés "nincs betöltve" értéket ad vissza, ha a hivatkozott adapter vagy típus még nincs betöltve. ExpressionException kivételt ad a kiértékelés során, ha a típus neve egyáltalán nem létezik. Az adapt kifejezések leszármazottai az and operátorral kombinálhatók.
<!ELEMENT iterate (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST iterate
operator (or|and) >
Ezzel az elemmel iterálhatók a java.util.Collection típusú változók. Ha a fókuszban lévő objektum nem java.util.Collection típusú, akkor a kifejezés kiértékelése ExpressionException kivételt ad.
<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.text.java.IQuickFixProcessor
felületet kell megvalósítania.
Copyright (c) 2001, 2006 IBM Corporation és mások.
Minden jog fenntartva. Jelen program és annak kísérőanyagai a csomaghoz
tartozó, illetve a
http://www.eclipse.org/legal/epl-v10.html
címen is elérhető Eclipse Public License 1.0 verziójának hatálya alatt lettek
közzétéve.