docs: def get_variable_value_for_variation(self, variable, variation):
      """ Get the variable value for the given variation.
  
      Args:
        variable: The Variable for which we are getting the value.
        variation: The Variation for which we are getting the variable value.
  
      Returns:
        The variable value or None if any of the inputs are invalid.
      """
  
      if not variable or not variation:
        return None
  
      if variation.id not in self.variation_variable_usage_map:
        self.logger.error('Variation with ID "%s" is not in the datafile.' % variation.id)
        return None
  
      # Get all variable usages for the given variation
      variable_usages = self.variation_variable_usage_map[variation.id]
  
      # Find usage in given variation
      variable_usage = None
      if variable_usages:
        variable_usage = variable_usages.get(variable.id)
  
      if variable_usage:
        variable_value = variable_usage.value
        self.logger.info('Value for variable "%s" for variation "%s" is "%s".' % (
          variable.key,
          variation.key,
          variable_value
        ))
  
      else:
        variable_value = variable.defaultValue
        self.logger.info('Variable "%s" is not used in variation "%s". Assigning default value "%s".' % (
          variable.key,
          variation.key,
          variable_value
        ))
  
      return variable_value