docstr: Get the job catalog entry with given job name.
  Arguments:
      job_name  (str): Job name
  Returns:
      JobCatalogEntry - catalog entry for given job name
docstr_tok: ["Get","the","job","catalog","entry","with","given","job","name",".","Arguments",":","job_name","(","str",")",":","Job","name","Returns",":","JobCatalogEntry","-","catalog","entry","for","given","job","name"]
code: def get_entry_by_name(self, job_name: str) -> JobCatalogEntry:
      """
      Get the job catalog entry with given job name.
      Arguments:
          job_name  (str): Job name
      Returns:
          JobCatalogEntry - catalog entry for given job name
      """
      entry = self.session.execute(
          select(self.model).filter(self.model._name == job_name)
      ).scalar_one_or_none()
      if entry:
          return entry.as_dataclass()
      return entry
  
file_path: evadb/evadb/catalog/services/job_catalog_service.py
imports: import datetime
  import json
  from sqlalchemy import and_, true
  from sqlalchemy.orm import Session
  from sqlalchemy.sql.expression import select
  from evadb.catalog.models.job_catalog import JobCatalog
  from evadb.catalog.models.utils import JobCatalogEntry
  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 JobCatalogService obj's underlying member method code with example usage: obj.get_entry_by_name(job_name) and returns: entry, entry