see https://lists.opendaylight.org/pipermail/neutron-dev/2018-June/001702.html
Change-Id: Idd0d65e720d209afbf993db2c202b7710ef6c9db
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
*/
package org.opendaylight.neutron.northbound.api;
*/
package org.opendaylight.neutron.northbound.api;
+import static org.opendaylight.neutron.spi.INeutronCRUD.Result.AlreadyExists;
import static org.opendaylight.neutron.spi.INeutronCRUD.Result.DependencyMissing;
import static org.opendaylight.neutron.spi.INeutronCRUD.Result.DoesNotExist;
import static org.opendaylight.neutron.spi.INeutronCRUD.Result.DependencyMissing;
import static org.opendaylight.neutron.spi.INeutronCRUD.Result.DoesNotExist;
T singleton = input.getSingleton();
singleton.initDefaults();
T singleton = input.getSingleton();
singleton.initDefaults();
- if (neutronCRUD.add(singleton).equals(DependencyMissing)) {
+ Result result = neutronCRUD.add(singleton);
+ if (result.equals(DependencyMissing)) {
return Response.status(HTTP_MISSING_DEPENDENCY).entity(input).build();
return Response.status(HTTP_MISSING_DEPENDENCY).entity(input).build();
+ } else if (result.equals(AlreadyExists)) {
+ return Response.status(HttpURLConnection.HTTP_CONFLICT).entity(input).build();
}
} else {
if (input.getBulk() == null) {
}
} else {
if (input.getBulk() == null) {
}
for (T test : input.getBulk()) {
test.initDefaults();
}
for (T test : input.getBulk()) {
test.initDefaults();
- if (neutronCRUD.add(test).equals(DependencyMissing)) {
+ Result result = neutronCRUD.add(test);
+ if (result.equals(DependencyMissing)) {
LOG.warn("create failed due to input missing dependencies: {}", input);
return Response.status(HTTP_MISSING_DEPENDENCY).entity(input).build();
LOG.warn("create failed due to input missing dependencies: {}", input);
return Response.status(HTTP_MISSING_DEPENDENCY).entity(input).build();
+ } else if (result.equals(AlreadyExists)) {
+ return Response.status(HttpURLConnection.HTTP_CONFLICT).entity(input).build();