@Override public PolicyEntity create(PolicyEntity entity) { Preconditions.checkNotNull(entity, "PolicyEntity should not be null"); entity.ensureDefault(); try { int retCode = queryService.insert(insertSql, Collections.singletonList(entity), policyEntityWriter); if (retCode > 0) { return entity; } else { throw new SQLException("Insertion result: " + retCode); } } catch (SQLException e) { LOGGER.error("Error to insert entity {} (entity: {}): {}", insertSql, entity.toString(), e.getMessage(), e); throw new IllegalArgumentException("SQL execution error:" + e.getMessage(), e); } }