hop.models

class hop.models.AvroBlob(content: List[Union[str, int, float, bool, None, Dict[str, Any], List[Any]]], schema: Optional[dict] = None)[source]

Defines an unformatted message blob.

classmethod deserialize(data)[source]

Unwrap a message produced by serialize() (the “content” value).

Returns

An instance of the model class.

classmethod load(blob_input)[source]

Create a blob message from input avro data.

Parameters

blob_input – The encoded Avro data or file object.

Returns

The Blob.

classmethod load_file(filename)[source]

Create a new message model from a file.

Parameters

filename – The path to a file.

Returns

The message model.

serialize()[source]

Wrap the message with its format and content.

Returns

A dictionary with “format” and “content” keys.

class hop.models.Blob(content: bytes)[source]

Defines an opaque message blob.

classmethod deserialize(data)[source]

Unwrap a message produced by serialize() (the “content” value).

Returns

An instance of the model class.

classmethod load(blob_input)[source]

Create a blob message from input data.

Parameters

blob_input – The unstructured message data (bytes) or file object.

Returns

The Blob.

serialize()[source]

Wrap the message with its format and content.

Returns

A dictionary with “format” and “content” keys. The value stored under “format” is the format label. The value stored under “content” is the actual encoded data.

class hop.models.GCNCircular(header: dict, body: str)[source]

Defines a GCN Circular structure.

The parsed GCN circular is formatted as a dictionary with the following schema:

{‘headers’: {‘title’: …, ‘number’: …, …}, ‘body’: …}

classmethod load(email_input)[source]

Create a new GCNCircular from an RFC 822 formatted circular.

Parameters

email_input – A file object or string.

Returns

The GCNCircular.

class hop.models.JSONBlob(content: Union[str, int, float, bool, None, Dict[str, Any], List[Any]])[source]

Defines an unformatted message blob.

classmethod deserialize(data)[source]

Unwrap a message produced by serialize() (the “content” value).

Returns

An instance of the model class.

classmethod load(blob_input)[source]

Create a blob message from input text.

Parameters

blob_input – The unstructured message text or file object.

Returns

The Blob.

serialize()[source]

Wrap the message with its format and content.

Returns

A dictionary with “format” and “content” keys. The value stored under “format” is the format label. The value stored under “content” is the actual encoded data.

class hop.models.MessageModel[source]

An abstract message model.

classmethod deserialize(data)[source]

Unwrap a message produced by serialize() (the “content” value).

Returns

An instance of the model class.

abstract classmethod load(input_)[source]

Create a new message model from a file object or string. This base implementation has no functionality and should not be called.

Parameters

input – A file object or string.

Returns

The message model.

classmethod load_file(filename)[source]

Create a new message model from a file.

Parameters

filename – The path to a file.

Returns

The message model.

serialize()[source]

Wrap the message with its format and content.

Returns

A dictionary with “format” and “content” keys. The value stored under “format” is the format label. The value stored under “content” is the actual encoded data.

class hop.models.VOEvent(ivorn: str, role: str = 'observation', version: str = '2.0', Who: dict = <factory>, What: dict = <factory>, WhereWhen: dict = <factory>, How: dict = <factory>, Why: dict = <factory>, Citations: dict = <factory>, Description: dict = <factory>, Reference: dict = <factory>)[source]

Defines a VOEvent 2.0 structure.

Implements the schema defined by:

http://www.ivoa.net/Documents/VOEvent/20110711/

classmethod load(xml_input)[source]

Create a new VOEvent from an XML-formatted VOEvent.

Parameters

xml_input – A file object, string, or generator.

Returns

The VOEvent.

classmethod load_file(filename)[source]

Create a new VOEvent from an XML-formatted VOEvent file.

Parameters

filename – Name of the VOEvent file.

Returns

The VOEvent.