1008N/A<!--
1008N/A ! CDDL HEADER START
1008N/A !
1008N/A ! The contents of this file are subject to the terms of the
1008N/A ! Common Development and Distribution License, Version 1.0 only
1008N/A ! (the "License"). You may not use this file except in compliance
1008N/A ! with the License.
1008N/A !
1008N/A ! You can obtain a copy of the license at
1008N/A ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
1008N/A ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
1008N/A ! See the License for the specific language governing permissions
1008N/A ! and limitations under the License.
1008N/A !
1008N/A ! When distributing Covered Code, include this CDDL HEADER in each
1008N/A ! file and include the License file at
1008N/A ! trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable,
1008N/A ! add the following below this CDDL HEADER, with the fields enclosed
1008N/A ! by brackets "[]" replaced with your own identifying information:
1008N/A ! Portions Copyright [yyyy] [name of copyright owner]
1008N/A !
1008N/A ! CDDL HEADER END
1008N/A !
1008N/A !
4129N/A ! Copyright 2008-2009 Sun Microsystems, Inc.
1008N/A ! -->
1008N/A<xsl:stylesheet version="1.0" xmlns:adm="http://www.opends.org/admin"
1008N/A xmlns:admpp="http://www.opends.org/admin-preprocessor"
1008N/A xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1008N/A <xsl:import href="java-utilities.xsl" />
1008N/A <xsl:import href="preprocessor.xsl" />
1008N/A <xsl:import href="property-types.xsl" />
1008N/A <xsl:output method="text" encoding="us-ascii" />
1008N/A <!--
1008N/A Template for generating the interface declaration.
1008N/A -->
1008N/A <xsl:template name="generate-interface-declaration">
1008N/A <xsl:value-of select="'/**&#xa;'" />
1008N/A <xsl:call-template name="add-java-comment">
1008N/A <xsl:with-param name="indent-text" select="' *'" />
1008N/A <xsl:with-param name="content"
1008N/A select="concat('A client-side interface for reading and modifying ',
1008N/A $this-ufn, ' settings.')" />
1008N/A </xsl:call-template>
1008N/A <xsl:value-of select="' * &lt;p&gt;&#xa;'" />
1008N/A <xsl:call-template name="add-java-comment">
1008N/A <xsl:with-param name="indent-text" select="' *'" />
1008N/A <xsl:with-param name="content" select="$this/adm:synopsis" />
1008N/A </xsl:call-template>
1008N/A <xsl:value-of select="' */&#xa;'" />
1008N/A <xsl:value-of
1008N/A select="concat('public interface ',
1008N/A $this-java-class,
1008N/A 'CfgClient extends ')" />
1008N/A <xsl:choose>
1008N/A <xsl:when test="boolean($this/@extends)">
1008N/A <xsl:value-of select="concat($parent-java-class,'CfgClient ')" />
1008N/A </xsl:when>
1008N/A <xsl:otherwise>
1008N/A <xsl:value-of select="'ConfigurationClient '" />
1008N/A </xsl:otherwise>
1008N/A </xsl:choose>
1008N/A <xsl:text>{&#xa;</xsl:text>
1008N/A </xsl:template>
1008N/A <!--
1008N/A Template for generating the configuration definition getter.
1008N/A -->
1008N/A <xsl:template name="generate-configuration-definition-getter">
1008N/A <xsl:value-of
1008N/A select="concat(' /**&#xa;',
1008N/A ' * Get the configuration definition associated with this ', $this-ufn, '.&#xa;',
1008N/A ' *&#xa;',
1008N/A ' * @return Returns the configuration definition associated with this ', $this-ufn, '.&#xa;',
1008N/A ' */&#xa;')" />
1008N/A <xsl:value-of
1008N/A select="concat(' ManagedObjectDefinition&lt;? extends ', $this-java-class,'CfgClient, ? extends ', $this-java-class,'Cfg&gt; definition();&#xa;')" />
1008N/A </xsl:template>
1008N/A <!--
1008N/A Template for generating the relation getter declarations.
1008N/A -->
1008N/A <xsl:template name="generate-relation-declarations">
1008N/A <xsl:variable name="name" select="@name" />
1008N/A <xsl:variable name="ufn">
1008N/A <xsl:call-template name="name-to-ufn">
1008N/A <xsl:with-param name="value" select="$name" />
1008N/A </xsl:call-template>
1008N/A </xsl:variable>
1008N/A <xsl:variable name="java-relation-name">
1008N/A <xsl:call-template name="name-to-java">
1008N/A <xsl:with-param name="value" select="$name" />
1008N/A </xsl:call-template>
1008N/A </xsl:variable>
1008N/A <xsl:variable name="java-class-name">
1008N/A <xsl:call-template name="name-to-java">
1008N/A <xsl:with-param name="value" select="@managed-object-name" />
1008N/A </xsl:call-template>
1008N/A </xsl:variable>
1008N/A <xsl:choose>
1008N/A <xsl:when test="adm:one-to-one">
1389N/A <xsl:call-template name="add-java-comment2">
1389N/A <xsl:with-param name="indent" select="2" />
1389N/A <xsl:with-param name="content"
1389N/A select="concat(
1389N/A 'Gets the ', $ufn,'.&#xa;',
1389N/A '&#xa;',
1389N/A '@return Returns the ', $ufn,'.&#xa;',
1389N/A '@throws DefinitionDecodingException&#xa;',
1389N/A ' If the ', $ufn, ' was found but its type could not be determined.&#xa;',
1389N/A '@throws ManagedObjectDecodingException&#xa;',
1389N/A ' If the ', $ufn, ' was found but one or more of its properties could not be decoded.&#xa;',
1389N/A '@throws ManagedObjectNotFoundException&#xa;',
1389N/A ' If the ', $ufn, ' could not be found on the server.&#xa;',
1389N/A '@throws ConcurrentModificationException&#xa;',
1389N/A ' If this ', $this-ufn, ' has been removed from the server by another client.&#xa;',
1389N/A '@throws AuthorizationException&#xa;',
1389N/A ' If the server refuses to retrieve the ', $ufn, ' because the client does not have the correct privileges.&#xa;',
1389N/A '@throws CommunicationException&#xa;',
1389N/A ' If the client cannot contact the server due to an underlying communication problem.')" />
1389N/A </xsl:call-template>
1008N/A <xsl:value-of
1389N/A select="concat(' ', $java-class-name, 'CfgClient get', $java-relation-name, '()&#xa;',
1389N/A ' throws DefinitionDecodingException, ManagedObjectDecodingException,&#xa;',
1389N/A ' ManagedObjectNotFoundException, ConcurrentModificationException,&#xa;',
1389N/A ' AuthorizationException, CommunicationException;&#xa;')" />
1008N/A </xsl:when>
1008N/A <xsl:when test="adm:one-to-zero-or-one">
1389N/A <xsl:call-template name="add-java-comment2">
1389N/A <xsl:with-param name="indent" select="2" />
1389N/A <xsl:with-param name="content"
1389N/A select="concat('Determines whether or not the ', $ufn,' exists.&#xa;',
1389N/A '&#xa;',
1389N/A '@return Returns &lt;true&gt; if the ', $ufn,' exists.&#xa;',
1389N/A '@throws ConcurrentModificationException&#xa;',
1389N/A ' If this ', $this-ufn, ' has been removed from the server by another client.&#xa;',
1389N/A '@throws AuthorizationException&#xa;',
1389N/A ' If the server refuses to make the determination because the client does not have the correct privileges.&#xa;',
1389N/A '@throws CommunicationException&#xa;',
1389N/A ' If the client cannot contact the server due to an underlying communication problem.')" />
1389N/A </xsl:call-template>
1008N/A <xsl:value-of
1008N/A select="concat(' boolean has',
1389N/A $java-relation-name, '() throws ConcurrentModificationException,&#xa;',
1389N/A ' AuthorizationException, CommunicationException;&#xa;')" />
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1389N/A <xsl:call-template name="add-java-comment2">
1389N/A <xsl:with-param name="indent" select="2" />
1389N/A <xsl:with-param name="content"
1389N/A select="concat(
1389N/A 'Gets the ', $ufn,' if it is present.&#xa;',
1389N/A '&#xa;',
1389N/A '@return Returns the ', $ufn, ' if it is present.&#xa;',
1389N/A '@throws DefinitionDecodingException&#xa;',
1389N/A ' If the ', $ufn, ' was found but its type could not be determined.&#xa;',
1389N/A '@throws ManagedObjectDecodingException&#xa;',
1389N/A ' If the ', $ufn, ' was found but one or more of its properties could not be decoded.&#xa;',
1389N/A '@throws ManagedObjectNotFoundException&#xa;',
1389N/A ' If the ', $ufn, ' is not present.&#xa;',
1389N/A '@throws ConcurrentModificationException&#xa;',
1389N/A ' If this ', $this-ufn, ' has been removed from the server by another client.&#xa;',
1389N/A '@throws AuthorizationException&#xa;',
1389N/A ' If the server refuses to retrieve the ', $ufn, ' because the client does not have the correct privileges.&#xa;',
1389N/A '@throws CommunicationException&#xa;',
1389N/A ' If the client cannot contact the server due to an underlying communication problem.')" />
1389N/A </xsl:call-template>
1008N/A <xsl:value-of
1389N/A select="concat(' ', $java-class-name, 'CfgClient get', $java-relation-name, '()&#xa;',
1389N/A ' throws DefinitionDecodingException, ManagedObjectDecodingException,&#xa;',
1389N/A ' ManagedObjectNotFoundException, ConcurrentModificationException,&#xa;',
1389N/A ' AuthorizationException, CommunicationException;&#xa;')" />
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1389N/A <xsl:call-template name="add-java-comment2">
1389N/A <xsl:with-param name="indent" select="2" />
1389N/A <xsl:with-param name="content"
1389N/A select="concat(
1418N/A 'Creates a new ', $ufn,'. The new ', $ufn,' will initially ',
1418N/A 'not contain any property values (including mandatory ',
1418N/A 'properties). Once the ', $ufn,' has been configured it ',
1418N/A 'can be added to the server using the {@link #commit()} ',
1418N/A 'method.&#xa;',
1389N/A '&#xa;',
1389N/A '@param &lt;C&gt;&#xa;',
1418N/A ' The type of the ', $ufn,' being created.&#xa;',
1389N/A '@param d&#xa;',
1389N/A ' The definition of the ', $ufn,' to be created.&#xa;',
1418N/A '@param exceptions&#xa;',
1418N/A ' An optional collection in which to place any ',
1418N/A '{@link DefaultBehaviorException}s that occurred whilst ',
1418N/A 'attempting to determine the default values of the ', $ufn,
1418N/A '. This argument can be &lt;code&gt;null&lt;code&gt;.&#xa;',
1418N/A '@return Returns a new ', $ufn,' configuration instance.&#xa;')" />
1389N/A </xsl:call-template>
1008N/A <xsl:value-of
1008N/A select="concat(' &lt;C extends ', $java-class-name,'CfgClient&gt; C create', $java-relation-name, '(&#xa;',
1929N/A ' ManagedObjectDefinition&lt;C, ? extends ', $java-class-name,'Cfg&gt; d, Collection&lt;DefaultBehaviorException&gt; exceptions);&#xa;')" />
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1389N/A <xsl:call-template name="add-java-comment2">
1389N/A <xsl:with-param name="indent" select="2" />
1389N/A <xsl:with-param name="content"
1389N/A select="concat(
1389N/A 'Removes the ', $ufn,' if it exists.&#xa;',
1389N/A '&#xa;',
1389N/A '@throws ManagedObjectNotFoundException&#xa;',
1389N/A ' If the ', $ufn, ' does not exist.&#xa;',
1389N/A '@throws OperationRejectedException&#xa;',
1389N/A ' If the server refuses to remove the ', $ufn, ' due to some server-side constraint which cannot be satisfied (for example, if it is referenced by another managed object).&#xa;',
1389N/A '@throws ConcurrentModificationException&#xa;',
1389N/A ' If this ', $this-ufn, ' has been removed from the server by another client.&#xa;',
1389N/A '@throws AuthorizationException&#xa;',
1389N/A ' If the server refuses to remove the ', $ufn, ' because the client does not have the correct privileges.&#xa;',
1389N/A '@throws CommunicationException&#xa;',
1389N/A ' If the client cannot contact the server due to an underlying communication problem.')" />
1389N/A </xsl:call-template>
1008N/A <xsl:value-of
1389N/A select="concat(' void remove', $java-relation-name, '()&#xa;',
1389N/A ' throws ManagedObjectNotFoundException, OperationRejectedException,&#xa;',
1389N/A ' ConcurrentModificationException, AuthorizationException,&#xa;',
1389N/A ' CommunicationException;&#xa;')" />
1008N/A </xsl:when>
1008N/A <xsl:when test="adm:one-to-many">
1008N/A <xsl:variable name="plural-name"
1008N/A select="adm:one-to-many/@plural-name" />
1008N/A <xsl:variable name="ufpn">
1008N/A <xsl:call-template name="name-to-ufn">
1008N/A <xsl:with-param name="value" select="$plural-name" />
1008N/A </xsl:call-template>
1008N/A </xsl:variable>
1008N/A <xsl:variable name="java-relation-plural-name">
1008N/A <xsl:call-template name="name-to-java">
1008N/A <xsl:with-param name="value" select="$plural-name" />
1008N/A </xsl:call-template>
1008N/A </xsl:variable>
1389N/A <xsl:call-template name="add-java-comment2">
1389N/A <xsl:with-param name="indent" select="2" />
1389N/A <xsl:with-param name="content"
1389N/A select="concat('Lists the ', $ufpn,'.&#xa;',
1389N/A '&#xa;',
1389N/A '@return Returns an array containing the names of the ', $ufpn,'.&#xa;',
1389N/A '@throws ConcurrentModificationException&#xa;',
1389N/A ' If this ', $this-ufn, ' has been removed from the server by another client.&#xa;',
1389N/A '@throws AuthorizationException&#xa;',
1389N/A ' If the server refuses to list the ', $ufpn, ' because the client does not have the correct privileges.&#xa;',
1389N/A '@throws CommunicationException&#xa;',
1389N/A ' If the client cannot contact the server due to an underlying communication problem.')" />
1389N/A </xsl:call-template>
1008N/A <xsl:value-of
1008N/A select="concat(' String[] list',
1389N/A $java-relation-plural-name, '() throws ConcurrentModificationException,&#xa;',
1389N/A ' AuthorizationException, CommunicationException;&#xa;')" />
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1389N/A <xsl:call-template name="add-java-comment2">
1389N/A <xsl:with-param name="indent" select="2" />
1389N/A <xsl:with-param name="content"
1389N/A select="concat(
1389N/A 'Gets the named ', $ufn, '.&#xa;',
1389N/A '&#xa;',
1389N/A '@param name&#xa;',
1389N/A ' The name of the ', $ufn,' to retrieve.&#xa;',
1389N/A '@return Returns the named ', $ufn, '.&#xa;',
1389N/A '@throws DefinitionDecodingException&#xa;',
1389N/A ' If the named ', $ufn, ' was found but its type could not be determined.&#xa;',
1389N/A '@throws ManagedObjectDecodingException&#xa;',
1389N/A ' If the named ', $ufn, ' was found but one or more of its properties could not be decoded.&#xa;',
1389N/A '@throws ManagedObjectNotFoundException&#xa;',
1389N/A ' If the named ', $ufn, ' was not found on the server.&#xa;',
1389N/A '@throws ConcurrentModificationException&#xa;',
1389N/A ' If this ', $this-ufn, ' has been removed from the server by another client.&#xa;',
1389N/A '@throws AuthorizationException&#xa;',
1389N/A ' If the server refuses to retrieve the named ', $ufn, ' because the client does not have the correct privileges.&#xa;',
1389N/A '@throws CommunicationException&#xa;',
1389N/A ' If the client cannot contact the server due to an underlying communication problem.')" />
1389N/A </xsl:call-template>
1008N/A <xsl:value-of
1389N/A select="concat(' ', $java-class-name, 'CfgClient get', $java-relation-name, '(String name)&#xa;',
1389N/A ' throws DefinitionDecodingException, ManagedObjectDecodingException,&#xa;',
1389N/A ' ManagedObjectNotFoundException, ConcurrentModificationException,&#xa;',
1389N/A ' AuthorizationException, CommunicationException;&#xa;')" />
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
4129N/A <xsl:choose>
4129N/A <xsl:when test="string(adm:one-to-many/@unique) != 'true'">
4129N/A <xsl:call-template name="add-java-comment2">
4129N/A <xsl:with-param name="indent" select="2" />
4129N/A <xsl:with-param name="content"
4129N/A select="concat(
4129N/A 'Creates a new ', $ufn,'. The new ', $ufn,' will initially ',
4129N/A 'not contain any property values (including mandatory ',
4129N/A 'properties). Once the ', $ufn,' has been configured it ',
4129N/A 'can be added to the server using the {@link #commit()} ',
4129N/A 'method.&#xa;',
4129N/A '&#xa;',
4129N/A '@param &lt;C&gt;&#xa;',
4129N/A ' The type of the ', $ufn,' being created.&#xa;',
4129N/A '@param d&#xa;',
4129N/A ' The definition of the ', $ufn,' to be created.&#xa;',
4129N/A '@param name&#xa;',
4129N/A ' The name of the new ', $ufn,'.&#xa;',
4129N/A '@param exceptions&#xa;',
4129N/A ' An optional collection in which to place any ',
4129N/A '{@link DefaultBehaviorException}s that occurred whilst ',
4129N/A 'attempting to determine the default values of the ', $ufn,
4129N/A '. This argument can be &lt;code&gt;null&lt;code&gt;.&#xa;',
4129N/A '@return Returns a new ', $ufn,' configuration instance.&#xa;',
4129N/A '@throws IllegalManagedObjectNameException&#xa;',
4129N/A ' If the name of the new ', $ufn,' is invalid.&#xa;')" />
4129N/A </xsl:call-template>
4129N/A <xsl:value-of
4129N/A select="concat(' &lt;C extends ', $java-class-name,'CfgClient&gt; C create', $java-relation-name, '(&#xa;',
4129N/A ' ManagedObjectDefinition&lt;C, ? extends ', $java-class-name,'Cfg&gt; d, String name, Collection&lt;DefaultBehaviorException&gt; exceptions) throws IllegalManagedObjectNameException;&#xa;')" />
4129N/A </xsl:when>
4129N/A <xsl:when test="string(adm:one-to-many/@unique) = 'true'">
4129N/A <xsl:call-template name="add-java-comment2">
4129N/A <xsl:with-param name="indent" select="2" />
4129N/A <xsl:with-param name="content"
4129N/A select="concat(
4129N/A 'Creates a new ', $ufn,'. The new ', $ufn,' will initially ',
4129N/A 'not contain any property values (including mandatory ',
4129N/A 'properties). Once the ', $ufn,' has been configured it ',
4129N/A 'can be added to the server using the {@link #commit()} ',
4129N/A 'method.&#xa;',
4129N/A '&#xa;',
4129N/A '@param &lt;C&gt;&#xa;',
4129N/A ' The type of the ', $ufn,' being created.&#xa;',
4129N/A '@param d&#xa;',
4129N/A ' The definition of the ', $ufn,' to be created.&#xa;',
4129N/A '@param exceptions&#xa;',
4129N/A ' An optional collection in which to place any ',
4129N/A '{@link DefaultBehaviorException}s that occurred whilst ',
4129N/A 'attempting to determine the default values of the ', $ufn,
4129N/A '. This argument can be &lt;code&gt;null&lt;code&gt;.&#xa;',
4129N/A '@return Returns a new ', $ufn,' configuration instance.&#xa;')" />
4129N/A </xsl:call-template>
4129N/A <xsl:value-of
4129N/A select="concat(' &lt;C extends ', $java-class-name,'CfgClient&gt; C create', $java-relation-name, '(&#xa;',
4129N/A ' ManagedObjectDefinition&lt;C, ? extends ', $java-class-name,'Cfg&gt; d, Collection&lt;DefaultBehaviorException&gt; exceptions);&#xa;')" />
4129N/A </xsl:when>
4129N/A </xsl:choose>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1389N/A <xsl:call-template name="add-java-comment2">
1389N/A <xsl:with-param name="indent" select="2" />
1389N/A <xsl:with-param name="content"
1389N/A select="concat(
1389N/A 'Removes the named ', $ufn,'.&#xa;',
1389N/A '&#xa;',
1389N/A '@param name&#xa;',
1389N/A ' The name of the ', $ufn,' to remove.&#xa;',
1389N/A '@throws ManagedObjectNotFoundException&#xa;',
1389N/A ' If the ', $ufn, ' does not exist.&#xa;',
1389N/A '@throws OperationRejectedException&#xa;',
1389N/A ' If the server refuses to remove the ', $ufn, ' due to some server-side constraint which cannot be satisfied (for example, if it is referenced by another managed object).&#xa;',
1389N/A '@throws ConcurrentModificationException&#xa;',
1389N/A ' If this ', $this-ufn, ' has been removed from the server by another client.&#xa;',
1389N/A '@throws AuthorizationException&#xa;',
1389N/A ' If the server refuses to remove the ', $ufn, ' because the client does not have the correct privileges.&#xa;',
1389N/A '@throws CommunicationException&#xa;',
1389N/A ' If the client cannot contact the server due to an underlying communication problem.')" />
1389N/A </xsl:call-template>
1008N/A <xsl:value-of
1389N/A select="concat(' void remove', $java-relation-name, '(String name)&#xa;',
1389N/A ' throws ManagedObjectNotFoundException, OperationRejectedException,&#xa;',
1389N/A ' ConcurrentModificationException, AuthorizationException,&#xa;',
1389N/A ' CommunicationException;&#xa;')" />
1008N/A </xsl:when>
1008N/A <xsl:otherwise>
1008N/A <xsl:message terminate="yes">
1008N/A <xsl:value-of
1008N/A select="concat('Unknown relation type &quot;', local-name(*), '&quot; in relation &quot;', $name, '&quot;.')" />
1008N/A </xsl:message>
1008N/A </xsl:otherwise>
1008N/A </xsl:choose>
1008N/A </xsl:template>
1008N/A <!--
1008N/A Main document parsing template.
1008N/A -->
1008N/A <xsl:template match="/">
1008N/A <xsl:call-template name="copyright-notice" />
1008N/A <xsl:value-of
1008N/A select="concat('package ', $this-package, '.client;&#xa;')" />
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:call-template name="generate-import-statements">
1008N/A <xsl:with-param name="imports">
1008N/A <xsl:for-each select="$this-local-properties">
2499N/A <xsl:call-template name="get-property-java-imports">
2499N/A <xsl:with-param name="interface" select="'client'" />
2499N/A </xsl:call-template>
1008N/A </xsl:for-each>
1008N/A <xsl:if test="$this-local-properties[@multi-valued='true']">
1008N/A <import>java.util.Collection</import>
1008N/A <import>java.util.SortedSet</import>
1008N/A </xsl:if>
2499N/A <xsl:if
2499N/A test="$this-local-properties[not(@monitoring='true')]">
1008N/A <import>
1008N/A org.opends.server.admin.IllegalPropertyValueException
1008N/A </import>
1008N/A </xsl:if>
1418N/A <xsl:if test="$this-local-properties[@read-only='true']">
2499N/A <import>
2499N/A org.opends.server.admin.PropertyIsReadOnlyException
2499N/A </import>
1418N/A </xsl:if>
1008N/A <xsl:if test="$this-local-relations">
1389N/A <import>
1389N/A org.opends.server.admin.DefinitionDecodingException
1389N/A </import>
1389N/A <import>
1389N/A org.opends.server.admin.ManagedObjectNotFoundException
1389N/A </import>
1389N/A <import>
1389N/A org.opends.server.admin.client.ManagedObjectDecodingException
1389N/A </import>
1389N/A <import>
1389N/A org.opends.server.admin.client.ConcurrentModificationException
1389N/A </import>
1389N/A <import>
1389N/A org.opends.server.admin.client.AuthorizationException
1389N/A </import>
1389N/A <import>
1389N/A org.opends.server.admin.client.CommunicationException
1389N/A </import>
1008N/A </xsl:if>
2499N/A <xsl:for-each
2499N/A select="$this-local-relations[adm:one-to-zero-or-one]|$this-local-relations[adm:one-to-many]">
1929N/A <xsl:variable name="java-class-name">
1929N/A <xsl:call-template name="name-to-java">
1929N/A <xsl:with-param name="value"
1929N/A select="@managed-object-name" />
1929N/A </xsl:call-template>
1929N/A </xsl:variable>
1929N/A <xsl:element name="import">
1929N/A <xsl:value-of
1929N/A select="concat(@managed-object-package, '.server.', $java-class-name, 'Cfg')" />
1929N/A </xsl:element>
1929N/A </xsl:for-each>
1008N/A <xsl:if
1008N/A test="$this-local-relations/adm:one-to-zero-or-one|$this-local-relations/adm:one-to-many">
1418N/A <import>java.util.Collection</import>
1389N/A <import>
1418N/A org.opends.server.admin.DefaultBehaviorException
1389N/A </import>
1389N/A <import>
1389N/A org.opends.server.admin.client.OperationRejectedException
1389N/A </import>
1008N/A </xsl:if>
4129N/A <xsl:if test="$this-local-relations/adm:one-to-many[not(@unique = 'true')]">
1884N/A <import>
1884N/A org.opends.server.admin.client.IllegalManagedObjectNameException
1884N/A </import>
1884N/A </xsl:if>
1008N/A <xsl:choose>
1008N/A <xsl:when test="$this/@extends">
1008N/A <xsl:if test="$parent-package != $this-package">
1008N/A <xsl:element name="import">
1008N/A <xsl:value-of
1008N/A select="concat($parent-package, '.client.', $parent-java-class, 'CfgClient')" />
1008N/A </xsl:element>
1008N/A </xsl:if>
1008N/A </xsl:when>
1008N/A <xsl:otherwise>
1008N/A <import>org.opends.server.admin.ConfigurationClient</import>
1008N/A </xsl:otherwise>
1008N/A </xsl:choose>
1008N/A <xsl:element name="import">
1008N/A <xsl:value-of
1008N/A select="concat($this-package, '.server.', $this-java-class, 'Cfg')" />
1008N/A </xsl:element>
1008N/A <import>org.opends.server.admin.ManagedObjectDefinition</import>
1008N/A </xsl:with-param>
1008N/A </xsl:call-template>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:call-template name="generate-interface-declaration" />
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:call-template name="generate-configuration-definition-getter" />
1008N/A <xsl:for-each select="$this-local-properties">
1008N/A <xsl:sort select="@name" />
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:call-template name="generate-property-getter-declaration">
1008N/A <xsl:with-param name="interface" select="'client'" />
1008N/A </xsl:call-template>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:call-template name="generate-property-setter-declaration" />
1008N/A </xsl:for-each>
1008N/A <xsl:for-each select="$this-local-relations">
1008N/A <xsl:sort select="@name" />
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:call-template name="generate-relation-declarations" />
1008N/A </xsl:for-each>
1008N/A <xsl:text>&#xa;</xsl:text>
1008N/A <xsl:text>}&#xa;</xsl:text>
1008N/A </xsl:template>
1008N/A</xsl:stylesheet>