import java.util.Set;
import java.util.SortedSet;
import java.util.TreeSet;
+import java.util.stream.Collectors;
import javax.ws.rs.core.UriInfo;
import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.mdsal.dom.api.DOMSchemaService;
final String localName) {
final StringBuilder path = new StringBuilder();
path.append(localName);
+ final Set<String> parameters = pathParams.stream()
+ .map(Parameter::name)
+ .collect(Collectors.toSet());
if (schemaNode instanceof ListSchemaNode) {
String prefix = "=";
for (final QName listKey : ((ListSchemaNode) schemaNode).getKeyDefinition()) {
final String keyName = listKey.getLocalName();
String paramName = keyName;
- for (final Parameter pathParam : pathParams) {
- if (paramName.equals(pathParam.name())) {
- paramName = keyName + discriminator;
- discriminator++;
- for (final Parameter pathParameter : pathParams) {
- if (paramName.equals(pathParameter.name())) {
- paramName = keyName + discriminator;
- discriminator++;
- }
- }
- }
+ while (!parameters.add(paramName)) {
+ paramName = keyName + discriminator;
+ discriminator++;
}
final String pathParamIdentifier = prefix + "{" + paramName + "}";