BlobSet

class lsst.verify.BlobSet(blobs=None)[source]

Bases: lsst.verify.jsonmixin.JsonSerializationMixin

A collection of Blobs.

Parameters:

blobs : list of lsst.verify.Blobs

Blobs to include in the set.

Attributes Summary

json A dict that can be serialized as JSON.

Methods Summary

deserialize([blobs]) Create a BlobSet from a parsed JSON dataset.
insert(blob) Insert a blob into the set.
items() Iterate over (identifier, Blob) pairs in the set.
jsonify_dict(d) Recursively build JSON-renderable objects on all values in a dict.
keys() Get a sequence of blob identifiers, which are keys to the BlobSet.
write_json(filepath) Write JSON to a file.

Attributes Documentation

json

A dict that can be serialized as JSON.

Methods Documentation

classmethod deserialize(blobs=None)[source]

Create a BlobSet from a parsed JSON dataset.

Parameters:

blobs : list, optional

A list of blob JSON serializations.

Returns:

instance : BlobSet

A BlobSet instance.

insert(blob)[source]

Insert a blob into the set.

Parameters:

blob : Blob

Blob to insert into the set. It can be accessed by key from the BlobSet through its Blob.identifier string.

items()[source]

Iterate over (identifier, Blob) pairs in the set.

Yields:

item : tuple

Tuple containing:

jsonify_dict(d)

Recursively build JSON-renderable objects on all values in a dict.

Parameters:

d : dict

Dictionary to convert into a JSON-serializable object. Values are recursively JSON-ified.

Returns:

json_dict : dict

Dictionary that can be serialized to JSON.

Examples

Subclasses can use this method to prepare output in their json-method implementation. For example:

def json(self):
    return JsonSerializationMixin.jsonify_dict({
        'value': self.value,
    })
keys()[source]

Get a sequence of blob identifiers, which are keys to the BlobSet.

Returns:

keys : sequence of str

Sequence of Blob.identifier.

write_json(filepath)

Write JSON to a file.

Parameters:

filepath : str

Destination file name for JSON output.