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.PropertyIsReadOnlyException; 037 import org.opends.server.admin.std.server.NetworkGroupCfg; 038 039 040 041 /** 042 * A client-side interface for reading and modifying Network Group 043 * settings. 044 * <p> 045 * The Network Group is used to classify incoming connections and 046 * route requests to workflows. 047 */ 048 public interface NetworkGroupCfgClient extends ConfigurationClient { 049 050 /** 051 * Get the configuration definition associated with this Network Group. 052 * 053 * @return Returns the configuration definition associated with this Network Group. 054 */ 055 ManagedObjectDefinition<? extends NetworkGroupCfgClient, ? extends NetworkGroupCfg> definition(); 056 057 058 059 /** 060 * Gets the "enabled" property. 061 * <p> 062 * Indicates whether the Network Group is enabled for use in the 063 * server. 064 * <p> 065 * If a network group is not enabled, its workflows will not be 066 * accessible when processing operations. 067 * 068 * @return Returns the value of the "enabled" property. 069 */ 070 Boolean isEnabled(); 071 072 073 074 /** 075 * Sets the "enabled" property. 076 * <p> 077 * Indicates whether the Network Group is enabled for use in the 078 * server. 079 * <p> 080 * If a network group is not enabled, its workflows will not be 081 * accessible when processing operations. 082 * 083 * @param value The value of the "enabled" property. 084 * @throws IllegalPropertyValueException 085 * If the new value is invalid. 086 */ 087 void setEnabled(boolean value) throws IllegalPropertyValueException; 088 089 090 091 /** 092 * Gets the "network-group-id" property. 093 * <p> 094 * Specifies the name that is used to identify the associated 095 * Network Group . 096 * <p> 097 * The name must be unique among all the Network Groups in the 098 * server. 099 * 100 * @return Returns the value of the "network-group-id" property. 101 */ 102 String getNetworkGroupId(); 103 104 105 106 /** 107 * Sets the "network-group-id" property. 108 * <p> 109 * Specifies the name that is used to identify the associated 110 * Network Group . 111 * <p> 112 * The name must be unique among all the Network Groups in the 113 * server. 114 * <p> 115 * This property is read-only and can only be modified during 116 * creation of a Network Group. 117 * 118 * @param value The value of the "network-group-id" property. 119 * @throws IllegalPropertyValueException 120 * If the new value is invalid. 121 * @throws PropertyIsReadOnlyException 122 * If this Network Group is not being initialized. 123 */ 124 void setNetworkGroupId(String value) throws IllegalPropertyValueException, PropertyIsReadOnlyException; 125 126 127 128 /** 129 * Gets the "workflow" property. 130 * <p> 131 * Identifies the workflows in the network group. 132 * 133 * @return Returns the values of the "workflow" property. 134 */ 135 SortedSet<String> getWorkflow(); 136 137 138 139 /** 140 * Sets the "workflow" property. 141 * <p> 142 * Identifies the workflows in the network group. 143 * <p> 144 * This property is read-only and can only be modified during 145 * creation of a Network Group. 146 * 147 * @param values The values of the "workflow" property. 148 * @throws IllegalPropertyValueException 149 * If one or more of the new values are invalid. 150 * @throws PropertyIsReadOnlyException 151 * If this Network Group is not being initialized. 152 */ 153 void setWorkflow(Collection<String> values) throws IllegalPropertyValueException, PropertyIsReadOnlyException; 154 155 }