@Override
 public Waypoint getWaypointById(int id) {
   try {
     return waypointDao.getWaypointById(id);
   } catch (NullPointerException | HibernateException e) {
     logger.error(e.getMessage());
     return null;
   }
 }
 @Override
 public Waypoint getWaypointByLabel(String waypointLabel) {
   try {
     return waypointDao.getWaypointByLabel(waypointLabel);
   } catch (NullPointerException | HibernateException e) {
     logger.error(e.getMessage());
     return null;
   }
 }
 @Override
 public List<WaypointType> fetchAllWaypointTypes() {
   try {
     return waypointDao.fetchAllWaypointTypes();
   } catch (NullPointerException | HibernateException e) {
     logger.error(e.getMessage());
     return null;
   }
 }
 @Override
 public WaypointType getTypeByName(String name) {
   try {
     return waypointDao.getTypeByName(name);
   } catch (NullPointerException | HibernateException e) {
     logger.error(e.getMessage());
     return null;
   }
 }
 @Override
 public List<Waypoint> getWaypointsByTrip(Trip trip) {
   try {
     return waypointDao.getWaypointsByTrip(trip);
   } catch (NullPointerException | HibernateException e) {
     logger.error(e.getMessage());
     return null;
   }
 }
 @Override
 public boolean deleteWaypoint(Waypoint waypoint) {
   try {
     return waypointDao.deleteWaypoint(waypoint);
   } catch (NullPointerException | HibernateException e) {
     logger.error(e.getMessage());
     return false;
   }
 }