コード例 #1
0
    def changeExtension(self, extension=None):
        """
        Change to a new extension.

        :param extension: can be "mini", "3d", "tissue", "plant"
        """
        self.removeDocksWidgets()

        filename = 'oalab.py'
        conf = path(get_openalea_home_dir()) / filename
        if extension in ["mini", "3d", "tissue", "plant"]:
            filename = ('oalab_' + extension + '.py')
            conf = path(get_openalea_home_dir()) / filename
        if not conf.exists():
            with conf.open('w') as f:
                # TODO : auto generate config file
                # f.write(self._config.generate_config_file())
                if extension == "mini":
                    f.write(config_file_mini)
                elif extension == "3d":
                    f.write(config_file_3d)
                elif extension == "tissue":
                    f.write(config_file_tissue)
                elif extension == "plant":
                    f.write(config_file_plant)
                else:
                    f.write(config_file_default)

        self.session.load_config_file(filename=filename,
                                      path=get_openalea_home_dir())
        self.setWidgets(self.controller)
コード例 #2
0
    def changeExtension(self, extension=None):
        """
        Change to a new extension.

        :param extension: can be "mini", "3d", "tissue", "plant"
        """
        self.removeDocksWidgets()

        filename = 'oalab.py'
        conf = path(get_openalea_home_dir()) / filename
        if extension in ["mini", "3d", "tissue", "plant"]:
            filename = ('oalab_' + extension + '.py')
            conf = path(get_openalea_home_dir()) / filename
        if not conf.exists():
            with conf.open('w') as f:
                # TODO : auto generate config file
                # f.write(self._config.generate_config_file())
                if extension == "mini":
                    f.write(config_file_mini)
                elif extension == "3d":
                    f.write(config_file_3d)
                elif extension == "tissue":
                    f.write(config_file_tissue)
                elif extension == "plant":
                    f.write(config_file_plant)
                else:
                    f.write(config_file_default)

        self.session.load_config_file(filename=filename, path=get_openalea_home_dir())
        self.setWidgets(self.controller)
コード例 #3
0
 def add_data(self,
              data_id="",
              path="",
              site="",
              exec_data=False,
              cache_data=False,
              *args,
              **kwargs):
     # FIRST: FORMAT INPUT:
     ind = {
         "data_id": data_id,
         "path": path,
         "site": site,
         "exec_data": exec_data,
         "cache_data": cache_data
     }
     try:
         index_path = os.path.join(self.path, str(data_id + '.json'))
         with open(index_path, 'a+') as fp:
             json.dump(ind, fp)
             fp.write("\n")
     except:
         index_path = os.path.join(settings.get_openalea_home_dir(),
                                   'index_default.json')
         print('Fail to open index files. - Now write index in : ',
               index_path)
         with open(index_path, 'a+') as fp:
             json.dump(ind, fp)
             fp.write("\n")
コード例 #4
0
ファイル: main2.py プロジェクト: shiva16/openalea
def launch_lab(plugin_class):
    from openalea.oalab.gui.splittablewindow import OALabMainWin
    from openalea.core.settings import get_openalea_home_dir
    from openalea.core.path import path as Path
    from openalea.core.service.introspection import alias
    from openalea.oalab.gui.utils import qicon

    plugin = plugin_class()
    lab_class = plugin()
    layout_path = Path(get_openalea_home_dir()) / '%s.oaui' % lab_class.name
    OALabMainWin.DEFAULT_LAYOUT_PATH = layout_path
    OALabMainWin.DEFAULT_LAYOUT = lab_class.layout
    OALabMainWin.DEFAULT_MENU_NAMES = lab_class.menu_names
    OALabMainWin.LAB = lab_class
    if hasattr(lab_class, "start"):
        lab_class.start()
    win = OALabMainWin(lab=lab_class)
    win.setWindowIcon(qicon(lab_class.icon))
    if hasattr(lab_class, 'connect_applet'):
        win.appletSet.connect(lab_class.connect_applet)
    win.emit_applet_set()
    if hasattr(lab_class, "initialize"):
        lab_class.initialize()
    win.initialize()
    win.setWindowTitle('OpenAleaLab "%s"' % alias(plugin))
    win.showMaximized()
    win.raise_()

    return win
