/* */
/* 265 */ this.numParams = 0;
/* 266 */ this.paramNames = null;
/* 267 */ this.paramClasses = null;
/* 268 */ this.paramDefaults = null;
/* 269 */ this.paramIndices = new CaselessStringArrayTable();
/* 270 */ this.validParamValues = null;
/* */ }
/* */ else
/* */ {
/* 274 */ if ((paramClasses == null) || (paramClasses.length != numParams)) {
/* 275 */ throw new IllegalArgumentException("paramClasses" + JaiI18N.getString("ParameterListDescriptorImpl3"));
/* */ }
/* */
/* 278 */ this.numParams = numParams;
/* 279 */ this.paramNames = paramNames;
/* 280 */ this.paramClasses = paramClasses;
/* 281 */ this.validParamValues = validParamValues;
/* */
/* 287 */ if (paramDefaults == null) {
/* 288 */ this.paramDefaults = new Object[numParams];
/* */
/* 290 */ for (int i = 0; i < numParams; i++)
/* 291 */ this.paramDefaults[i] = Serializable.NO_PARAMETER_DEFAULT;
/* */ }
/* */ else
/* */ {
/* 295 */ this.paramDefaults = paramDefaults;
/* */
/* 297 */ for (int i = 0; i < numParams; i++) {
/* 298 */ if ((paramDefaults[i] != null) && (paramDefaults[i] != Serializable.NO_PARAMETER_DEFAULT))
/* */ {
/* 303 */ if (!paramClasses[i].isInstance(paramDefaults[i])) {
/* 304 */ throw new IllegalArgumentException(JaiI18N.formatMsg("ParameterListDescriptorImpl4", new Object[] { paramDefaults[i].getClass().getName(), paramClasses[i].getName(), paramNames[i] }));
/* */ }
/* */
/* */ }
/* */
/* */ }
/* */
/* */ }
/* */
/* 317 */ if (validParamValues != null)
/* */ {
/* 319 */ Class enumeratedClass = EnumeratedParameter.class;
/* */
/* 321 */ for (int i = 0; i < numParams; i++)
/* */ {
/* 323 */ if (validParamValues[i] != null)
/* */ {
/* 326 */ if (enumeratedClass.isAssignableFrom(paramClasses[i]))
/* */ {
/* 330 */ if (!(validParamValues[i] instanceof Set)) {
/* 331 */ throw new IllegalArgumentException(JaiI18N.formatMsg("ParameterListDescriptorImpl5", new Object[] { paramNames[i] }));
/* */ }
/* */
/* */ }
/* 335 */ else if ((validParamValues[i] instanceof Range))
/* */ {
/* 337 */ Range range = (Range)validParamValues[i];
/* */
/* 341 */ if (!paramClasses[i].isAssignableFrom(range.getElementClass()))
/* */ {
/* 343 */ throw new IllegalArgumentException(JaiI18N.formatMsg("ParameterListDescriptorImpl6", new Object[] { range.getElementClass().getName(), paramClasses[i].getName(), paramNames[i] }));
/* */ }
/* */
/* */ }
/* 354 */ else if (!paramClasses[i].isInstance(validParamValues[i])) {
/* 355 */ throw new IllegalArgumentException(JaiI18N.formatMsg("ParameterListDescriptorImpl7", new Object[] { validParamValues[i].getClass().getName(), paramClasses[i].getName(), paramNames[i] }));
/* */ }
/* */
/* */ }
/* */
/* */ }
/* */
/* */ }
/* */
/* 365 */ this.paramIndices = new CaselessStringArrayTable(paramNames);
/* */ }
/* */ }