4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift/*
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * CDDL HEADER START
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * The contents of this file are subject to the terms of the
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * Common Development and Distribution License, Version 1.0 only
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * (the "License"). You may not use this file except in compliance
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * with the License.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac * You can obtain a copy of the license at legal-notices/CDDLv1_0.txt
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac * or http://forgerock.org/license/CDDLv1.0.html.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * See the License for the specific language governing permissions
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * and limitations under the License.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * When distributing Covered Code, include this CDDL HEADER in each
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac * file and include the License file at legal-notices/CDDLv1_0.txt.
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac * If applicable, add the following below this CDDL HEADER, with the
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac * fields enclosed by brackets "[]" replaced with your own identifying
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac * information:
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * Portions Copyright [yyyy] [name of copyright owner]
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * CDDL HEADER END
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
65e99be301d5a19db33f25841f671756e8dbb9b5ludovicp * Copyright 2008 Sun Microsystems, Inc.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swiftpackage org.opends.server.admin;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
e32b0f1464ea290b749a43d5ee7a6085b14532c9matthew_swiftimport java.util.Collection;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport java.util.SortedSet;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swiftimport org.opends.server.admin.client.AuthorizationException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swiftimport org.opends.server.admin.client.CommunicationException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swiftimport org.opends.server.admin.client.ConcurrentModificationException;
c9020c301eada7085bb81da1821cac5533a1f20fmatthew_swiftimport org.opends.server.admin.client.IllegalManagedObjectNameException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swiftimport org.opends.server.admin.client.ManagedObjectDecodingException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swiftimport org.opends.server.admin.client.OperationRejectedException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport org.opends.server.admin.ConfigurationClient;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport org.opends.server.admin.DefaultBehaviorException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport org.opends.server.admin.DefinitionDecodingException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport org.opends.server.admin.IllegalPropertyValueException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport org.opends.server.admin.ManagedObjectDefinition;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport org.opends.server.admin.ManagedObjectNotFoundException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport org.opends.server.admin.PropertyIsReadOnlyException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport org.opends.server.types.AttributeType;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swiftimport org.opends.server.types.DN;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift/**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * A client-side interface for reading and modifying Test Parent
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * settings.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * A configuration for testing components that have child components.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * It re-uses the virtual-attribute configuration LDAP profile.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swiftpublic interface TestParentCfgClient extends ConfigurationClient {
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Get the configuration definition associated with this Test Parent.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns the configuration definition associated with this Test Parent.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift ManagedObjectDefinition<? extends TestParentCfgClient, ? extends TestParentCfg> definition();
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Get the "mandatory-boolean-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * A mandatory boolean property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns the value of the "mandatory-boolean-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift Boolean isMandatoryBooleanProperty();
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Set the "mandatory-boolean-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * A mandatory boolean property.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @param value The value of the "mandatory-boolean-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws IllegalPropertyValueException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the new value is invalid.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift void setMandatoryBooleanProperty(boolean value) throws IllegalPropertyValueException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Get the "mandatory-class-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * A mandatory Java-class property requiring a component restart.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns the value of the "mandatory-class-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift String getMandatoryClassProperty();
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Set the "mandatory-class-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * A mandatory Java-class property requiring a component restart.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @param value The value of the "mandatory-class-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws IllegalPropertyValueException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the new value is invalid.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift void setMandatoryClassProperty(String value) throws IllegalPropertyValueException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Get the "mandatory-read-only-attribute-type-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * A mandatory read-only attribute type property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns the value of the "mandatory-read-only-attribute-type-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift AttributeType getMandatoryReadOnlyAttributeTypeProperty();
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Set the "mandatory-read-only-attribute-type-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * A mandatory read-only attribute type property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * This property is read-only and can only be modified during
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * creation of a Test Parent.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @param value The value of the "mandatory-read-only-attribute-type-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws IllegalPropertyValueException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the new value is invalid.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws PropertyIsReadOnlyException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If this Test Parent is not being initialized.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift void setMandatoryReadOnlyAttributeTypeProperty(AttributeType value) throws IllegalPropertyValueException, PropertyIsReadOnlyException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Get the "optional-multi-valued-dn-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * An optional multi-valued DN property with a defined default
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * behavior.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns the values of the "optional-multi-valued-dn-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift SortedSet<DN> getOptionalMultiValuedDNProperty();
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Set the "optional-multi-valued-dn-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * <p>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * An optional multi-valued DN property with a defined default
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * behavior.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @param values The values of the "optional-multi-valued-dn-property" property.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws IllegalPropertyValueException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If one or more of the new values are invalid.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift void setOptionalMultiValuedDNProperty(Collection<DN> values) throws IllegalPropertyValueException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Lists the Test Children.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns an array containing the names of the Test
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Children.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws ConcurrentModificationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If this Test Parent has been removed from the server by
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * another client.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws AuthorizationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the server refuses to list the Test Children because
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * the client does not have the correct privileges.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws CommunicationException
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * If the client cannot contact the server due to an
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * underlying communication problem.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift String[] listTestChildren() throws ConcurrentModificationException,
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift AuthorizationException, CommunicationException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Gets the named Test Child.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @param name
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * The name of the Test Child to retrieve.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns the named Test Child.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws DefinitionDecodingException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the named Test Child was found but its type
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * could not be determined.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws ManagedObjectDecodingException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the named Test Child was found but one or
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * more of its properties could not be decoded.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws ManagedObjectNotFoundException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the named Test Child was not found on the
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * server.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws ConcurrentModificationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If this Test Parent has been removed from the server by
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * another client.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws AuthorizationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the server refuses to retrieve the named Multiple
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Children because the client does not have the correct
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * privileges.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws CommunicationException
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * If the client cannot contact the server due to an
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * underlying communication problem.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift TestChildCfgClient getTestChild(String name)
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift throws DefinitionDecodingException, ManagedObjectDecodingException,
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift ManagedObjectNotFoundException, ConcurrentModificationException,
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift AuthorizationException, CommunicationException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Creates a new Test Child. The new Test Child will
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * initially not contain any property values (including mandatory
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * properties). Once the Test Child has been configured it can
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * be added to the server using the {@link #commit()} method.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @param <C>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * The type of the Test Child being created.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @param d
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * The definition of the Test Child to be created.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @param name
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * The name of the new Test Child.
e32b0f1464ea290b749a43d5ee7a6085b14532c9matthew_swift * @param exceptions
e32b0f1464ea290b749a43d5ee7a6085b14532c9matthew_swift * An optional collection in which to place any {@link
e32b0f1464ea290b749a43d5ee7a6085b14532c9matthew_swift * DefaultBehaviorException}s that occurred whilst
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * attempting to determine the default values of the
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Test Child. This argument can be <code>null<code>.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns a new Test Child configuration instance.
c9020c301eada7085bb81da1821cac5533a1f20fmatthew_swift * @throws IllegalManagedObjectNameException
c9020c301eada7085bb81da1821cac5533a1f20fmatthew_swift * If the name is invalid.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift <C extends TestChildCfgClient> C createTestChild(
49f497cfbd8165bbec0080a46c450e2672fd47e3matthew_swift ManagedObjectDefinition<C, ? extends TestChildCfg> d, String name, Collection<DefaultBehaviorException> exceptions) throws IllegalManagedObjectNameException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Removes the named Test Child.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @param name
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * The name of the Test Child to remove.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws ManagedObjectNotFoundException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the Test Child does not exist.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws OperationRejectedException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the server refuses to remove the Test Child
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * due to some server-side constraint which cannot be
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * satisfied (for example, if it is referenced by another
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * managed object).
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws ConcurrentModificationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If this Test Parent has been removed from the server by
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * another client.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws AuthorizationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the server refuses to remove the Test Child
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * because the client does not have the correct privileges.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * @throws CommunicationException
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * If the client cannot contact the server due to an
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift * underlying communication problem.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift void removeTestChild(String name)
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift throws ManagedObjectNotFoundException, OperationRejectedException,
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift ConcurrentModificationException, AuthorizationException,
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift CommunicationException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Determines whether or not the Optional Test Child exists.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns <true> if the Optional Test Child exists.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws ConcurrentModificationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If this Test Parent has been removed from the server by
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * another client.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws AuthorizationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the server refuses to make the determination because
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * the client does not have the correct privileges.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws CommunicationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the client cannot contact the server due to an
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * underlying communication problem.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift boolean hasOptionalTestChild() throws ConcurrentModificationException,
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift AuthorizationException, CommunicationException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Gets the Optional Test Child if it is present.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns the Optional Test Child if it is present.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws DefinitionDecodingException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the Optional Test Child was found but its type could not
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * be determined.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws ManagedObjectDecodingException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the Optional Test Child was found but one or more of its
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * properties could not be decoded.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws ManagedObjectNotFoundException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the Optional Test Child is not present.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws ConcurrentModificationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If this Test Parent has been removed from the server by
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * another client.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws AuthorizationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the server refuses to retrieve the Optional Test Child
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * because the client does not have the correct privileges.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws CommunicationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the client cannot contact the server due to an
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * underlying communication problem.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift TestChildCfgClient getOptionalChild()
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift throws DefinitionDecodingException, ManagedObjectDecodingException,
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift ManagedObjectNotFoundException, ConcurrentModificationException,
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift AuthorizationException, CommunicationException;
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Creates a new Optional Test Child. The new Optional Test Child will
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * initially not contain any property values (including mandatory
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * properties). Once the Optional Test Child has been configured it can be
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * added to the server using the {@link #commit()} method.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @param <C>
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * The type of the Optional Test Child being created.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @param d
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * The definition of the Optional Test Child to be created.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @param exceptions
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * An optional collection in which to place any {@link
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * DefaultBehaviorException}s that occurred whilst
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * attempting to determine the default values of the
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Optional Test Child. This argument can be <code>null<code>.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @return Returns a new Optional Test Child configuration instance.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift <C extends TestChildCfgClient> C createOptionalTestChild(
49f497cfbd8165bbec0080a46c450e2672fd47e3matthew_swift ManagedObjectDefinition<C, ? extends TestChildCfg> d, Collection<DefaultBehaviorException> exceptions);
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift /**
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * Removes the Optional Test Child if it exists.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift *
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws ManagedObjectNotFoundException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the Optional Test Child does not exist.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws OperationRejectedException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the server refuses to remove the Optional Test Child due
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * to some server-side constraint which cannot be satisfied
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * (for example, if it is referenced by another managed
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * object).
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws ConcurrentModificationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If this Test Parent has been removed from the server by
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * another client.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws AuthorizationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the server refuses to remove the Optional Test Child
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * because the client does not have the correct privileges.
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * @throws CommunicationException
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * If the client cannot contact the server due to an
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift * underlying communication problem.
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift */
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift void removeOptionalTestChild()
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift throws ManagedObjectNotFoundException, OperationRejectedException,
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift ConcurrentModificationException, AuthorizationException,
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift CommunicationException;
789e2e19bc9fb720ddedaf65338364ac86675238matthew_swift
4a622c45ad6426287954754f34fc3ab8a4b9c2c5matthew_swift}