throw new InvalidParameterCardinalityException( Errors.format(ErrorKeys.TOO_MANY_OCCURENCES_$2, name, count), name);
} catch (InvalidParameterCardinalityException e) { assertEquals("1", e.getParameterName()); assertNotNull(e.getMessage()); } catch (InvalidParameterCardinalityException e) { assertEquals("1", e.getParameterName()); assertNotNull(e.getMessage()); } catch (InvalidParameterCardinalityException e) { assertEquals("3", e.getParameterName()); assertNotNull(e.getMessage()); } catch (InvalidParameterCardinalityException exception) { assertEquals("1", exception.getParameterName()); } catch (InvalidParameterCardinalityException exception) { assertEquals("3", exception.getParameterName()); assertEquals("1", exception.getParameterName()); assertEquals("3", e.getParameterName()); assertEquals("1", e.getParameterName());
throw new DataStoreContentException(e.getLocalizedMessage(), e);
/** * Tests {@code DefaultParameterValueGroup.values().remove(…)}. In particular, tests that attempt to * remove a mandatory parameter causes an {@link InvalidParameterCardinalityException} to be thrown. */ @Test @DependsOnMethod("testValuesAddAll") public void testValuesRemove() { final GeneralParameterValue[] negatives = createValues(-10); final DefaultParameterValueGroup group = createGroup(10); final List<GeneralParameterValue> values = group.values(); assertFalse(values.remove(negatives[0])); // Non-existant parameter. try { values.remove(values.get(0)); fail("“Mandatory 1” is a mandatory parameter; it should not be removeable."); } catch (InvalidParameterCardinalityException e) { assertEquals("Mandatory 1", e.getParameterName()); final String message = e.getMessage(); assertTrue(message, message.contains("Mandatory 1")); } }
if (!(count >= min && count <= max)) { final String name = getName(descriptor); throw new InvalidParameterCardinalityException( Errors.format( ErrorKeys.ILLEGAL_OCCURS_FOR_PARAMETER_$4, name, count, min, max),
fail("“Mandatory 2” is already present in this group."); } catch (InvalidParameterCardinalityException e) { assertEquals("Mandatory 2", e.getParameterName()); final String message = e.getMessage(); assertTrue(message, message.contains("Mandatory 2")); fail("“Optional 3” is already present in this group."); } catch (InvalidParameterCardinalityException e) { assertEquals("Optional 3", e.getParameterName()); final String message = e.getMessage(); assertTrue(message, message.contains("Optional 3"));
/** * Remove the value at the specified index. * * @param type The descriptor of the value to remove. * @param index The index of the value to remove. */ private GeneralParameterValue remove(final GeneralParameterDescriptor type, final int index) { modCount++; int count = 0; final String name = type.getName().getCode(); for (final GeneralParameterValue value : values) { if (AbstractIdentifiedObject.nameMatches(value.getDescriptor(), name)) { count++; } } final int min = type.getMinimumOccurs(); if (count <= min) { final int max = type.getMaximumOccurs(); throw new InvalidParameterCardinalityException( Errors.format( ErrorKeys.ILLEGAL_OCCURS_FOR_PARAMETER_$4, name, count - 1, min, max), name); } final GeneralParameterValue value = values.remove(index); assert value != null && type.equals(value.getDescriptor()) : value; return value; } }
throw new InvalidParameterCardinalityException( Errors.format(ErrorKeys.TOO_MANY_OCCURENCES_$2, name, count), name);
throw new InvalidParameterCardinalityException(Errors.format(Errors.Keys.ValueAlreadyDefined_1, name), name);
throw new InvalidParameterCardinalityException(Errors.format(Errors.Keys.ValueAlreadyDefined_1, name), name);
throw new MissingOfferingParameterException(); } else if (offeringIds.size() > 1) { throw new InvalidParameterCardinalityException( "Exactly one offering is required", SosConstants.GetObservationParams.offering.name());
throw new MissingOfferingParameterException(); } else if (offeringIds.size() > 1) { throw new InvalidParameterCardinalityException( "Exactly one offering is required", SosConstants.GetObservationParams.offering.name());
/** * Verifies if adding a parameter with the given descriptor is allowed by the cardinality constraints. If adding * the parameter would result in more occurrences than {@link DefaultParameterDescriptor#getMaximumOccurs()}, * then this method throws an {@link InvalidParameterCardinalityException}. */ private void ensureCanAdd(final GeneralParameterDescriptor desc) { final Identifier name = desc.getName(); int count = 0; for (int i=0; i<size; i++) { if (name.equals(values[i].getDescriptor().getName())) { count++; } } final int max = desc.getMaximumOccurs(); if (count >= max) { throw new InvalidParameterCardinalityException(Errors.format( Errors.Keys.TooManyOccurrences_2, max, name), name.getCode()); } }
/** * Verifies if adding a parameter with the given descriptor is allowed by the cardinality constraints. If adding * the parameter would result in more occurrences than {@link DefaultParameterDescriptor#getMaximumOccurs()}, * then this method throws an {@link InvalidParameterCardinalityException}. */ private void ensureCanAdd(final GeneralParameterDescriptor desc) { final Identifier name = desc.getName(); int count = 0; for (int i=0; i<size; i++) { if (name.equals(values[i].getDescriptor().getName())) { count++; } } final int max = desc.getMaximumOccurs(); if (count >= max) { throw new InvalidParameterCardinalityException(Errors.format( Errors.Keys.TooManyOccurrences_2, max, name), name.getCode()); } }
/** * Verifies if removing the given value is allowed by the cardinality constraints. If removing the parameter * would result in less occurrences than {@link DefaultParameterDescriptor#getMinimumOccurs()}, * then this method throws an {@link InvalidParameterCardinalityException}. */ private void ensureCanRemove(final GeneralParameterDescriptor desc) { final int min = desc.getMinimumOccurs(); if (min != 0) { // Optimization for a common case. final Identifier name = desc.getName(); int count = 0; for (int i=0; i<size; i++) { if (name.equals(values[i].getDescriptor().getName())) { if (++count > min) { return; } } } throw new InvalidParameterCardinalityException(Errors.format( Errors.Keys.TooFewOccurrences_2, min, name), name.getCode()); } }
/** * Verifies if removing the given value is allowed by the cardinality constraints. If removing the parameter * would result in less occurrences than {@link DefaultParameterDescriptor#getMinimumOccurs()}, * then this method throws an {@link InvalidParameterCardinalityException}. */ private void ensureCanRemove(final GeneralParameterDescriptor desc) { final int min = desc.getMinimumOccurs(); if (min != 0) { // Optimization for a common case. final Identifier name = desc.getName(); int count = 0; for (int i=0; i<size; i++) { if (name.equals(values[i].getDescriptor().getName())) { if (++count > min) { return; } } } throw new InvalidParameterCardinalityException(Errors.format( Errors.Keys.TooFewOccurrences_2, min, name), name.getCode()); } }
if (!(count>=min && count<=max)) { final String name = getName(descriptor); throw new InvalidParameterCardinalityException(Errors.format( Errors.Keys.IllegalOccursForParameter_4, name, count, min, max), name);
/** * Removes the value at the specified index. * * @param type The descriptor of the value to remove. * @param index The index of the value to remove. */ private GeneralParameterValue remove(final GeneralParameterDescriptor type, final int index) { modCount++; int count = 0; final String name = type.getName().getCode(); for (final GeneralParameterValue value : values) { if (IdentifiedObjects.isHeuristicMatchForName(value.getDescriptor(), name)) { count++; } } final int min = type.getMinimumOccurs(); if (count <= min) { final int max = type.getMaximumOccurs(); throw new InvalidParameterCardinalityException(Errors.format( Errors.Keys.IllegalOccursForParameter_4, name, count-1, min, max), name); } final GeneralParameterValue value = values.remove(index); assert value!=null && type.equals(value.getDescriptor()) : value; return value; } }
throw new InvalidParameterCardinalityException(Errors.format( Errors.Keys.TooManyOccurrences_2, name, count), name);
throw new InvalidParameterCardinalityException(Errors.format( Errors.Keys.TooManyOccurrences_2, name, count), name);