Ejemplo n.º 1
0
 def POST(self):
     # Add header
     web.header('content-type', 'application/xml;chartset=UTF-8')
     web.header('Server', 'Apache-Coyote/1.1')
     web.header('Content-Language', 'zh-CN')
     web.header('Pragram', 'no-cache')
     web.header('Expires', 'Thu, 01 Jan 1970 00:00:00 GMT')
     web.header('Cache-Control', 'no-cache, no-store, max-age=0')
     # get xml body
     xmldata = web.data()
     referer = web.ctx.fullpath
     LOG_OBJ("URL: " + str(referer))
     LOG_OBJ("REQUEST: " + str(xmldata))
     # get resp xml from db and resp to sender
     self.execsql = ExecSQL(LOG_OBJ)
     result = self.execsql.getDataResp(referer, xmldata)
     if type(result) is str:
         return result
     elif type(result) is tuple:
         # result = result[0] + str(BinaryData) + result[1]
         # print result
         return result[0] + str(BinaryData) + result[1]
     if "URL Not Found!" == result:
         LOG_OBJ("RESPONSE: " + result)
     else:
         LOG_OBJ("RESPONSE: Success!")
     # insert request xml data to db
     # self.execsql = ExecSQL(LOG_OBJ)
     # self.execsql.insertXML2DB(referer, xmldata)
     return result
Ejemplo n.º 2
0
    def editBinaryDialog(self, text):
        """ edit binary dialog
        """
        # self.PrintEventLog("edit binary dialog is not Achieve")
        # self.searchUrlInfo(self.searchBtnEvn)
        """ edit Binary dialog """
        flag = True
        execsql = None
        # Show Information Dialog
        editdialog = EditBinaryDialog(self, -1, "Edit Config", (450, 400),
                                      text)
        editdialog.CenterOnScreen()
        # print editdialog.GetResponseText()
        #[1, u'wfrwaef', u'wfrwaef']
        # this does not return until the dialog is closed.
        val = editdialog.ShowModal()
        try:
            if val == wx.ID_OK:
                getresult = editdialog.GetResponseText()

                list_id = self.ListCtrlObj.GetId()
                if list_id not in [self.XmlListCtrlId, self.BinaryListCtrlId]:
                    self.PrintEventLog(
                        self.err_text +
                        "editXmlDialog self.ListCtrlObj.GetId() is not 30 or 31"
                    )
                    return

                # 执行查询插入操作
                execsql = ExecSQL(self.PrintEventLog)
                listitemselected, getlistitemid = self.ListCtrlObj.GetSelectListItem(
                )
                execsql.editSaveDataBut(list_id, str(getlistitemid[0]),
                                        getresult)
                # refresh ListCtrl layout result
                self.searchUrlInfo(self.searchBtnEvn)
            else:
                # print "You pressed CANCEL"
                pass
        # My define SQL Connect Exception trap and return
        except (TypeError, AttributeError) as err:
            self.PrintEventLog(err)
            return
        except SQLconnError as err:
            self.PrintEventLog(err.arg)
            return
        # BaseException trap and return
        except BaseException as err:
            self.PrintEventLog(self.err_text + str(err))
            return
        else:
            flag = False
            # self.PrintEventLog("SQL Connection OK")
        finally:
            self.tracebackOutput(flag)
            # release value
            del execsql
            editdialog.Destroy()
Ejemplo n.º 3
0
    def searchUrlInfo(self, event):
        """Display selected Url information
        """
        if self.ListCtrlObj is None:
            self.PrintEventLog(self.err_text +
                               "searchUrlInfo self.ListCtrlObj is None")
            return

        # delete all list
        self.ListCtrlObj.DeleteAllItems()
        # get url value
        urlpath = self.texturl.GetValue()

        # self.ListCtrlObj.GetId() Exception Process(Not is 30 or 31 )
        list_id = self.ListCtrlObj.GetId()
        if list_id not in [self.XmlListCtrlId, self.BinaryListCtrlId]:
            self.PrintEventLog(
                self.err_text +
                "searchUrlInfo self.ListCtrlObj.GetId() is not 30 or 31")
            return

        # traceback flag
        flag = True
        execsql = None
        # Xml执行DB查询
        # add SQL Connect Exception Process
        try:
            execsql = ExecSQL(self.PrintEventLog)
            result = execsql.selectBut(list_id, urlpath)
        # My define SQL Connect Exception trap and return
        except (TypeError, AttributeError) as err:
            self.PrintEventLog(err)
            return
        except SQLconnError as err:
            self.PrintEventLog(err.arg)
            return
        # BaseException trap and return
        except BaseException as err:
            self.PrintEventLog(self.err_text + str(err))
            return
        else:
            flag = False
            # self.PrintEventLog("SQL Connection OK")
        finally:
            self.tracebackOutput(flag)
            # release value
            del execsql

        # 将DB结果插入list表单
        self.insert2List(result)
        # set button state(Enable or Disable)
        self.SetButtonState()
