Beispiel #1
0
 def expmng_main(self, explorers):
     explorer_to_create = splitAndStrip(explorers, ',')
     pane = self.pageSource()
     pg = pane.paletteGroup('gnr_explorer', title='!!Explorers', dockTo='pbl_dock')
     for explorer in explorer_to_create:
         explorer_pars = None
         if ' AS ' in explorer:
             explorer, explorer_code = splitAndStrip(explorer, ' AS ')
         elif ' as ' in explorer:
             explorer, explorer_code = splitAndStrip(explorer, ' as ')
         else:
             explorer_code = None
         if ':' in explorer:
             explorer, explorer_pars = explorer.split(':', 1)
         if not explorer_code:
             explorer_code = explorer.replace('.', '_').replace('@', '_')
         handler = getattr(self, 'explorer_' + explorer, None)
         if handler:
             data, metadata = handler(explorer_pars, explorer_code=explorer_code)
         else:
             if explorer_pars:
                 explorer_pars = fromJson(explorer_pars.replace("'", '"'))
                 kw = dict()
                 for k, v in explorer_pars.items():
                     kw[str(k)] = v
             else:
                 kw = dict()
             data, metadata = self.expmng_htableExplorer(explorer_table=explorer, **kw)
         pg.paletteTree(explorer_code, title=metadata.pop('title', explorer), data=data, **metadata)
Beispiel #2
0
    def fromJson(self, data):
        """Add???

        :param data: TODO
        :returns: TODO
        """
        return gnrstring.fromJson(data)
Beispiel #3
0
 def fromJson(self, data):
     """Add???
         
     :param data: TODO
     :returns: TODO
     """
     return gnrstring.fromJson(data)
Beispiel #4
0
 def fromJson(self, data):
     """Add???
         
     :param data: add???
     :returns: add???
     """
     return gnrstring.fromJson(data)
Beispiel #5
0
 def test_outputMode(self):
     assert isinstance(self.mysel.output('list'), list) and\
            isinstance(self.mysel.output('list')[0], list)
     assert isinstance(self.mysel.output('dictlist'), list) and\
            isinstance(self.mysel.output('dictlist')[0], dict)
     assert isinstance(self.mysel.output('dictlist'), list) and\
            isinstance(self.mysel.output('dictlist')[0], dict)
     fromjson = gnrstring.fromJson(self.mysel.output('json'))
     assert isinstance(self.mysel.output('json'), basestring) and\
            isinstance(fromjson, list) and isinstance(fromjson[0], dict)
     assert isinstance(self.mysel.output('pkeylist'), list) and\
            self.mysel.output('pkeylist')[0] == 0
     assert isinstance(self.mysel.output('bag'), Bag)
Beispiel #6
0
 def parseMessage(self, message):
     kwargs=fromJson(message)
     catalog = self.server.gnrapp.catalog
     result = dict()
     for k, v in kwargs.items():
         k = k.strip()
         if isinstance(v, basestring):
             try:
                 v = catalog.fromTypedText(v)
                 if isinstance(v, basestring):
                     v = v.decode('utf-8')
                 result[k] = v
             except Exception:
                 raise
         else:
             result[k] = v
     command = result.pop('command')
     result_token = result.pop('result_token',None)
     return command,result_token,result
Beispiel #7
0
 def maintenance_cellServerProfile(self,item):
     if not item['profile']:
         return
     profiles = fromJson(item['profile'])
     result = []
     for n in profiles:
         st = n['st']
         if st==0:
             color = 'gray'
         elif st<=2:
             color = 'green'
         elif st<4:
             color = 'yellow'
         elif st<6:
             color = 'orange'
         else:
             color = 'red'
         c = dict(height=1+n['nc']/4,color=color)
         result.append('<div style="background:%(color)s;height:%(height)ipx; width:3px; display:inline-block;margin-right:1px;"></div>' %c)
     item['page_profile'] = '<div>%s</div>'  %''.join(result)
Beispiel #8
0
 def pullImage(self,image=None):
     for prog in self.docker.pull(image,stream=True):
         prog = fromJson(prog)
         status = prog.get('status')
         if not status:
             continue
         if ' from ' in status:
             status,f = status.split(' from ')
         status = """ %s: %s """ %(status,prog['id'])
         progressDetail = prog.get('progressDetail',None)
         if progressDetail:
             progressDetail['status'] = status
             progress = prog.get('progress','')
             if progress:
                 progressDetail['desc'] = progress.split(']')[1].strip()
             else:
                 progressDetail['desc'] = ''
             status = r""" %(status)s <progress style='width:12em' max='%(total)s' value='%(current)s'></progress> %(desc)s """ %progressDetail
         print 'status',status
         self.clientPublish('update_image_pull',status=status,image=image)
Beispiel #9
0
 def maintenance_cellServerProfile(self,item):
     if not item['profile']:
         return
     profiles = fromJson(item['profile'])
     result = []
     for n in profiles:
         st = n['st']
         if st==0:
             color = 'gray'
         elif st<=2:
             color = 'green'
         elif st<4:
             color = 'yellow'
         elif st<6:
             color = 'orange'
         else:
             color = 'red'
         c = dict(height=1+n['nc']/4,color=color)
         result.append('<div style="background:%(color)s;height:%(height)ipx; width:3px; display:inline-block;margin-right:1px;"></div>' %c)
     item['page_profile'] = '<div>%s</div>'  %''.join(result)