jdk/src/java.management/share/classes/javax/management/openmbean/ArrayType.java
changeset 29927 9cc3e111a1d8
parent 28059 e576535359cc
child 32034 05676cfd40b5
equal deleted inserted replaced
29926:2eceae3716d9 29927:9cc3e111a1d8
     1 /*
     1 /*
     2  * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.  Oracle designates this
     7  * published by the Free Software Foundation.  Oracle designates this
   791      * element class name     = java.lang.String
   791      * element class name     = java.lang.String
   792      * array type name        = [[[Ljava.lang.String;
   792      * array type name        = [[[Ljava.lang.String;
   793      * array type description = 3-dimension array of java.lang.String
   793      * array type description = 3-dimension array of java.lang.String
   794      * }</pre>
   794      * }</pre>
   795      *
   795      *
       
   796      * @param <E> the Java type that described instances must have
   796      * @param  elementType  the <i>open type</i> of element values contained
   797      * @param  elementType  the <i>open type</i> of element values contained
   797      *                      in the arrays described by this <tt>ArrayType</tt>
   798      *                      in the arrays described by this <tt>ArrayType</tt>
   798      *                      instance; must be an instance of either
   799      *                      instance; must be an instance of either
   799      *                      <tt>SimpleType</tt>, <tt>CompositeType</tt>,
   800      *                      <tt>SimpleType</tt>, <tt>CompositeType</tt>,
   800      *                      <tt>TabularType</tt> or another <tt>ArrayType</tt>
   801      *                      <tt>TabularType</tt> or another <tt>ArrayType</tt>
   801      *                      with a <tt>SimpleType</tt>, <tt>CompositeType</tt>
   802      *                      with a <tt>SimpleType</tt>, <tt>CompositeType</tt>
   802      *                      or <tt>TabularType</tt> as its <tt>elementType</tt>.
   803      *                      or <tt>TabularType</tt> as its <tt>elementType</tt>.
   803      *
   804      * @return an {@code ArrayType} instance
   804      * @throws OpenDataException if <var>elementType's className</var> is not
   805      * @throws OpenDataException if <var>elementType's className</var> is not
   805      *                           one of the allowed Java class names for open
   806      *                           one of the allowed Java class names for open
   806      *                           data.
   807      *                           data.
   807      *
   808      *
   808      * @since 1.6
   809      * @since 1.6
   832      * element class name     = java.lang.Integer
   833      * element class name     = java.lang.Integer
   833      * array type name        = [[[I
   834      * array type name        = [[[I
   834      * array type description = 3-dimension array of int
   835      * array type description = 3-dimension array of int
   835      * }</pre>
   836      * }</pre>
   836      *
   837      *
       
   838      * @param <T> the Java type that described instances must have
   837      * @param arrayClass a primitive array class such as {@code int[].class},
   839      * @param arrayClass a primitive array class such as {@code int[].class},
   838      *                   {@code boolean[][].class}, etc. The {@link
   840      *                   {@code boolean[][].class}, etc. The {@link
   839      *                   #getElementOpenType()} method of the returned
   841      *                   #getElementOpenType()} method of the returned
   840      *                   {@code ArrayType} returns the {@link SimpleType}
   842      *                   {@code ArrayType} returns the {@link SimpleType}
   841      *                   corresponding to the wrapper type of the primitive
   843      *                   corresponding to the wrapper type of the primitive
   842      *                   type of the array.
   844      *                   type of the array.
       
   845      * @return an {@code ArrayType} instance
   843      *
   846      *
   844      * @throws IllegalArgumentException if <var>arrayClass</var> is not
   847      * @throws IllegalArgumentException if <var>arrayClass</var> is not
   845      *                                  a primitive array.
   848      *                                  a primitive array.
   846      *
   849      *
   847      * @since 1.6
   850      * @since 1.6