class_docstr: Geocoder using the HERE Geocoding & Search v7 API.
  
  Documentation at:
      https://developer.here.com/documentation/geocoding-search-api/
  
  Terms of Service at:
      https://legal.here.com/en-gb/terms
  
  .. versionadded:: 2.2
code: def _geocoder_exception_handler(self, error):
      if not isinstance(error, AdapterHTTPError):
          return
      if error.status_code is None or error.text is None:
          return
      try:
          body = json.loads(error.text)
      except ValueError:
          message = error.text
      else:
          # `title`: https://developer.here.com/documentation/geocoding-search-api/api-reference-swagger.html  # noqa
          # `error_description`: returned for queries without apiKey.
          message = (
              body.get("title")
              or body.get("error_description")
              or error.text
          )
      exc_cls = ERROR_CODE_MAP.get(
          error.status_code, GeocoderServiceError
      )
      raise exc_cls(message) from error
  
imports: import collections.abc
  import json
  import warnings
  from functools import partial
  from urllib.parse import urlencode
  from geopy.adapters import AdapterHTTPError
  from geopy.exc import ConfigurationError, GeocoderAuthenticationFailure, GeocoderInsufficientPrivileges, GeocoderQueryError, GeocoderRateLimited, GeocoderServiceError, GeocoderUnavailable
  from geopy.geocoders.base import DEFAULT_SENTINEL, ERROR_CODE_MAP, Geocoder
  from geopy.location import Location
  from geopy.util import join_filter, logger
label_desc: Use image node_id 5 for calling the HereV7 obj's underlying member method code with example usage: obj._geocoder_exception_handler(error) without return types