class_docstr: The core component that manages LookupTables.
  
  This is designed to be a drop-in replacement for the original LookupTables class.
class_docstr_tok: ["The","core","component","that","manages","LookupTables",".","This","is","designed","to","be","a","drop-in","replacement","for","the","original","LookupTables","class","."]
docstr: Retrieves the instance of the LookupTable requested. If the requested table name is not
  found, it will Log an error, and subsequently return a NullTable.
  
  Params:
      table_name (str): The name of the lookup table desired
  
  Returns:
      LookupTable: An individual instance. Not to be mixed up with LookupTables (plural!)
docstr_tok: ["Retrieves","the","instance","of","the","LookupTable","requested",".","If","the","requested","table","name","is","not","found",",","it","will","Log","an","error",",","and","subsequently","return","a","NullTable",".","Params",":","table_name","(","str",")",":","The","name","of","the","lookup","table","desired","Returns",":","LookupTable",":","An","individual","instance",".","Not","to","be","mixed","up","with","LookupTables","(","plural","!",")"]
code: def get_table(self, table_name):
      """
      Retrieves the instance of the LookupTable requested. If the requested table name is not
      found, it will Log an error, and subsequently return a NullTable.
  
      Params:
          table_name (str): The name of the lookup table desired
  
      Returns:
          LookupTable: An individual instance. Not to be mixed up with LookupTables (plural!)
      """
      if table_name in self._tables:
          return self._tables[table_name]
  
      LOGGER.error(
          "Nonexistent LookupTable '%s' referenced. Defaulting to null table. "
          "Valid tables were (%s)",
          table_name,
          ", ".join(sorted(self._tables.keys())),
      )
  
      return self._null_table
  
file_path: streamalert/streamalert/shared/lookup_tables/core.py
imports: from streamalert.shared.config import load_config
  from streamalert.shared.logger import get_logger
  from streamalert.shared.lookup_tables.configuration import LookupTablesConfiguration
  from streamalert.shared.lookup_tables.drivers import NullDriver
  from streamalert.shared.lookup_tables.drivers_factory import construct_persistence_driver
  from streamalert.shared.lookup_tables.table import LookupTable
label_desc: Use image node_id 4 for calling the LookupTablesCore obj's underlying member method code with example usage: obj.get_table(table_name) and returns: self, self