Source code for glue.core.session

import weakref

from glue.core.command import CommandStack
from glue.core.data_collection import DataCollection
from glue.core.edit_subset_mode import EditSubsetMode

__all__ = ['Session']


[docs]class Session(object): def __init__(self, application=None, data_collection=None, command_stack=None, hub=None): self.application = application self.data_collection = data_collection or DataCollection() self.hub = self.data_collection.hub self.command_stack = command_stack or CommandStack() self.command_stack.session = self self.edit_subset_mode = EditSubsetMode() self.edit_subset_mode.data_collection = self.data_collection @property def application(self): if self._application is None: return None else: return self._application()
[docs] @application.setter def application(self, value): if value is None: self._application = None else: self._application = weakref.ref(value)