handledMarkerTypes
desde a 3.2.
Desde a 3.2, uma extensão pode especificar quais tipos de marcadores de problemas podem ser tratados. Somente problemas desses tipos serão processados. Se nenhum tipo de marcador tratado for especificado, o processador receberá problemas apenas dos tipos org.eclipse.jdt.core.problem, org.eclipse.jdt.core.buildpath_problem e org.eclipse.jdt.core.task (compatível com o comportamento anterior à 3.2).
Este ponto de extensão suporta a tag enablement
. As propriedades para teste são:
<!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+)>
Especifica os tipos de marcadores dos problemas que podem ser tratados por esse processador de correção rápida. Se nenhum tipo de marcador tratado for especificado, o processador receberá problemas dos tipos org.eclipse.jdt.core.problem, org.eclipse.jdt.core.buildpath_problem e 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)*>
Um elemento de raiz genérico. O elemento pode ser utilizado dentro de um ponto de extensão para definir sua expressão de ativação. Os filhos de uma expressão de ativação são combinados utilizando o operador and.
<!ELEMENT not (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>
Esse elemento representa uma operação NOT como resultado da avaliação da expressão do subelemento.
<!ELEMENT and (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Esse elemento representa uma operação AND como resultado da avaliação de todas as expressões dos subelementos.
<!ELEMENT or (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Esse elemento representa uma operação OR como resultado da avaliação de todas as expressões do subelemento.
<!ELEMENT instanceof EMPTY>
<!ATTLIST instanceof
value CDATA #REQUIRED>
Este elemento é utilizado para executar uma instância de verificação do objeto em foco. A expressão retornará EvaluationResult.TRUE se o tipo do objeto for um subtipo do tipo especificado pelo valor do atributo. Caso contrário, EvaluationResult.FALSE será retornado.
<!ELEMENT test EMPTY>
<!ATTLIST test
property CDATA #REQUIRED
args CDATA #IMPLIED
value CDATA #IMPLIED>
Esse elemento é utilizado para avaliar o estado da propriedade do objeto em foco. O conjunto de propriedades testáveis pode ser estendido utilizando o ponto de extensão do testador de propriedade. A expressão de teste retornará EvaluationResult.NOT_LOADED se o testador de propriedade que realiza o teste real ainda não estiver carregado.
<!ELEMENT systemTest EMPTY>
<!ATTLIST systemTest
property CDATA #REQUIRED
value CDATA #REQUIRED>
Testa uma propriedade do sistema chamando o método System.getProperty e compara o resultado com o valor especificado por meio do atributo de valor.
<!ELEMENT equals EMPTY>
<!ATTLIST equals
value CDATA #REQUIRED>
Esse elemento é utilizado para executar uma verificação equals do objeto em foco. A expressão retorna EvaluationResult.TRUE se o objeto for igual ao valor fornecido pelo valor do atributo. Caso contrário, EvaluationResult.FALSE será retornado.
<!ELEMENT count EMPTY>
<!ATTLIST count
value CDATA #REQUIRED>
Esse elemento é utilizado para testar o número de elementos em uma coleta.
<!ELEMENT with (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST with
variable CDATA #REQUIRED>
O elemento altera o objeto, a ser inspecionado para todos os seus elementos filho, para o objeto referido pela variável fornecida. Se a variável não puder ser resolvida, a expressão lançará um ExpressionException ao avaliá-la. Os filhos de uma expressão são combinados utilizando o operador and.
<!ELEMENT resolve (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST resolve
variable CDATA #REQUIRED
args CDATA #IMPLIED>
O elemento altera o objeto, a ser inspecionado para todos os seus elementos filho, para o objeto referido pela variável fornecida. Se a variável não puder ser resolvida, a expressão lançará um ExpressionException ao avaliá-la. Os filhos de uma expressão são combinados utilizando o operador and.
<!ELEMENT adapt (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST adapt
type CDATA #REQUIRED>
Este elemento é utilizado para adaptar o objeto em foco ao tipo especificado pelo tipo de atributo. A expressão será retornada sem carregar, se o adaptador ou o tipo referido ainda não estiver carregado. Isso lança um ExpressionException durante a avaliação se o nome do tipo não existir. Os filhos de uma expressão de adaptação são combinados utilizando o operador and.
<!ELEMENT iterate (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST iterate
operator (or|and) >
Esse elemento é utilizado para repetir uma variável do tipo java.util.Collection. Se o objeto em foco não for do tipo java.util.Collection uma ExpressionException será lançada durante a avaliação da expressão.
<extension point=
"org.eclipse.jdt.ui.quickFixProcessors"
>
<quickFixProcessor id=
"AdvancedQuickFixProcessor"
name=
"Processador de Correção Rápida Avançada"
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
Direitos Autorais (c) 2001, 2006 IBM Corporation e outros.
Todos os direitos reservados.
Este programa e os materiais fornecidos com ele são
disponibilizados sob os termos da Licença Pública do Eclipse v1.0 que acompanha
esta distribuição e está disponível em
http://www.eclipse.org/legal/epl-v10.html