コード例 #5
0
ファイル: main2.py プロジェクト: VirtualPlants/openalea
def launch_lab(plugin_class):
    from openalea.oalab.gui.splittablewindow import OALabMainWin
    from openalea.core.settings import get_openalea_home_dir
    from openalea.core.path import path as Path
    from openalea.core.service.introspection import alias
    from openalea.oalab.gui.utils import qicon

    plugin = plugin_class()
    lab_class = plugin()
    layout_path = Path(get_openalea_home_dir()) / '%s.oaui' % lab_class.name
    OALabMainWin.DEFAULT_LAYOUT_PATH = layout_path
    OALabMainWin.DEFAULT_LAYOUT = lab_class.layout
    OALabMainWin.DEFAULT_MENU_NAMES = lab_class.menu_names
    OALabMainWin.LAB = lab_class
    if hasattr(lab_class, "start"):
        lab_class.start()
    win = OALabMainWin(lab=lab_class)
    win.setWindowIcon(qicon(lab_class.icon))
    if hasattr(lab_class, 'connect_applet'):
        win.appletSet.connect(lab_class.connect_applet)
    win.emit_applet_set()
    if hasattr(lab_class, "initialize"):
        lab_class.initialize()
    win.initialize()
    win.setWindowTitle('OpenAleaLab "%s"' % alias(plugin))
    win.showMaximized()
    win.raise_()

    return win
コード例 #6
0
 def add_wf_item(self, item, *args, **kwargs):
     try:
         prov_path = os.path.join(self.localpath,
                                  str(item["workflow"]) + '.json')
         with open(prov_path, 'a+') as fp:
             json.dump(item, fp, indent=4)
     except:
         prov_path = path(settings.get_openalea_home_dir()
                          ) / 'provenance' / 'wf_provenance.json'
         print('Fail to open prov files. - Now write prov in : ', prov_path)
         with open(prov_path, 'a+') as fp:
             json.dump(item, fp, indent=4)
コード例 #7
0
 def add_execution_item(self, item, *args, **kwargs):
     try:
         prov_path = os.path.join(self.localpath,
                                  str(item["workflow_id"]) + '.json')
         with open(prov_path, 'a+') as fp:
             json.dump(item, fp)
             fp.write("\n")
     except:
         prov_path = os.path.join(settings.get_openalea_home_dir(),
                                  'provenance', 'execution_provenance.json')
         print('Fail to open prov files. - Now write prov in : ', prov_path)
         with open(prov_path, 'a+') as fp:
             json.dump(item, fp)
             fp.write("\n")
コード例 #8
0
# -*- coding: utf-8 -*-
from openalea.core.path import path
from openalea.core import settings
import os
from os.path import expanduser

REMOTE_SITE = False

# Files
SITE_PATH = path(settings.get_openalea_home_dir()) / 'index'

# Mongo
MONGO_ADDR='127.0.0.1'
MONGO_PORT = 27017

# remote db
MONGO_SSH_IP='127.0.0.1'
home = expanduser("~")
SSH_PKEY = os.path.join(home, ".ssh", "id_rsa")
SSH_USERNAME="******"


# cassandra
CASSANDRA_SSH_IP = "134.158.247.62"
CASSANDRA_ADDR = "localhost" 
CASSANDRA_PORT = 9042
コード例 #9
0
def get_database_name():
    db_fn = path(settings.get_openalea_home_dir())/'provenance.sq3'
    return db_fn
コード例 #10
0
# -*- coding: utf-8 -*-
from openalea.core.path import path
from openalea.core import settings
import os
from os.path import expanduser

# PATHS
# files infos
PROVENANCE_PATH = path(settings.get_openalea_home_dir()) / 'provenance'
TMP_PATH = path(settings.get_openalea_home_dir()) / "execution_data"
CACHE_PATH = path(settings.get_openalea_home_dir()) / "cached_data"

# infos about provenance db
REMOTE_PROV = False
# Mongo
MONGO_ADDR = '127.0.0.1'
MONGO_PORT = 27017

# cassandra
REMOTE_INDEX = True
CASSANDRA_SSH_IP = "134.158.247.62"
CASSANDRA_PORT = 9042

# SSH
PROVDB_SSH_ADDR = ""
home = expanduser("~")
SSH_PKEY = os.path.join(home, ".ssh", "id_rsa")
SSH_USERNAME = "******"
# REMOTE_DB_ADDR=('127.0.0.1', 27017)
コード例 #11
0
# -*- coding: utf-8 -*-
from openalea.core.path import path
from openalea.core import settings
import os
from os.path import expanduser

REMOTE_PROV = False

# Files
PROVENANCE_PATH = path(settings.get_openalea_home_dir()) / 'provenance'

# Mongo
MONGO_ADDR = '127.0.0.1'
MONGO_PORT = 27017

# remote db
MONGO_SSH_IP = '127.0.0.1'
home = expanduser("~")
SSH_PKEY = os.path.join(home, ".ssh", "id_rsa")
SSH_USERNAME = "******"

# cassandra
CASSANDRA_SSH_IP = "134.158.247.62"
CASSANDRA_ADDR = "localhost"
CASSANDRA_PORT = 9042
コード例 #12
0
def get_database_name():
    db_fn = path(settings.get_openalea_home_dir()) / 'provenance.sq3'
    return db_fn