import {ClassUtil} from './ClassUtil'; import {LoggerAnnotation} from './LoggerAnnotation'; //========================================================== // 日志描述类。 // // @param clazz 类对象 // @author maocy // @version 160227 //========================================================== export function Logger() { return function(target, name, descriptor) { // 注册描述器 var annotation: LoggerAnnotation = new LoggerAnnotation(name, descriptor.value); ClassUtil.registerAnnotation(target, annotation); // 函数跟踪 var callback = descriptor.value; //descriptor.value = function(...parameters: Array) { descriptor.value = function() { return annotation.invoke(this, (arguments as any)); } } }