def METHOD_NAME(self, snapshot_json_data):
    """
    Every snapshot should have collection of nodes which are to be populated.
    Each node in the nodes list of the snapshot shall have a unique id in this
    container so as not to clash with other node of a snapshots.
    """
    snapshot_data = {}
    snapshots = get_field_value(snapshot_json_data, 'snapshots')
    if not snapshots:
        logger.error("Json Snapshot does not contain snapshots, next!...")
        return snapshot_data
    for snapshot in snapshots:
        connector_data = self.get_structure_data(snapshot)
        snapshot_type = get_field_value(connector_data, "type")
        if snapshot_type and snapshot_type in self.snapshot_fns:
            if 'nodes' not in snapshot or not snapshot['nodes']:
                logger.error("No nodes in snapshot to be backed up!...")
                return snapshot_data
            if snapshot_type == 'azure' or snapshot_type == 'filesystem':
                current_data = self.snapshot_fns[snapshot_type](snapshot, self.container)
            else:
                current_data = self.snapshot_fns[snapshot_type](snapshot, self)
            logger.info('Snapshot: %s', current_data)
            snapshot_data.update(current_data)
    return snapshot_data