Przeglądarki kontekstu statusu refaktoryzacji

org.eclipse.ltk.ui.refactoring.statusContextViewers

3.0

Ten punkt rozszerzenia umożliwia definiowanie specjalnych przeglądarek umożliwiających wyświetlanie kontekstu wpisu statusu refaktoryzacji. Obiekt odczytujący punkt rozszerzenia udostępnia następujące predefiniowane zmienne, do których można się odwoływać za pomocą znacznika <with variable="...">:

context
Obiekt kontekstu zarządzany przez wpis statusu refaktoryzacji, który ma być wyświetlany w interfejsie użytkownika.

Dostęp do zmiennych można uzyskać za pomocą wyrażenia <with variable="..."/>. Domyślna zmienna używana podczas wartościowania wyrażenia jest powiązana ze zmienną kontekstu.

<!ELEMENT extension (statusContextViewer*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT statusContextViewer (enablement)>

<!ATTLIST statusContextViewer

id    CDATA #REQUIRED

class CDATA #REQUIRED>


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

Ogólny element główny. Element ten może być stosowany w ramach punktu rozszerzenia do zdefiniowania jego wyrażenia włączającego. Elementy potomne wyrażenia włączającego łączy się za pomocą operatora and.



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

Element ten odpowiada operacji NOT wykonywanej na wynikach oceny wyrażenia podelementu.



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

Element ten odpowiada operacji AND wykonywanej na wynikach oceny wszystkich wyrażeń podelementów.



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

Element ten odpowiada operacji OR wykonywanej na wynikach oceny wszystkich wyrażeń podelementów.



<!ELEMENT instanceof EMPTY>

<!ATTLIST instanceof

value CDATA #REQUIRED>

Element ten służy do wykonywania sprawdzenia instanceof obiektu aktywnego. Wyrażenie zwraca wartość EvaluationResult.TRUE, jeśli typ obiektu jest podtypem typu określonego atrybutem value. W przeciwnym razie zwracana jest wartość EvaluationResult.FALSE.



<!ELEMENT test EMPTY>

<!ATTLIST test

property CDATA #REQUIRED

args     CDATA #IMPLIED

value    CDATA #IMPLIED>

Element ten służy do oceny stanu właściwości obiektu aktywnego. Zbiór właściwości objętych testowaniem można rozszerzyć za pomocą punktu rozszerzenia testera właściwości. Wyrażenie testowe zwraca wartość EvaluationResult.NOT_LOADED, jeśli nie załadowano jeszcze testera właściwości wykonującego faktyczne testowanie.



<!ELEMENT systemTest EMPTY>

<!ATTLIST systemTest

property CDATA #REQUIRED

value    CDATA #REQUIRED>

Testuje właściwość systemową, wywołując metodę System.getProperty i porównując wynik z wartością określoną za pomocą atrybutu value.



<!ELEMENT equals EMPTY>

<!ATTLIST equals

value CDATA #REQUIRED>

Element ten służy do wykonywania sprawdzenia equals obiektu aktywnego. Wyrażenie zwraca wartość EvaluationResult.TRUE, jeśli obiekt jest równy wartości określonej atrybutem value. W przeciwnym razie zwracana jest wartość EvaluationResult.FALSE.



<!ELEMENT count EMPTY>

<!ATTLIST count

value CDATA #REQUIRED>

Element ten służy do sprawdzania liczby elementów w ramach kolekcji.



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

<!ATTLIST with

variable CDATA #REQUIRED>

Element ten zamienia obiekt, który ma być sprawdzany w odniesieniu do wszystkich elementów potomnych, na obiekt, do którego odnosi się dana zmienna. Jeśli zmiennej nie można zinterpretować, podczas oceny wyrażenie zgłasza wyjątek ExpressionException. Elementy potomne wyrażenia with łączy się za pomocą operatora and.



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

<!ATTLIST resolve

variable CDATA #REQUIRED

args     CDATA #IMPLIED>

Element ten zamienia obiekt, który ma być sprawdzany w odniesieniu do wszystkich elementów potomnych, na obiekt, do którego odnosi się dana zmienna. Jeśli zmiennej nie można przetłumaczyć, podczas oceny wyrażenie zgłasza wyjątek ExpressionException. Elementy potomne wyrażenia with łączy się za pomocą operatora and.



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

<!ATTLIST adapt

type CDATA #REQUIRED>

Element ten służy do dostosowywania obiektu aktywnego do typu określonego atrybutem type. Wyrażenie zwraca wartość not loaded, jeśli nie załadowano jeszcze adaptera lub typu, którego dotyczy odwołanie. Jeśli nazwa typu nie istnieje, podczas oceny zgłaszany jest wyjątek ExpressionException. Elementy potomne wyrażenia adapt łączy się za pomocą operatora and.



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

<!ATTLIST iterate

operator (or|and) >

Element ten służy do iteracji zmiennej typu java.util.Collection. Jeśli obiekt aktywny nie jest obiektem typu java.util.Collection, podczas oceny wyrażenia zgłaszany jest wyjątek ExpressionException.



Poniższy przykład dodaje przeglądarkę kontekstu statusu obiektów FileStatusContext.
   

<extension point=

"org.eclipse.ltk.ui.refactoring.statusContextViewers"

>

<statusContextViewer class=

"org.eclipse.ltk.internal.ui.refactoring.FileStatusContextViewer"

id=

"org.eclipse.ltk.internal.ui.refactoring.fileStatusContextViewer"

>

<enablement>

<instanceof value=

"org.eclipse.ltk.core.refactoring.FileStatusContext"

/>

</enablement>

</statusContextViewer>

</extension>

Dodana klasa musi rozszerzać klasę org.eclipse.ltk.ui.refactoring.IStatusContextViewer.