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.client; 028 029 030 031 import java.util.Collection; 032 import java.util.SortedSet; 033 import org.opends.server.admin.ConfigurationClient; 034 import org.opends.server.admin.IllegalPropertyValueException; 035 import org.opends.server.admin.ManagedObjectDefinition; 036 import org.opends.server.admin.std.server.AlertHandlerCfg; 037 038 039 040 /** 041 * A client-side interface for reading and modifying Alert Handler 042 * settings. 043 * <p> 044 * Alert Handlers are used to notify administrators of significant 045 * problems or notable events that occur in the Directory Server. 046 */ 047 public interface AlertHandlerCfgClient extends ConfigurationClient { 048 049 /** 050 * Get the configuration definition associated with this Alert Handler. 051 * 052 * @return Returns the configuration definition associated with this Alert Handler. 053 */ 054 ManagedObjectDefinition<? extends AlertHandlerCfgClient, ? extends AlertHandlerCfg> definition(); 055 056 057 058 /** 059 * Gets the "disabled-alert-type" property. 060 * <p> 061 * Specifies the names of the alert types that are disabled for this 062 * alert handler. 063 * <p> 064 * If there are any values for this attribute, then no alerts with 065 * any of the specified types are allowed. If there are no values for 066 * this attribute, then only alerts with a type included in the set 067 * of enabled alert types are allowed, or if there are no values for 068 * the enabled alert types option, then all alert types are allowed. 069 * 070 * @return Returns the values of the "disabled-alert-type" property. 071 */ 072 SortedSet<String> getDisabledAlertType(); 073 074 075 076 /** 077 * Sets the "disabled-alert-type" property. 078 * <p> 079 * Specifies the names of the alert types that are disabled for this 080 * alert handler. 081 * <p> 082 * If there are any values for this attribute, then no alerts with 083 * any of the specified types are allowed. If there are no values for 084 * this attribute, then only alerts with a type included in the set 085 * of enabled alert types are allowed, or if there are no values for 086 * the enabled alert types option, then all alert types are allowed. 087 * 088 * @param values The values of the "disabled-alert-type" property. 089 * @throws IllegalPropertyValueException 090 * If one or more of the new values are invalid. 091 */ 092 void setDisabledAlertType(Collection<String> values) throws IllegalPropertyValueException; 093 094 095 096 /** 097 * Gets the "enabled" property. 098 * <p> 099 * Indicates whether the Alert Handler is enabled. 100 * 101 * @return Returns the value of the "enabled" property. 102 */ 103 Boolean isEnabled(); 104 105 106 107 /** 108 * Sets the "enabled" property. 109 * <p> 110 * Indicates whether the Alert Handler is enabled. 111 * 112 * @param value The value of the "enabled" property. 113 * @throws IllegalPropertyValueException 114 * If the new value is invalid. 115 */ 116 void setEnabled(boolean value) throws IllegalPropertyValueException; 117 118 119 120 /** 121 * Gets the "enabled-alert-type" property. 122 * <p> 123 * Specifies the names of the alert types that are enabled for this 124 * alert handler. 125 * <p> 126 * If there are any values for this attribute, then only alerts with 127 * one of the specified types are allowed (unless they are also 128 * included in the disabled alert types). If there are no values for 129 * this attribute, then any alert with a type not included in the 130 * list of disabled alert types is allowed. 131 * 132 * @return Returns the values of the "enabled-alert-type" property. 133 */ 134 SortedSet<String> getEnabledAlertType(); 135 136 137 138 /** 139 * Sets the "enabled-alert-type" property. 140 * <p> 141 * Specifies the names of the alert types that are enabled for this 142 * alert handler. 143 * <p> 144 * If there are any values for this attribute, then only alerts with 145 * one of the specified types are allowed (unless they are also 146 * included in the disabled alert types). If there are no values for 147 * this attribute, then any alert with a type not included in the 148 * list of disabled alert types is allowed. 149 * 150 * @param values The values of the "enabled-alert-type" property. 151 * @throws IllegalPropertyValueException 152 * If one or more of the new values are invalid. 153 */ 154 void setEnabledAlertType(Collection<String> values) throws IllegalPropertyValueException; 155 156 157 158 /** 159 * Gets the "java-class" property. 160 * <p> 161 * Specifies the fully-qualified name of the Java class that 162 * provides the Alert Handler implementation. 163 * 164 * @return Returns the value of the "java-class" property. 165 */ 166 String getJavaClass(); 167 168 169 170 /** 171 * Sets the "java-class" property. 172 * <p> 173 * Specifies the fully-qualified name of the Java class that 174 * provides the Alert Handler implementation. 175 * 176 * @param value The value of the "java-class" property. 177 * @throws IllegalPropertyValueException 178 * If the new value is invalid. 179 */ 180 void setJavaClass(String value) throws IllegalPropertyValueException; 181 182 }