continue;
} // Ignore mappings for optional missing context.
unset($mappings[$plugin_context_id]);
} // If there are any mappings that were not satisfied, throw an exception.
// This is a more severe problem than missing values, so check and throw
// this first.
if (!
empty($mappings)) { throw new ContextException('Assigned contexts were not satisfied: ' .
implode(',',
array_keys($mappings)));
} // If there are any required contexts without a value, throw an exception.
if ($missing_value) { throw new MissingValueContextException($missing_value);
} }}