docstr: Get the table catalog entry with given table name.
  Arguments:
      key  (str): key name
  Returns:
      Configuration Catalog Entry - catalog entry for given key name
docstr_tok: ["Get","the","table","catalog","entry","with","given","table","name",".","Arguments",":","key","(","str",")",":","key","name","Returns",":","Configuration","Catalog","Entry","-","catalog","entry","for","given","key","name"]
code: def get_entry_by_name(self, key: str) -> ConfigurationCatalogEntry:
      """
      Get the table catalog entry with given table name.
      Arguments:
          key  (str): key name
      Returns:
          Configuration Catalog Entry - catalog entry for given key name
      """
      entry = self.session.execute(
          select(self.model).filter(self.model._key == key)
      ).scalar_one_or_none()
      if entry:
          return entry.as_dataclass()
      return entry
  
file_path: evadb/evadb/catalog/services/configuration_catalog_service.py
imports: from sqlalchemy.orm import Session
  from sqlalchemy.sql.expression import select
  from evadb.catalog.models.configuration_catalog import ConfigurationCatalog
  from evadb.catalog.models.utils import ConfigurationCatalogEntry
  from evadb.catalog.services.base_service import BaseService
  from evadb.utils.errors import CatalogError
  from evadb.utils.logging_manager import logger
label_desc: Use image node_id 3 for calling the ConfigurationCatalogService obj's underlying member method code with example usage: obj.get_entry_by_name(key) and returns: entry, entry