class_docstr: A class that is responsible for caching objects in-memory.
  
  This class is to intended to be used in the following pattern:
  
  def get(key, default=None):
      if not cache.has(key):
          try:
              data = load_data(key)
              cache.set(key, data)
          except NoSuchKeyException:
              cache.blank(key)
  
      return cache.get(key, default)
class_docstr_tok: ["A","class","that","is","responsible","for","caching","objects","in-memory",".","This","class","is","to","intended","to","be","used","in","the","following","pattern",":","def","get","(","key",",","default=None",")",":","if","not","cache.has","(","key",")",":","try",":","data","=","load_data","(","key",")","cache.set","(","key",",","data",")","except","NoSuchKeyException",":","cache.blank","(","key",")","return","cache.get","(","key",",","default",")"]
docstr: Returns the currently cached value at the key, DISREGARDING the ttl.
  
  Use has() to check if the key is over the ttl.
  
  Params:
      key (str)
      default (mixed)
  
  Returns:
      mixed
docstr_tok: ["Returns","the","currently","cached","value","at","the","key",",","DISREGARDING","the","ttl",".","Use","has","(",")","to","check","if","the","key","is","over","the","ttl",".","Params",":","key","(","str",")","default","(","mixed",")","Returns",":","mixed"]
code: def get(self, key, default=None):
      """
      Returns the currently cached value at the key, DISREGARDING the ttl.
  
      Use has() to check if the key is over the ttl.
  
      Params:
          key (str)
          default (mixed)
  
      Returns:
          mixed
      """
      return self._data.get(key, default)
  
file_path: streamalert/streamalert/shared/lookup_tables/cache.py
imports: import copy
  from datetime import datetime, timedelta
  import random
  from streamalert.shared.logger import get_logger
label_desc: Use image node_id 4 for calling the DriverCache obj's underlying member method code with example usage: obj.get(key, default) and returns: self