001    /*
002     * CDDL HEADER START
003     *
004     * The contents of this file are subject to the terms of the
005     * Common Development and Distribution License, Version 1.0 only
006     * (the "License").  You may not use this file except in compliance
007     * with the License.
008     *
009     * You can obtain a copy of the license at
010     * trunk/opends/resource/legal-notices/OpenDS.LICENSE
011     * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
012     * See the License for the specific language governing permissions
013     * and limitations under the License.
014     *
015     * When distributing Covered Code, include this CDDL HEADER in each
016     * file and include the License file at
017     * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
018     * add the following below this CDDL HEADER, with the fields enclosed
019     * by brackets "[]" replaced with your own identifying information:
020     *      Portions Copyright [yyyy] [name of copyright owner]
021     *
022     * CDDL HEADER END
023     *
024     *
025     *      Copyright 2008 Sun Microsystems, Inc.
026     */
027    package org.opends.server.admin.std.server;
028    
029    
030    
031    import java.util.SortedSet;
032    import org.opends.server.admin.server.ConfigurationChangeListener;
033    import org.opends.server.admin.std.meta.ErrorLogPublisherCfgDefn.DefaultSeverity;
034    
035    
036    
037    /**
038     * A server-side interface for querying Error Log Publisher settings.
039     * <p>
040     * Error Log Publishers are responsible for distributing error log
041     * messages from the error logger to a destination.
042     */
043    public interface ErrorLogPublisherCfg extends LogPublisherCfg {
044    
045      /**
046       * Gets the configuration class associated with this Error Log Publisher.
047       *
048       * @return Returns the configuration class associated with this Error Log Publisher.
049       */
050      Class<? extends ErrorLogPublisherCfg> configurationClass();
051    
052    
053    
054      /**
055       * Register to be notified when this Error Log Publisher is changed.
056       *
057       * @param listener
058       *          The Error Log Publisher configuration change listener.
059       */
060      void addErrorChangeListener(ConfigurationChangeListener<ErrorLogPublisherCfg> listener);
061    
062    
063    
064      /**
065       * Deregister an existing Error Log Publisher configuration change listener.
066       *
067       * @param listener
068       *          The Error Log Publisher configuration change listener.
069       */
070      void removeErrorChangeListener(ConfigurationChangeListener<ErrorLogPublisherCfg> listener);
071    
072    
073    
074      /**
075       * Gets the "default-severity" property.
076       * <p>
077       * Specifies the default severity levels for the logger.
078       *
079       * @return Returns an unmodifiable set containing the values of the "default-severity" property.
080       */
081      SortedSet<DefaultSeverity> getDefaultSeverity();
082    
083    
084    
085      /**
086       * Gets the "java-class" property.
087       * <p>
088       * The fully-qualified name of the Java class that provides the
089       * Error Log Publisher implementation.
090       *
091       * @return Returns the value of the "java-class" property.
092       */
093      String getJavaClass();
094    
095    
096    
097      /**
098       * Gets the "override-severity" property.
099       * <p>
100       * Specifies the override severity levels for the logger based on
101       * the category of the messages.
102       * <p>
103       * Each override severity level should include the category and the
104       * severity levels to log for that category, for example,
105       * core=mild-error,info,mild-warning. Valid categories are: core,
106       * extensions, protocol, config, log, util, schema, plugin, jeb,
107       * backend, tools, task, access-control, admin, sync, version,
108       * quicksetup, admin-tool, dsconfig, user-defined. Valid severities
109       * are: all, fatal-error, info, mild-error, mild-warning, notice,
110       * severe-error, severe-warning, debug.
111       *
112       * @return Returns an unmodifiable set containing the values of the "override-severity" property.
113       */
114      SortedSet<String> getOverrideSeverity();
115    
116    }