gcpdiag/queries/lb.py [652:704]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  _resource_data: dict
  _type: str

  def __init__(self, project_id, resource_data):
    super().__init__(project_id=project_id)
    self._resource_data = resource_data

  @property
  def name(self) -> str:
    return self._resource_data['name']

  @property
  def id(self) -> str:
    return self._resource_data['id']

  @property
  def full_path(self) -> str:
    result = re.match(r'https://www.googleapis.com/compute/v1/(.*)',
                      self.self_link)
    if result:
      return result.group(1)
    else:
      return f'>> {self.self_link}'

  @property
  def self_link(self) -> str:
    return self._resource_data['selfLink']

  @property
  def region(self):
    url = self._resource_data.get('region', '')
    if url is not None:
      match = re.search(r'/([^/]+)/?$', url)
      if match is not None:
        region = match.group(1)
        return region
    return 'global'

  @property
  def ssl_certificates(self) -> List[str]:
    return self._resource_data.get('sslCertificates', [])

  @property
  def certificate_map(self) -> str:
    certificate_map = self._resource_data.get('certificateMap', '')
    result = re.match(r'https://certificatemanager.googleapis.com/v1/(.*)',
                      certificate_map)
    if result:
      return result.group(1)
    return certificate_map


@caching.cached_api_call(in_memory=True)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



gcpdiag/queries/lb.py [726:778]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  _resource_data: dict
  _type: str

  def __init__(self, project_id, resource_data):
    super().__init__(project_id=project_id)
    self._resource_data = resource_data

  @property
  def name(self) -> str:
    return self._resource_data['name']

  @property
  def id(self) -> str:
    return self._resource_data['id']

  @property
  def full_path(self) -> str:
    result = re.match(r'https://www.googleapis.com/compute/v1/(.*)',
                      self.self_link)
    if result:
      return result.group(1)
    else:
      return f'>> {self.self_link}'

  @property
  def self_link(self) -> str:
    return self._resource_data['selfLink']

  @property
  def region(self):
    url = self._resource_data.get('region', '')
    if url is not None:
      match = re.search(r'/([^/]+)/?$', url)
      if match is not None:
        region = match.group(1)
        return region
    return 'global'

  @property
  def ssl_certificates(self) -> List[str]:
    return self._resource_data.get('sslCertificates', [])

  @property
  def certificate_map(self) -> str:
    certificate_map = self._resource_data.get('certificateMap', '')
    result = re.match(r'https://certificatemanager.googleapis.com/v1/(.*)',
                      certificate_map)
    if result:
      return result.group(1)
    return certificate_map


@caching.cached_api_call(in_memory=True)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



