Omdøb deltagere

org.eclipse.ltk.core.refactoring.renameParticipants

3.0

Dette udvidelsespunkt bruges til at definere refactoringomdøbningsdeltagere. Læseren af udtrykket leverer følgende foruddefinerede variabler, der kan henvises til vha. udtrykselementet <with variable="...">: Den standardvariabel, der bliver anvendt under evalueringen af udtrykket, er bundet til elementvariablen.

<!ELEMENT extension (renameParticipant*)>

<!ATTLIST-udvidelse

point CDATA #REQUIRED

id    CDATA #IMPLIED

navn  CDATA #IMPLIED>


<!ELEMENT renameParticipant (param* , enablement?)>

<!ATTLIST renameParticipant

id    CDATA #REQUIRED

name  CDATA #REQUIRED

class CDATA #REQUIRED>


<!ELEMENT param EMPTY>

<!ATTLIST param

name  CDATA #REQUIRED

value CDATA #REQUIRED>


<!ELEMENT enablement (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

Et generisk rodelement. Elementet kan anvendes i et udvidelsespunkt for at angive dets aktiveringsudtryk. Underordnede til et aktiveringsudtryk kombineres vha. en operator.



<!ELEMENT not (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>

Dette element repræsenterer en NOT-funktion på resultatet af evalueringen af dets underelementudtryk.



<!ELEMENT and (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

Dette element repræsenterer en AND-funktion på resultatet af evalueringen af dets underelementudtryk.



<!ELEMENT or (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

Dette element repræsenterer en OR-funktion på resultatet af evalueringen af alle dets underelementudtryk.



<!ELEMENT instanceof EMPTY>

<!ATTLIST instanceof

value CDATA #REQUIRED>

Dette element anvendes til at udføre et instanceof-check af objektet i fokus. Udtrykket returnerer EvaluationResult.TRUE, hvis objektets type er en undertype der er angivet af attributværdien. Eller returneres EvaluationResult.FALSE.



<!ELEMENT test EMPTY>

<!ATTLIST test

property CDATA #REQUIRED

args     CDATA #IMPLIED

value    CDATA #IMPLIED>

Dette element anvendes til evaluere egenskabstilstanden for objektet i fokus. Sættet af egenskaber, der kan testes, kan udvides vha. udvidelsespunktet egenskabstester. Testudtrykket returnerer EvaluationResult.NOT_LOADED, hvis egenskabstester, der udfører den aktuelle test, ikke er indlæst endnu.



<!ELEMENT systemTest EMPTY>

<!ATTLIST systemTest

property CDATA #REQUIRED

value    CDATA #REQUIRED>

Tester en systemegenskab ved at kalde metoden System.getProperty og sammenligner resultatet med den værdi, der er angivet via værdiattributten.



<!ELEMENT equals EMPTY>

<!ATTLIST equals

value CDATA #REQUIRED>

Dette element anvendes til at udføre en sammenligningskontrol af objektet i fokus. Udtrykket returnerer EvaluationResult.TRUE, hvis objektet er lig med værdiudbyderen for attributværdien. Eller returneres EvaluationResult.FALSE.



<!ELEMENT count EMPTY>

<!ATTLIST count

value CDATA #REQUIRED>

Dette element anvendes til at teste antallet af elementer i en samling.



<!ELEMENT with (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST with

variable CDATA #REQUIRED>

Dette element ændrer det objekt, der skal undersøges for alle underordnede elementer, til et objekt, der henvises til fra en given variabel. Hvis variablen ikke kan opløses, vil udtrykket sende en ExpressionException, når den evalueres. En underordnet med et with-udtryk kombineres ved at bruge 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 element ændrer det objekt, der skal undersøges for alle underordnede elementer, til et objekt, der henvises til fra en given variabel. Hvis variablen ikke kan opløses, vil udtrykket sende en ExpressionException, når den evalueres. En underordnet med et with-udtryk kombineres ved at bruge operatoren and.



<!ELEMENT adapt (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST adapt

type CDATA #REQUIRED>

Dette element anvendes til at tilpasse objekter i fokus til den type, der er angivet af attributtypen. Udtrykket returnerer ikke indlæst, hvis adapteren eller den type, der henvises til, ikke er indlæst endnu. Det sender enExpressionException under evalueringen, hvis typenavnet slet ikke findes. Underordnede til et tilpasset udtryk kombineres vha. operatoren AND.



<!ELEMENT iterate (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST iterate

operator (or|and) >

Dette element anvendes til gentagelser for en variabel, der har typen java.util.Collection. Hvis objektet i fokus ikke er af typen java.util.Collection, sendes der en ExpressionException, når udtrykket evalueres.



Eksemplet nedenfor definerer en omdøbningsdeltager, der deltager i en omdøbning af en type. Deltageren aktiveres, hvis et af de projekter, der påvirkes af refactoring, har en Java-natur, og hvis den type, der skal omdøbes, er en JUnit-test.

<renameParticipant id=

"org.eclipse.jdt.junit.renameTypeParticipant"

name=

"%RenameTypeParticipant.name"

class=

"org.eclipse.jdt.internal.junit.ui.TypeRenameParticipant"

>

<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>

</renameParticipant>

Den leverede klasse skal udvide org.eclipse.ltk.core.refactoring.participants.RenameParticipant