Ejemplo n.º 4
0
 def GET(self):
     referer = web.ctx.fullpath
     LOG_OBJ("URL: " + str(referer))
     web.header('content-type', 'application/xml;chartset=UTF-8')
     # get resp xml from db and resp to sender
     self.execsql = ExecSQL(LOG_OBJ)
     result = self.execsql.getDataResp(referer, None)
     if type(result) is str:
         return result
     elif type(result) is tuple:
         return result[0] + str(BinaryData) + result[1]
     if "URL Not Found!" == result:
         LOG_OBJ("RESPONSE: " + result)
     else:
         LOG_OBJ("RESPONSE: Success!")
Ejemplo n.º 5
0
 def __init__(self, log):
     global LOG_OBJ
     self.log = log
     LOG_OBJ = self.log
     self.urls = ('/.*', 'index')
     self.app = web.application(self.urls, globals())
     self.execsql = ExecSQL(self.log)
Ejemplo n.º 6
0
    def OnDoubleClick(self, event):
        """double click to show this iterm information
        """
        conf_id = self.ListCtrlObj.GetSelectedSingleItemInfo(
            event.m_itemIndex, self.ListCtrlObj.GetId())
        execsql = ExecSQL(self.PrintEventLog)

        if self.ListCtrlObj.GetId() == self.XmlListCtrlId:
            querydata = execsql.getAll(self.ListCtrlObj.GetId(), conf_id)
            for index in querydata:
                self.resultall = (index['conf_id'], index['conf_url'],
                                  str(index['conf_response']).decode('utf-8'),
                                  str(index['conf_request']).decode('utf-8'))

            # Show Information Dialog
            viewdialog = ViewXmlDialog(self, -1, "Show Information",
                                       (450, 400), self.resultall)
            viewdialog.CenterOnScreen()
            # this does not return until the dialog is closed.
            val = viewdialog.ShowModal()
            if val == wx.ID_OK:
                pass
                # print "You pressed OK"
            viewdialog.Destroy()
        else:
            querydata = execsql.getAll(self.ListCtrlObj.GetId(), conf_id)
            for index in querydata:
                self.resultall = (index['conf_id'], index['conf_url'],
                                  index['conf_type'], index['conf_before'],
                                  index['conf_after'])
            # Show Information Dialog
            viewbinarydialog = ViewBinaryDialog(self, -1, "Show Information",
                                                (450, 400), self.resultall)
            viewbinarydialog.CenterOnScreen()
            # this does not return until the dialog is closed.
            val = viewbinarydialog.ShowModal()
            if val == wx.ID_OK:
                # print "You pressed OK"
                pass
            viewbinarydialog.Destroy()
Ejemplo n.º 7
0
    def EditResponseInfo(self, event):
        """ Edit Response info
        """
        conf_id = self.ListCtrlObj.GetSelectedSingleItemInfo(
            self.ListCtrlObj.GetSelectListItem()[0][0],
            self.ListCtrlObj.GetId())
        execsql = ExecSQL(self.PrintEventLog)

        if self.ListCtrlObj.GetId() == self.XmlListCtrlId:
            querydata = execsql.getAll(self.ListCtrlObj.GetId(), conf_id)
            for index in querydata:
                self.resultall = (index['conf_id'], index['conf_url'],
                                  str(index['conf_response']).decode('utf-8'),
                                  str(index['conf_request']).decode('utf-8'))
                self.editXmlDialog(self.resultall)
        else:
            querydata = execsql.getAll(self.ListCtrlObj.GetId(), conf_id)
            for index in querydata:
                self.resultall = (index['conf_id'], index['conf_url'],
                                  index['conf_type'], index['conf_before'],
                                  index['conf_after'])
                self.editBinaryDialog(self.resultall)
