Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Composition Setup
import.css=/download/attachments/6062824/tecnologia.css

Pagetitle
Reflection.isAnnotationObjectPresentgetObjectAnnotation
Reflection.isAnnotationObjectPresentgetObjectAnnotation

Efetua a busca de Procura e retorna uma Annotation em um objeto e retorna o seu valor.

Sintaxe

Bloco de código
collapsefalse
Reflection.isAnnotationObjectPresentgetObjectAnnotation( oObjxParam, cAnnotationName )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

oObjxParam**

objeto/caractere**

Objeto instância da classe/nome da classe** Indica o objeto onde será procurado/a a Annotation.

X


cAnnotationName 

caractere

Indica o nome Nome da Annotation que será 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

JsonObjectobjectRetorna

o object Json caso encontre a Annotation no objeto passado e NIL caso não encontre.Objeto Json  cuja propriedade é a Annotation contendo seu valor. Caso não encontre o retorno é NIL

Exemplos

Bloco de código
languagecpp
themeEclipse
titleExemplo 1exemplo1.tlpp
linenumberstrue
collapsefalse
@interface AnnotationExemplo
    #include "tlpp-core.th"

@annotation AnnotationGetObjectAnnotation
nickname as char
@end

@AnnotationExemplo@AnnotationGetObjectAnnotation(nickname = "CompanyTotvs")
classClass MeuObjetoGetObjectAnnotation
	publicPublic data data1
	public method newMethod New()
EndClass


main function usoDeAnnotation(Method New() class GetObjectAnnotation
Return Self

Function u_testGetObjectAnnotation(aResult)
	localLocal oObj := MeuObjetoGetObjectAnnotation():New()
	localLocal jRet

	ifjRet := (Reflection.isAnnotationObjectPresentgetObjectAnnotation(oObj,"AnnotationExemplo"))
	 "AnnotationGetObjectAnnotation")
	if (valType(jRet) <> 'U')
		conout(jRet["nickname"])
	else
		conout('Nao foi encontrada Annotation com os parametros informados')
	endIf
Return
Bloco de código
languagecpp
themeEclipse
titleexemplo2.tlpp
linenumberstrue
#include "tlpp-core.th"

@annotation AnnotationGetObjectAnnotation
nickname as char
@end

@AnnotationGetObjectAnnotation(nickname = "Totvs")
Class GetObjectAnnotation
	Public Method New()
EndClass

Method New() class GetObjectAnnotation
Return Self

Function u_testGetObjectAnnotation(aResult)
	Local jRet

	jRet := Reflection.getObjectAnnotation(oObj"GetObjectAnnotation", "AnnotationExemploAnnotationGetObjectAnnotation")
	if (valType(jRet) <> 'U')
		conout(jRet["NICKNAMEnickname"])
	else
	endif

return		conout('Nao foi encontrada Annotation com os parametros informados')
	endIf
Return

Resultado do Exemplo

CompanyTotvs

Abrangência

17.3.0.3

Veja também