コード例 #1
0
    def ok(self):
        self.status.SetError("")
        name = str(self.name.entry.get())
        if (name == ""):
            self.status.SetError("No name specified")
            return
        try:
            args = [self.conn[0].FillinConn()]
            arg = self.conn[1].FillinConn()
            if (arg != None):
                args.append(arg)
                pass
            pass
        except Exception as e:
            self.status.SetError("Error handling connection arguments")
            import sys, traceback
            t, v, b = sys.exc_info()
            bl = traceback.format_tb(b)
            b = ""
            for x in bl:
                b += "\n" + x
            self.mainhandler.log(
                "EINF", "Connection Argument Handling error: " + str(t) + ":" +
                str(v) + ":" + b)
            return
        domain_id = OpenIPMI.open_domain3(name, [], args, None, None)
        if (domain_id == None):
            self.status.SetError("Error opening domain")
            return

        self.destroy()
        return
コード例 #2
0
def RestoreDomains(mainhandler):
    for i in defaultDomains:
        name = i[0]
        attrhashes = i[1]
        other = i[2]
        connects = []
        for attrhash in attrhashes:
            if ("contype" not in attrhash):
                continue
            args = OpenIPMI.alloc_empty_args(str(attrhash["contype"]))
            if (args == None):
                continue
            for attr in attrhash.items():
                vname = str(attr[0])
                if (vname == "contype"):
                    continue
                value = str(attr[1])
                args.set_val(0, vname, value)
                pass
            connects.append(args)
            pass
        domain_id = OpenIPMI.open_domain3(name, [], connects, None, None)
        if (domain_id != None):
            DomainInfoSetup(other, domain_id)
            pass
        else:
            _oi_logging.error("Error making domain connection for " + name)
            pass
        pass
    return
コード例 #3
0
ファイル: _domain.py プロジェクト: sharkconi/openipmi
def RestoreDomains(mainhandler):
    for i in defaultDomains:
        name = i[0]
        attrhashes = i[1]
        other = i[2]
        connects = [ ]
        for attrhash in attrhashes:
            if ("contype" not in attrhash):
                continue
            args = OpenIPMI.alloc_empty_args(str(attrhash["contype"]))
            if (args == None):
                continue
            for attr in attrhash.items():
                vname = str(attr[0])
                if (vname == "contype"):
                    continue
                value = str(attr[1])
                args.set_val(0, vname, value)
                pass
            connects.append(args)
            pass
        domain_id = OpenIPMI.open_domain3(name, [], connects, None, None)
        if (domain_id != None):
            DomainInfoSetup(other, domain_id)
            pass
        else:
            _oi_logging.error("Error making domain connection for " + name)
            pass
        pass
    return
コード例 #4
0
 def Connect(self):
     self.already_up = False
     self.domain_id = OpenIPMI.open_domain3(self.name, [], self.connection,
                                            self, self)
     del self.connection
     if (self.domain_id == None):
         raise InvalidDomainError("Open domain failed, invalid parms")
     return
コード例 #5
0
ファイル: _domain.py プロジェクト: sharkconi/openipmi
 def Connect(self):
     self.already_up = False
     self.domain_id = OpenIPMI.open_domain3(self.name, [], self.connection,
                                            self, self)
     del self.connection
     if (self.domain_id == None):
         raise InvalidDomainError("Open domain failed, invalid parms")
     return
コード例 #6
0
ファイル: gui_domainDialog.py プロジェクト: xiar/openipmi
class OpenDomainDialog(Tix.Toplevel):
    def __init__(self, mainhandler):
        Tix.Toplevel.__init__(self)
        self.title("Domain Creation Dialog")
        
        self.mainhandler = mainhandler

        self.name = Tix.LabelEntry(self, label="Domain name")
        self.name.pack(side=Tix.TOP, fill=Tix.X, expand=1)

        bbox = Tix.ButtonBox(self)
        bbox.add("cancel", text="Cancel", command=lambda w=self: w.cancel())
        bbox.add("ok", text="Ok", command=lambda w=self: w.ok())
        bbox.pack(side=Tix.BOTTOM, fill=Tix.X, expand=1)

        self.status = gui_errstr.ErrStr(self)
        self.status.pack(side=Tix.BOTTOM, fill=Tix.X, expand=1)

        self.conn = [ ConnInfo(self, mainhandler),
                      ConnInfo(self, mainhandler, False) ]
        self.conn[0].pack(side=Tix.TOP, fill=Tix.BOTH, expand=1)
        self.conn[1].pack(side=Tix.TOP, fill=Tix.BOTH, expand=1)
        self.name.entry.focus()

        self.bind("<Destroy>", self.OnDestroy)

        return

    def OnDestroy(self, event):
        # This doesn't get cleaned up properly by Python til after
        # exit, but we need to make sure the args get freed now, or
        # it won't be freed until after the OS handler is destroyed.
        for c in self.conn:
            c.Cleanup()
            pass
        return
    
    def cancel(self):
        self.destroy()
        return

    def ok(self):
        self.status.SetError("")
        name = str(self.name.entry.get())
        if (name == ""):
            self.status.SetError("No name specified")
            return
        try:
            args = [ self.conn[0].FillinConn() ]
            arg = self.conn[1].FillinConn()
            if (arg != None):
                args.append(arg);
                pass
            pass
        except Exception, e:
            self.status.SetError("Error handling connection arguments")
            import sys, traceback
            t, v, b = sys.exc_info()
            bl = traceback.format_tb(b)
            b = ""
            for x in bl:
                b += "\n" + x
            self.mainhandler.log("EINF", "Connection Argument Handling error: "
                                 + str(t) + ":" + str(v) + ":" + b)
            return
        domain_id = OpenIPMI.open_domain3(name, [], args, None, None)
        if (domain_id == None):
            self.status.SetError("Error opening domain")
            return

        self.destroy()
        return