Ejemplo n.º 8
0
    def deleteUrlInfo(self, event):
        """Delete a selected Url information """
        execsql = None
        flag = True
        try:
            # eg. listitemselected, getlistitemid = [1, 0] [u'22', u'23']
            listitemselected, getlistitemid = self.ListCtrlObj.GetSelectListItem(
            )
            # print listitemselected, getlistitemid
            execsql = ExecSQL(self.PrintEventLog)

            list_id = self.ListCtrlObj.GetId()
            if list_id not in [self.XmlListCtrlId, self.BinaryListCtrlId]:
                self.PrintEventLog(
                    self.err_text +
                    "deleteUrlInfo self.ListCtrlObj.GetId() is not 30 or 31")
                return
            if self.ListCtrlObj.GetItemCount(
            ) == self.ListCtrlObj.GetSelectedItemCount():
                self.ListCtrlObj.DeleteAllItems()
                execsql.deleteBut(list_id, "")
            else:
                for item in listitemselected:
                    self.ListCtrlObj.DeleteItem(item)
                # 删除选中项(多选和单选)
                execsql.deleteBut(list_id, getlistitemid)
        # My define SQL Connect Exception trap and return
        except (TypeError, AttributeError) as err:
            self.PrintEventLog(err)
            return
        except SQLconnError as err:
            self.PrintEventLog(err.arg)
            return
        # BaseException trap and return
        except BaseException as err:
            self.PrintEventLog(self.err_text + str(err))
            return
        else:
            flag = False
            # self.PrintEventLog("SQL Connection OK")
        finally:
            self.tracebackOutput(flag)
            # release value
            del execsql
        # set button state(Enable or Disable)
        self.SetButtonState()
Ejemplo n.º 9
0
    def addBinaryDialog(self):
        """ add binary dialog
        """

        execsql = None
        # Show Information Dialog
        adddialog = AddBinaryDialog(self, -1, "Add Config", (450, 400))
        adddialog.CenterOnScreen()
        # this does not return until the dialog is closed.
        val = adddialog.ShowModal()

        flag = True
        # add SQL Connect Exception Process
        try:
            if val == wx.ID_OK:
                # print "You pressed OK"
                # 获取add的值
                getresult = adddialog.GetAddText()
                # [u'111', u'2222', u'33333']
                # print getresult[0], type(getresult[0])
                # print getresult
                # print type(getresult[0]), getresult[1]

                # Analyzing the encoding type
                list_id = self.ListCtrlObj.GetId()
                if list_id not in [self.XmlListCtrlId, self.BinaryListCtrlId]:
                    self.PrintEventLog(
                        self.err_text +
                        "addXmlDialog self.ListCtrlObj.GetId() is not 30 or 31"
                    )
                    return

                # 查询url是否唯一
                execsql = ExecSQL(self.PrintEventLog)
                url = execsql.geturlsql(list_id, getresult[0])
                # url为空是不允许insert
                if getresult[0] == '':
                    self.PrintEventLog("Please enter URL.")
                # 判断url是否唯一
                elif not len(url):
                    # insert db
                    execsql = ExecSQL(self.PrintEventLog)
                    execsql.addSaveDataBut(list_id, getresult)
                    # refresh db
                else:
                    # print("The URL address is existing. ")
                    self.PrintEventLog("The URL address is existing. URL: %s" %
                                       getresult[0])
                # refresh listctrl
                self.searchUrlInfo(self.searchBtnEvn)

            else:
                # print "You pressed CANCEL"
                pass

        # My define SQL Connect Exception trap and return
        except (TypeError, AttributeError) as err:
            self.PrintEventLog(err)
            return
        except SQLconnError as err:
            self.PrintEventLog(err.arg)
            return
        # BaseException trap and return
        except BaseException as err:
            self.PrintEventLog(self.err_text + str(err))
            return
        else:
            flag = False
            # self.PrintEventLog("SQL Connection OK")
        finally:
            self.tracebackOutput(flag)
            # release value
            del execsql
            adddialog.Destroy()