'Shows the details of an aggregate, hosts and metadata included.'

@extensions.expected_errors(404)
def show(self, req, id):

    context = _get_context(req)
    context.can((aggr_policies.POLICY_ROOT % 'show'))
    try:
        aggregate = self.api.get_aggregate(context, id)
    except exception.AggregateNotFound as e:
        raise exc.HTTPNotFound(explanation=e.format_message())
    return self._marshall_aggregate(req, aggregate)
