model_api
index
/home/gcallah/TandonDevOps/IndraABM/APIServer/model_api.py

This module restores an env from json and runs it.

 
Modules
       
importlib
db.model_db

 
Functions
       
create_model(model_id, props, indra_dir)
We get some props and create a model in response.
create_model_for_test(model, exec_key)
:param model: model to be created for testing. Loaded through name or id
:param exec_key: exec_key to be used to register the model at.
Can be None in which case it's created dynamically.
:return:
module_from_model(model)
run_model(serial_model, periods, indra_dir)
We get passed `serial_model` and run it `periods` times.
`model_rec` refers to the record from the model db.
`model` refers to an instance of the Python Model class.
 
The passed serial model is not in the registry so calls for
registry.get_model will fail. Also calls for model.group will fail
because the api serial_obj does not contain serialized groups. They are
present in model.env.members.
Since we always rely on the api response to construct the model at run time
we need to sync the registry with the model restored from the api response.
 
NOTE: Maybe we should only use the registry to restore - could decrease the
api payload size and give performance boost.

 
Data
        registry = <registry.registry.Registry object>