idmtools.core.interfaces.imetadata_operations module

Here we implement the Metadata operations interface.

Copyright 2021, Bill & Melinda Gates Foundation. All rights reserved.

class idmtools.core.interfaces.imetadata_operations.IMetadataOperations

Bases: ABC

Operations to handle metadata for SlurmPlatform.

abstract get(item: IEntity) Dict

Obtain item’s metadata.

Parameters:

item – idmtools entity (Suite, Experiment and Simulation, etc.)

Returns:

a key/value dict of metadata from the given item

abstract dump(item: IEntity) None

Save item’s metadata to a file.

Parameters:

item – idmtools entity (Suite, Experiment and Simulation, etc.)

Returns:

None

abstract load(item: IEntity) Dict

Obtain item’s metadata file.

Parameters:

item – idmtools entity (Suite, Experiment and Simulation, etc.)

Returns:

key/value dict of item’s metadata file

abstract update(item: IEntity) None

Update item’s metadata file.

Parameters:

item – idmtools entity (Suite, Experiment and Simulation, etc.)

Returns:

None

abstract clear(item: IEntity) None

Clear the item’s metadata file.

Parameters:

item – idmtools entity (Suite, Experiment and Simulation, etc.)

Returns:

None

abstract filter(item_type: ItemType, item_filter: Optional[Dict] = None) List

Obtain all items that match the given item_filter key/value pairs passed.

Parameters:
  • item_type – the type of items to search for matches (simulation, experiment, suite, etc)

  • item_filter – a dict of metadata key/value pairs for exact match searching

Returns:

a list of matching items

__init__() None