Example #1
0
    def load(cls, context_id, persistence_engine=None):
        """Load and instantiate a Context from the persistence_engine."""
        if not persistence_engine:
            from furious.config import get_default_persistence_engine
            persistence_engine = get_default_persistence_engine()

        if not persistence_engine:
            raise RuntimeError(
                'Specify a valid persistence_engine to load the context.')

        return persistence_engine.load_context(context_id)
Example #2
0
    def load(cls, context_id, persistence_engine=None):
        """Load and instantiate a Context from the persistence_engine."""
        if not persistence_engine:
            from furious.config import get_default_persistence_engine
            persistence_engine = get_default_persistence_engine()

        if not persistence_engine:
            raise RuntimeError(
                'Specify a valid persistence_engine to load the context.')

        return persistence_engine.load_context(context_id)
Example #3
0
    def _prepare_persistence_engine(self):
        """Load the specified persistence engine, or the default if none is
        set.
        """
        if self._persistence_engine:
            return

        persistence_engine = self._options.get('persistence_engine')
        if persistence_engine:
            self._persistence_engine = path_to_reference(persistence_engine)
            return

        from furious.config import get_default_persistence_engine

        self._persistence_engine = get_default_persistence_engine()
Example #4
0
    def _prepare_persistence_engine(self):
        """Load the specified persistence engine, or the default if none is
        set.
        """
        if self._persistence_engine:
            return

        persistence_engine = self._options.get('persistence_engine')
        if persistence_engine:
            self._persistence_engine = path_to_reference(persistence_engine)
            return

        from furious.config import get_default_persistence_engine

        self._persistence_engine = get_default_persistence_engine()
Example #5
0
    def test_get_configured_persistence_exists(self):
        """Ensure a chosen persistence module is selected."""
        from furious.config import _parse_yaml_config

        example_yaml = str('secret_key: "blah"\n'
                           'persistence: bubble\n'
                           'task_system: flah\n')

        my_config = _parse_yaml_config(example_yaml)

        from furious import config

        config._config = my_config

        persistence_module = config.get_default_persistence_engine(
            {'bubble': 'furious.config'})

        self.assertEqual(persistence_module, config)
Example #6
0
    def test_get_configured_persistence_exists(self):
        """Ensure a chosen persistence module is selected."""
        from furious.config import _parse_yaml_config

        example_yaml = str('secret_key: "blah"\n'
                           'persistence: bubble\n'
                           'task_system: flah\n')

        my_config = _parse_yaml_config(example_yaml)

        from furious import config

        config._config = my_config

        persistence_module = config.get_default_persistence_engine(
            {'bubble': 'furious.config'})

        self.assertEqual(persistence_module, config)
Example #7
0
from furious.job_utils import decode_callbacks
from furious.job_utils import encode_callbacks
from furious.marker_tree import BATCH_SIZE

from furious.marker_tree.exceptions import NotSafeToSave
from furious.marker_tree.graph_analysis import count_update
from furious.marker_tree.graph_analysis import count_marked_as_done

from furious.marker_tree.identity_utils import InvalidLeafId
from furious.marker_tree.identity_utils import leaf_persistence_id_from_group_id
from furious.marker_tree.identity_utils import leaf_persistence_id_to_group_id
from furious.marker_tree.identity_utils import ordered_random_ids

from furious.marker_tree.result_sorter import group_into_internal_vertex_results

persistence_module = get_default_persistence_engine()
logger = logging.getLogger('marker_tree')
# logger.setLevel(logging.DEBUG)


class Marker(object):
    def __init__(self, **options):
        """
        """
        self._id = options.get('id')
        assert self.id
        self.group_id = options.get('group_id')
        self.callbacks = options.get('callbacks')
        self._children = options.get('children') or []
        self.done = options.get('done', False)
        self.result = options.get('result')