本文整理汇总了Python中Helper.createClassInstance方法的典型用法代码示例。如果您正苦于以下问题:Python Helper.createClassInstance方法的具体用法?Python Helper.createClassInstance怎么用?Python Helper.createClassInstance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Helper
的用法示例。
在下文中一共展示了Helper.createClassInstance方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: readInTestCase
# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import createClassInstance [as 别名]
def readInTestCase(self, _tcname):
"""Tries to load and add the test case with the given name.
"""
tc = Helper.createClassInstance(_tcname)
if tc:
if isinstance(tc, TestCase):
self.addTestCase(tc)
else:
Log.logDebug("SFTF.readInTestCase(): \'" + str(_tcname) + " has not TestCase as base, skipping", 1)
示例2: getLocalContact
# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import createClassInstance [as 别名]
def getLocalContact(self):
"""This function returns the local contact to be used for this dialog"""
if (self.localContact is not None):
Log.logDebug("Dialog.getLocalContact(): deep-copy localContact", 2)
con = copy.deepcopy(self.localContact)
elif (self.localUri is not None):
Log.logDebug("Dialog.getLocalContact(): deep-copy localuri", 2)
con = Helper.createClassInstance("Contact")
con.uri = copy.deepcopy(self.localUri.uri)
con.uri.params = []
con.uri.headers = []
else:
con = Helper.createClassInstance("Contact")
con.uri.protocol = "sip"
con.uri.username = Config.SC_USER_NAME
con.uri.host = Config.LOCAL_IP
con.uri.port = Config.LOCAL_PORT
return con
示例3: getRoutingTarget
# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import createClassInstance [as 别名]
def getRoutingTarget(self):
"""This function returns the complete routing informations
for a given dialog. It returns a tripple: request URI (a parsed sip
uri instance), the route set as list of parsed route headers and
the network target of the request as tuple of IP and port.
"""
#FIXME we should look for the requested transport type
if (not self.ignoreRoute) and (self.RouteSet is not None):
if self.RouteSet.uri.port is None:
port = int(5060)
else:
port = int(self.RouteSet.uri.port)
dst = (self.RouteSet.uri.host, port)
if self.RouteSet.looseRouter:
rs = ''
RR = self.RouteSet
while RR is not None:
rs = rs + ',' + RR.sub_create()
RR = RR.next
rs = rs[1:]
return self.remoteContact.uri, rs, dst
else:
rs = ''
RR = self.RouteSet.next
while RR is not None:
rs = rs + ',' + RR.sub_create()
RR = RR.next
rs = rs[1:] + ',' + "<" + self.remoteContact.uri.create() + ">"
return self.RouteSet.uri, rs, dst
elif self.remoteContact is not None:
if self.remoteContact.uri.port is None:
port = int(5060)
else:
port = int(self.remoteContact.uri.port)
dst = (self.remoteContact.uri.host, port)
return self.remoteContact.uri, None, dst
else:
ruri = Helper.createClassInstance("sip_uri")
ruri.protocol = "sip"
ruri.username = str(Config.TEST_USER_NAME)
ruri.host = str(Config.TEST_HOST)
ruri.port = str(Config.TEST_HOST_PORT)
dst = (Config.TEST_HOST, int(Config.TEST_HOST_PORT))
return ruri, None, dst
示例4: parseFirstLine
# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import createClassInstance [as 别名]
def parseFirstLine(self, fLine):
"""Tries to parse the given first line of a message as a SIP request
line. On succes returns True, otherwise False.
"""
try:
index = fLine.index(' ')
self.method = fLine[0:index]
fLine = fLine[index+1:]
index = fLine.index(' ')
self.rUri = Helper.createClassInstance("sip_uri")
self.rUri.parse(fLine[0:index])
fLine = fLine[index+1:]
index = fLine.index('/')
self.protocol = fLine[0:index]
if not self.protocol.lower().startswith("sip"):
return False
self.version = fLine[index+1:].replace("\n", "").replace("\r", "").rstrip()
return True
except:
return False
示例5: __init__
# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import createClassInstance [as 别名]
def __init__(self, neh=None):
self.number = None
self.localUri = None
self.remoteUri = None
self.CallID = None
self.remoteCSeq = None
self.remoteContact = None
self.localCSeq = None
self.localContact = None
self.RouteSet = None
self.ignoreRoute = False
self.state = Dialog.DI_ST_INIT
self.transaction = []
if neh is not None:
con = Helper.createClassInstance("Contact")
con.uri.protocol = "sip"
con.uri.username = Config.SC_USER_NAME
con.uri.host = neh.localip
con.uri.port = neh.localport
self.localContact = con
示例6: createReply
# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import createClassInstance [as 别名]
def createReply(self, code, reason, req=None, createEvent=True):
"""Creates and returns a SIP reply with the given code and reason for
the transaction instance.
"""
Log.logDebug(
"Transaction.createReply(): entered with code='"
+ str(code)
+ "', reason='"
+ str(reason)
+ "', createEvent='"
+ str(createEvent)
+ "'",
5,
)
if req is not None:
if not req in self.message:
raise SCException("Transaction", "createReply", "given request isnt in this transaction")
if not isinstance(req, SipRequest):
raise SCException("Transaction", "createReply", "message class != SipRequest")
elif self.lastRequest is not None:
req = self.lastRequest
else:
raise SCException("Transaction", "createReply", "transaction contains no request for reply creation")
reply = SipReply()
reply.code = int(code)
reply.reason = reason
reply.request = req
reply.protocol = copy.copy(req.protocol)
reply.version = copy.copy(req.version)
# copy only the mandatory HFHs
cp_hfh = Helper.get_rpl_hfh_dict(code)
if cp_hfh is None:
Log.logDebug("Transaction.createReply(): code not in reply HFH table, looking up generic code", 5)
code_generic = (code / 100) * 100
cp_hfh = Helper.get_rpl_hfh_dict(code_generic)
if cp_hfh is None:
Log.logDebug("Transaction.createReply(): unable to find generic reply in HFH table, copying all HFH", 2)
reply.headerFields = copy.copy(req.headerFields)
reply.parsedHeader = copy.deepcopy(req.parsedHeader)
else:
for i in cp_hfh:
if req.hasHeaderField(i):
reply.setHeaderValue(i, copy.copy(req.getHeaderValue(i)))
else:
Log.logDebug("Transaction.createReply(): request missing mandatory HFH: " + str(i), 2)
i_m = Helper.getMappedHFH(i)
if i_m is None:
Log.logDebug("Transaction.createReply(): unable to match HFH: " + str(i), 3)
i_m = i
if req.hasParsedHeaderField(i_m):
reply.setParsedHeaderValue(i_m, copy.deepcopy(req.getParsedHeaderValue(i_m)))
if i == "Via":
via = reply.getParsedHeaderValue("Via")
regen = False
if via.rport is not None:
via.rport = req.event.srcAddress[1]
regen = True
if via.received is not None:
via.received = req.event.srcAddress[0]
regen = True
if regen:
reply.setHeaderValue("Via", via.create())
else:
Log.logDebug("Transaction.createReply(): request missing mandatory parsed HFH: " + str(i), 2)
if code / 100 <= 2 and req.hasParsedHeaderField("Record-Route"):
rr = copy.deepcopy(req.getParsedHeaderValue("Record-Route"))
reply.setParsedHeaderValue("Record-Route", rr)
reply.setHeaderValue("Record-Route", rr.create())
if code / 100 == 2 and req.method == "INVITE":
if self.dialog is not None:
con = self.dialog.getLocalContact()
else:
con = Helper.createClassInstance("Contact")
con.uri.protocol = "sip"
con.uri.username = Config.SC_USER_NAME
con.uri.host = Config.LOCAL_IP
con.uri.port = Config.LOCAL_PORT
reply.setParsedHeaderValue("Contact", con)
reply.setHeaderValue("Contact", con.create())
reply.body = Helper.createDummyBody()
elif code / 100 == 2 and req.method == "REGISTER":
reply.body = []
if req.hasParsedHeaderField("Contact"):
reply.setParsedHeaderValue("Contact", copy.deepcopy(req.getParsedHeaderValue("Contact")))
touri = req.getParsedHeaderValue("To").uri
co = reply.getParsedHeaderValue("Contact")
cco = co
while cco is not None:
if cco.expires is None:
if req.hasParsedHeaderField("Expires"):
cco.expires = req.getParsedHeaderValue("Expires").seconds
else:
cco.expires = int(Config.DEFAULT_EXPIRES)
cco = cco.next
Helper.usrlocAddContact(touri.create(), co)
reply.setHeaderValue("Contact", co.create())
else:
if req.hasHeaderField("Contact"):
Log.logDebug("Transaction.createReply(): missing parsed Contact using raw value", 3)
reply.setHeaderValue("Contact", req.getHeaderValue("Contact"))
#.........这里部分代码省略.........