Browse Source

Added edge_name_unq_key in saveEdge

pull/3811/head
deaflynx 6 years ago
parent
commit
4f6ad3263f
  1. 13
      dao/src/main/java/org/thingsboard/server/dao/edge/EdgeServiceImpl.java

13
dao/src/main/java/org/thingsboard/server/dao/edge/EdgeServiceImpl.java

@ -25,6 +25,7 @@ import org.apache.http.HttpHost;
import org.apache.http.conn.ssl.DefaultHostnameVerifier; import org.apache.http.conn.ssl.DefaultHostnameVerifier;
import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.client.HttpClients;
import org.hibernate.exception.ConstraintViolationException;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.cache.Cache; import org.springframework.cache.Cache;
@ -178,7 +179,17 @@ public class EdgeServiceImpl extends AbstractEntityService implements EdgeServic
public Edge saveEdge(Edge edge) { public Edge saveEdge(Edge edge) {
log.trace("Executing saveEdge [{}]", edge); log.trace("Executing saveEdge [{}]", edge);
edgeValidator.validate(edge, Edge::getTenantId); edgeValidator.validate(edge, Edge::getTenantId);
return edgeDao.save(edge.getTenantId(), edge); try {
return edgeDao.save(edge.getTenantId(), edge);
} catch (Exception t) {
ConstraintViolationException e = extractConstraintViolationException(t).orElse(null);
if (e != null && e.getConstraintName() != null
&& e.getConstraintName().equalsIgnoreCase("edge_name_unq_key")) {
throw new DataValidationException("Edge with such name already exists!");
} else {
throw t;
}
}
} }
@Override @Override

Loading…
Cancel
Save