X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=northbound-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fneutron%2Fnorthbound%2Fapi%2FAbstractNeutronNorthbound.java;h=2ebd7960e75f8c68879c18f2325de28f223335c2;hb=fae69bd55d6721d05aef5e445eab963c995be840;hp=c1c1dd794cf628df21ba65a6fb73cec4d903d226;hpb=20eae644c58d0a8ab675fe965a66c8ba0234e72c;p=neutron.git diff --git a/northbound-api/src/main/java/org/opendaylight/neutron/northbound/api/AbstractNeutronNorthbound.java b/northbound-api/src/main/java/org/opendaylight/neutron/northbound/api/AbstractNeutronNorthbound.java index c1c1dd794..2ebd7960e 100644 --- a/northbound-api/src/main/java/org/opendaylight/neutron/northbound/api/AbstractNeutronNorthbound.java +++ b/northbound-api/src/main/java/org/opendaylight/neutron/northbound/api/AbstractNeutronNorthbound.java @@ -7,6 +7,7 @@ */ 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; @@ -112,8 +113,12 @@ public abstract class AbstractNeutronNorthbound, R e T singleton = input.getSingleton(); singleton.initDefaults(); - if (neutronCRUD.add(singleton).equals(DependencyMissing)) { + Result result = neutronCRUD.add(singleton); + if (result.equals(DependencyMissing)) { + 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(); } } else { if (input.getBulk() == null) { @@ -121,9 +126,12 @@ public abstract class AbstractNeutronNorthbound, R e } 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(); + } else if (result.equals(AlreadyExists)) { + return Response.status(HttpURLConnection.HTTP_CONFLICT).entity(input).build(); } } }