Class HypericAckProcessor

  • All Implemented Interfaces:
    java.lang.Runnable, AckProcessor, org.springframework.beans.factory.InitializingBean

    public class HypericAckProcessor
    extends java.lang.Object
    implements AckProcessor

    HypericAckProcessor class.

    Version:
    $Id: $
    Author:
    ranger
    • Field Detail

      • READER_NAME_HYPERIC

        public static final java.lang.String READER_NAME_HYPERIC
        Constant READER_NAME_HYPERIC="HypericReader"
        See Also:
        Constant Field Values
      • PARAMETER_PREFIX_HYPERIC_SOURCE

        public static final java.lang.String PARAMETER_PREFIX_HYPERIC_SOURCE
        Constant PARAMETER_PREFIX_HYPERIC_SOURCE="source:"
        See Also:
        Constant Field Values
      • ALERTS_PER_HTTP_TRANSACTION

        public static final int ALERTS_PER_HTTP_TRANSACTION
        Constant ALERTS_PER_HTTP_TRANSACTION=200
        See Also:
        Constant Field Values
    • Constructor Detail

      • HypericAckProcessor

        public HypericAckProcessor()
    • Method Detail

      • fetchUnclearedHypericAlarms

        public java.util.List<OnmsAlarm> fetchUnclearedHypericAlarms()

        fetchUnclearedHypericAlarms

        Returns:
        a List object.
      • getUrlForHypericSource

        public java.lang.String getUrlForHypericSource​(java.lang.String source)

        getUrlForHypericSource

        Parameters:
        source - a String object.
        Returns:
        a String object.
      • run

        public void run()

        run

        Specified by:
        run in interface java.lang.Runnable
      • findAlarmForHypericAlert

        public static OnmsAlarm findAlarmForHypericAlert​(java.util.List<OnmsAlarm> alarms,
                                                         java.lang.String platformId,
                                                         org.opennms.netmgt.ackd.readers.HypericAckProcessor.HypericAlertStatus alert)

        findAlarmForHypericAlert

        Parameters:
        alarms - a List object.
        platformId - a String object.
        alert - a HypericAckProcessor.HypericAlertStatus object.
        Returns:
        a OnmsAlarm object.
      • getAlertSourceParmValue

        public static java.lang.String getAlertSourceParmValue​(OnmsAlarm alarm)

        getAlertSourceParmValue

        Parameters:
        alarm - a OnmsAlarm object.
        Returns:
        a String object.
      • getAlertIdParmValue

        public static java.lang.String getAlertIdParmValue​(OnmsAlarm alarm)

        getAlertIdParmValue

        Parameters:
        alarm - a OnmsAlarm object.
        Returns:
        a String object.
      • getParmValueByRegex

        public static java.lang.String getParmValueByRegex​(OnmsAlarm alarm,
                                                           java.lang.String regex)

        Some parameter values that you might be interested in inside this class:

        • alert.id: ID of the alert in the remote Hyperic HQ system
        • alert.baseURL: Base URL of the Hyperic HQ service that generated the alert
        • alert.source: String key that identifies the Hyperic HQ service that generated the alert
        Parameters:
        alarm - The alarm to fetch parameters from
        regex - Java regex expression with a () group that will be returned
        Returns:
        The matching group from the regex
      • fetchHypericAlerts

        public static java.util.List<org.opennms.netmgt.ackd.readers.HypericAckProcessor.HypericAlertStatus> fetchHypericAlerts​(java.lang.String hypericUrl,
                                                                                                                                java.util.List<java.lang.String> alertIds)
                                                                                                                         throws java.io.IOException,
                                                                                                                                javax.xml.bind.JAXBException,
                                                                                                                                javax.xml.stream.XMLStreamException

        fetchHypericAlerts

        Parameters:
        hypericUrl - a String object.
        alertIds - a List object.
        Returns:
        a List object.
        Throws:
        org.apache.commons.httpclient.HttpException - if any.
        java.io.IOException - if any.
        javax.xml.bind.JAXBException - if any.
        javax.xml.stream.XMLStreamException - if any.
      • parseHypericAlerts

        public static java.util.List<org.opennms.netmgt.ackd.readers.HypericAckProcessor.HypericAlertStatus> parseHypericAlerts​(java.io.Reader reader)
                                                                                                                         throws javax.xml.bind.JAXBException,
                                                                                                                                javax.xml.stream.XMLStreamException

        parseHypericAlerts

        Parameters:
        reader - a Reader object.
        Returns:
        a List object.
        Throws:
        javax.xml.bind.JAXBException - if any.
        javax.xml.stream.XMLStreamException - if any.
      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws java.lang.Exception

        afterPropertiesSet

        Specified by:
        afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
        Throws:
        java.lang.Exception - if any.
      • setAlarmDao

        public void setAlarmDao​(AlarmDao dao)

        setAlarmDao

        Parameters:
        dao - a AlarmDao object.