El analizador de anotaciones y rastreo proporciona soporte autónomo y de plug-ins para las utilidades de registro cronológico de anotaciones siguientes:
Este soporte implica:
Este soporte se proporciona mediante los plug-ins siguientes:
Programa de utilidad de anotaciones |
Archivos JAR de plug-ins |
---|---|
Anotaciones Java (JSR-047) |
org.eclipse.hyades.logging.core\hl14.jar |
Anotaciones Apache Jakarta Commons |
org.eclipse.hyades.logging.core\hlcommons.jar |
Anotaciones Apache Jakarta Log4J |
org.eclipse.hyades.logging.core\hllog4j.jar |
Common Base Event V1.0.1 de EMF |
org.eclipse.hyades.logging.core\hlcbe101.jar |
En los siguientes apartados se describen los detalles de cada tipo de soporte de programa de utilidad de anotaciones y proporcionan punteros a ejemplos que demuestran la manera en que pueden utilizarse.
Extensión de la clase java.util.logging.LogRecord del paquete org.eclipse.hyades.logging.java14 que le permite crear registros de anotaciones personalizados para anotar un org.eclipse.hyades.logging.events.cbe.CommonBaseEvent en un java.util.logging.LogRecord. Este org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord amplía java.util.logging.LogRecord y contiene una referencia a un org.eclipse.hyades.logging.events.cbe.CommonBaseEvent. Todas las propiedades de java.util.logging.LogRecord se correlacionan con una o varias propiedades del evento base común para mantener la reflexividad para manejadores y formateadores que no soportan eventos base comunes.
Implementación de la interfaz java.util.logging.Filter del paquete org.eclipse.hyades.logging.java14 que solamente permite anotar satisfactoriamente org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord.
Una extensión de la clase abstracta java.util.logging.Formatter del paquete org.eclipse.hyades.logging.java14 permite configurar manejadores para formatear mensajes de anotaciones org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord y java.util.logging.LogRecord a XML. Este formateador org.eclipse.hyades.logging.java14.XmlFormatter convierte los mensajes de anotaciones org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord o java.util.logging.LogRecord en XML basándose en el esquema de Evento Base Común v1.0.1. Al realizar el formateo, se comprueba el mensaje de anotación para ver si implementa la interfaz org.eclipse.hyades.logging.core.IExternalizableToXml (por ejemplo, org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord). Si la implementa, se llama a la API externalizeCanonicalXmlString() en lugar de la serialización XML. De lo contrario, el mensaje de anotación java.util.logging.LogRecord se convierte a un objeto de Evento Base Común utilizando la misma correlación que en org.eclipse.hyades.logging.events.cbe.CommonBaseEvent y se serializa a XML llamando a la API externalizeCanonicalXmlString().
Una extensión de la clase abstracta
java.util.logging.Handler del paquete
org.eclipse.hyades.logging.java que permite configurar anotadores de modo
que anoten mensajes de anotación
org.eclipse.hyades.logging.events.cbe.CommonBaseEvent y
java.util.logging.LogRecord en un agente de anotaciones.
Este manejador org.eclipse.hyades.logging.java.LoggingAgentHandler comprueba si el mensaje de anotaciones org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord o java.util.logging.LogRecord anotado en un registrador de anotaciones puede anotarse basándose en el filtro del registrador de anotaciones y del manejador y el nivel de registro cronológico. Si el mensaje de anotaciones debe anotarse, se resuelve un agente de anotación con el mismo nombre que el anotador que anota el mensaje. De lo contrario, puede utilizar el manejador org.eclipse.hyades.logging.java.SingleLoggingAgentHandler, que crea un agente de anotaciones denominado Logging Agent Handler. El mensaje se formatea en XML mediante una clase org.eclipse.hyades.logging.java.XmlFormatter y se escribe en el agente de anotación.
Ejemplo ilustrativo
Se proporciona un ejemplo para mostrarle la manera de aprovechar el soporte para las anotaciones Java JSR-047, ilustrando la configuración e instrumentación necesarias para usuarios nuevos y existentes del soporte autónomo y de plug-in para anotaciones Java JSR-047. Para obtener más información, abra Archivo > Nuevo > Ejemplo... > Ejemplo de anotaciones JSR-047.
Implementación de la interfaz org.apache.commons.logging.Log del paquete org.eclipse.hyades.logging.commons que permite crear un registrador de anotaciones para anotar mensajes de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object y java.lang.Throwable. Este registrador org.eclipse.hyades.logging.commons.Logger comprueba si los mensajes de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object o java.lang.Throwable anotados en un registrador de anotaciones se pueden anotar basándose en el nivel de anotación del registrador de anotaciones. Si el mensaje de anotación debe anotarse, los mensajes de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object o java.lang.Throwable se formatean y se anotan. Se proporciona una implementación de la clase abstracta org.apache.commons.logging.LogFactory que representa una fábrica de proxy específica para instancias de org.eclipse.hyades.logging.commons.Logger. Esta fábrica de proxy org.eclipse.hyades.logging.commons.LoggerFactory está pensada para ser utilizada en múltiples entornos de cargadores de clases, en los que se necesitan uno o varios tipos distintos de registradores de anotaciones y sus fábricas para cada cargadpr de clases separado, todos ellos utilizando los mismos binarios de Apache Commons.
El org.eclipse.hyades.logging.commons.Logger formatea mensajes de anotaciones org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object y java.lang.Throwable a XML basándose en el esquema de Evento Base Común v1.0.1. Al realizar el formateo, se comprueba el mensaje de anotación para ver si implementa la interfaz org.eclipse.hyades.logging.core.IExternalizableToXml (por ejemplo, org.eclipse.hyades.logging.events.cbe.CommonBaseEvent). Si la implementa, se llama a la API externalizeCanonicalXmlString() en lugar de la serialización XML. De lo contrario, el mensaje de anotación java.lang.Object o java.lang.Throwable se convierte a un objeto de Evento Base Común utilizando los métodos org.eclipse.hyades.logging.events.cbe.util.EventHelpers.convertObjectToCommonBaseEvent() y se serializa a XML llamando a la API externalizeCanonicalXmlString().
El org.eclipse.hyades.logging.commons.Logger anota mensajes de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object y java.lang.Throwable en un agente de anotación. Si el mensaje de anotaciones debe anotarse, se resuelve un agente de anotación con el mismo nombre que el anotador que anota el mensaje. El mensaje se formatea en XML y se escribe en el agente de anotación.
Implementación de la interfaz org.apache.commons.logging.Log del paquete org.eclipse.hyades.logging.commons que permite crear un registrador de anotaciones para anotar mensajes de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object y java.lang.Throwable en un archivo local. Este org.eclipse.hyades.logging.commons.FileLogger comprueba si los mensajes de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object o java.lang.Throwable que deben anotarse en un registrador de anotaciones pueden anotarse basándose en el nivel de anotación del registrador de anotaciones. Si el mensaje de anotación debe anotarse, el mensaje de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object o java.lang.Throwable se formatea a XML y se anota en un archivo local. Se proporciona una implementación de la clase abstracta org.apache.commons.logging.LogFactory que representa una fábrica de proxy específica para instancias de org.eclipse.hyades.logging.commons.FileLogger. Esta fábrica de proxy org.eclipse.hyades.logging.commons.FileLoggerFactory está pensada para ser utilizada en múltiples entornos de cargadores de clases, en los que se necesitan uno o varios tipos distintos de registradores de anotaciones y sus fábricas para cada cargadpr de clases separado, todos ellos utilizando los mismos binarios de Apache Commons.
Ejemplo ilustrativo
Se proporciona un ejemplo para mostrarle la manera de aprovechar el soporte para las anotaciones Apache Jakarta Commons, ilustrando la configuración e instrumentación necesarias para usuarios nuevos y existentes del soporte autónomo y de plug-in para anotaciones Apache Jakarta Commons. Para obtener más información, vea Archivo > Nuevo > Ejemplo... > Ejemplo de anotaciones Apache Commons.
La propiedad de mensaje del mensaje de anotación org.apache.log4j.spi.LoggingEvent permite anotar un org.eclipse.hyades.logging.events.cbe.CommonBaseEvent.
Extensión de la clase abstracta org.apache.log4j.spi.Filter del paquete org.eclipse.hyades.logging.log4j que solamente permite anotar satisfactoriamente eventos org.eclipse.hyades.logging.events.cbe.CommonBaseEvent.
Extensión de la clase abstracta org.apache.log4j.Layout del paquete org.eclipse.hyades.logging.log4j que permite configurar añadidores para formatear mensajes de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent y org.apache.log4j.spi.LoggingEvent a XML. Este formateador org.eclipse.hyades.logging.log4j.XmlLayout convierte los mensajes de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent o org.apache.log4j.spi.LoggingEvent a XML basándose en el esquema de Evento Base Común v1.0.1. Al realizar el formato, se comprueba el mensaje de anotación para ver si la propiedad de mensaje de org.apache.log4j.spi.LoggingEvent implementa la interfaz org.eclipse.hyades.logging.core.IExternalizableToXml (por ejemplo, org.eclipse.hyades.logging.events.cbe.CommonBaseEvent). Si la implementa, se llama a la API externalizeCanonicalXmlString() en lugar de la serialización XML. De lo contrario, el mensaje de anotación org.apache.log4j.spi.LoggingEvent se convierte a un objeto de Evento Base Común utilizando los métodos org.eclipse.hyades.logging.events.cbe.util.EventHelpers.convertObjectToCommonBaseEvent() y se serializa a XML llamando a la API externalizeCanonicalXmlString().
Extensión de la clase abstracta
org.apache.log4j.AppenderSkeleton del paquete
org.eclipse.hyades.logging.log4j que permite configurar los registradores de
anotaciones para que anoten mensajes
org.eclipse.hyades.logging.events.cbe.CommonBaseEvent y
org.apache.log4j.spi.LoggingEvent a un agente de anotación.
Este añadidor org.eclipse.hyades.logging.log4j.LoggingAgentAppender comprueba si los mensajes de anotación org.eclipse.hyades.logging.events.cbe.CommonBaseEvent y org.apache.log4j.spi.LoggingEvent anotados en un registrador de anotaciones se pueden anotar basándose en el filtro y nivel de anotación del registrador de anotaciones y del añadidor. Si el mensaje de anotaciones se anotará, se resuelve un agente de anotación con el mismo nombre que el anotador que anota el mensaje. De lo contrario, puede utilizar el añadidor org.eclipse.hyades.logging.log4j.SingleLoggingAgentAppender que crea un agente de anotación denominado Logging Agent Appender. El mensaje se formatea a XML utilizando un org.eclipse.hyades.logging.log4j.XmlLayout y se escribe en el agente de anotación.
Ejemplo ilustrativo
Se proporciona un ejemplo para mostrarle la manera de aprovechar el soporte para las anotaciones Apache Jakarta Log4J, ilustrando la configuración e instrumentación necesarias para usuarios nuevos y existentes del soporte autónomo y de plug-in para anotaciones Apache Jakarta Log4J. Para obtener más información, vea Archivo > Nuevo > Ejemplo... > Ejemplo de anotaciones Apache Log4J.
Ejemplo ilustrativo
Se proporciona un ejemplo para mostrar cómo potenciar el soporte para Eventos base comunes de EMF creando Eventos base comunes con la fábrica de eventos de plantilla de archivos XML de Evento base común. Para obtener más información, vea Archivo > Nuevo > Ejemplo... > Ejemplo de Common Base Event v1.0.1 de EMF.
Conceptos relacionados
Modelo de Evento base común (CBE)
(C) Copyright IBM Corporation 2000, 2006. Reservados todos los derechos.