'Reads metadata of stored values for multiple given processes.'

def MultiReadMetadata(self, process_ids=None):

    if (not process_ids):
        process_ids = self.ListUsedProcessIds()
    subjects = [self.DATA_STORE_ROOT.Add(process_id) for process_id in process_ids]
    subjects_data = aff4.FACTORY.MultiOpen(subjects, mode='r', token=self.token, aff4_type=StatsStoreProcessData)
    results = {}
    for subject_data in subjects_data:
        results[subject_data.urn.Basename()] = subject_data.Get(subject_data.Schema.METRICS_METADATA)
    for process_id in process_ids:
        results.setdefault(process_id, StatsStoreMetricsMetadata())
    return results
