Á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.getDataAnnotation( oObjxParam, cPropertyName, cAnnotationName )

...

Informações
titleimplementação de comportamento

A partir do build: 24.3.0.0, será possível enviar no parâmetro xParam apenas também haverá a opção de passar simplesmente o nome da classe (vide exemplo2) onde deve ser feita a busca da Annotation,  não sendo mais necessário passar a instancia do objeto(classe) para efetuar a busca(vide em xParam, conforme exemplo 2. Mas continua valendo a passagem da instância do objeto (exemplo 1). 

Retorno

Nome

Tipo

Descrição

jRet

objeto

Retorna um objeto do tipo Json  contendo o valor da Annotation na propriedade indicada e NIL caso não encontre.

...

Bloco de código
languagecpp
themeEclipse
titleexemplo1.tlpp
linenumberstrue
#include "tlpp-core.th"
 
@annotation DataAnnotation
  nickname as char
@end
 
Class GetDataAnnotation
  
  @DataAnnotation(nickname = "Company")
  Public data data1

  Public Method New()

EndClass

Method New() class GetDataAnnotation
Return Self
   
Function u_testGetDataAnnotation()

  Local oObj := GetDataAnnotation():New()
  Local jRet
  
  IfjRet (:= Reflection.isAnnotationDataPresentgetDataAnnotation(oObj, "data1", "DataAnnotation")

  if(valType(jRet) <> 'U')  
    Conout(jRet["nickname"])
  EndIf     

Return
Bloco de código
languagecpp
themeEclipse
titleexemplo2.tlpp
linenumberstrue
#include "tlpp-core.th"
 
@annotation DataAnnotation
  nickname as char
@end
 
Class GetDataAnnotation
  
  @DataAnnotation(nickname = "Company")
  Public data data1

  Public Method New()

EndClass

Method New() class GetDataAnnotation
Return Self
   
Function u_testGetDataAnnotation()

  Local jRet
  
  jRet := Reflection.getDataAnnotation(oObj"GetDataAnnotation", "data1", "DataAnnotation")
  if(valType(jRet) <> 'U')  
    Conout(jRet["nickname"])
  EndIf
  
Return

...