Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
collapsefalse
Reflection.getMethodParmAnnotation( oObjectxParam, cMethodName, nParmPos, cAnnotationName)

...

Nome

Tipo

Descrição

Obrigatório

Referência

oObjectxParam**

objeto/caractere**

Objeto instância da classe/nome da classe** proprietário/a** do método onde será procurada a Annotation.

X


cMethodName

caractere

Nome do método onde será procurada a Annotation.

X


nParmPos
numéricoPosição do parâmetro onde será procurada a Annotation           X
cAnnotationName
caractereNome da Annotation a ser procurada.           X
Informações
titleImplementação de comportamento

A partir do build 24.3.0.0, também haverá a opção de passar simplesmente o nome da classe em xParam, conforme exemplo 2. Mas continua valendo a passagem da instância do objeto (exemplo 1). 

Retorno

Nome

Tipo

Descrição

jRet

objeto

Objeto do tipo Json sendo a propriedade a Annotation e contendo o valor da mesma. Retorna NIL caso não encontre resultado para a busca.

...

Exemplo

Bloco de código
languagecpp
themeEclipse
titletest_doc_getMethodParmAnnotationexemplo1.tlpp
linenumberstrue
#include "tlpp-core.th"


@annotation AnnotationGetMethodParmAnnotation
nickname as char
@end

Class GetMethodParmAnnotation

	Public Method New()
	Public Method ParmAnnotation(@AnnotationGetMethodParmAnnotation("annotation parm1") parm1, @AnnotationGetMethodParmAnnotation("annotation parm2") parm2)
EndClass

Method New() class GetMethodParmAnnotation
Return Self

Function u_testGetMethodParmAnnotation()

	Local oObj := GetMethodParmAnnotation():New()
	Local jRet

	jRet := Reflection.getMethodParmAnnotation(oObj, "ParmAnnotation", 1, "AnnotationGetMethodParmAnnotation")
	Conout(jRet["nickname"])

	jRet := Reflection.getMethodParmAnnotation(oObj,"ParmAnnotation", 2, "AnnotationGetMethodParmAnnotation")
	Conout(jRet["nickname"])
Return
Bloco de código
languagecpp
themeEclipse
titleexemplo2.tlpp
linenumberstrue
#include "tlpp-core.th"


@annotation AnnotationGetMethodParmAnnotation
nickname as char
@end

Class GetMethodParmAnnotation

	Public Method New()
	Public Method ParmAnnotation(@AnnotationGetMethodParmAnnotation("annotation parm1") parm1, @AnnotationGetMethodParmAnnotation("annotation parm2") parm2)
EndClass

Method New() class GetMethodParmAnnotation
Return Self

Function u_testGetMethodParmAnnotation()

	Local jRet

	jRet := Reflection.getMethodParmAnnotation("GetMethodParmAnnotation", "ParmAnnotation", 1, "AnnotationGetMethodParmAnnotation")
	Conout(jRet["nickname"])

	jRet := Reflection.getMethodParmAnnotation("GetMethodParmAnnotation","ParmAnnotation", 2, "AnnotationGetMethodParmAnnotation")
	Conout(jRet["nickname"])
Return

...