Code Duplication    Length = 24-28 lines in 2 locations

wechatpy/replies.py 1 location

@@ 315-342 (lines=28) @@
312
    hardware = HardwareField('HardWare')
313
314
315
def create_reply(reply, message=None, render=False):
316
    """
317
    Create a reply quickly
318
    """
319
    r = None
320
    if not reply:
321
        r = EmptyReply()
322
    elif isinstance(reply, BaseReply):
323
        r = reply
324
        if message:
325
            r.source = message.target
326
            r.target = message.source
327
    elif isinstance(reply, six.string_types):
328
        r = TextReply(
329
            message=message,
330
            content=reply
331
        )
332
    elif isinstance(reply, (tuple, list)):
333
        if len(reply) > 10:
334
            raise AttributeError("Can't add more than 10 articles"
335
                                 " in an ArticlesReply")
336
        r = ArticlesReply(
337
            message=message,
338
            articles=reply
339
        )
340
    if r and render:
341
        return r.render()
342
    return r
343
344
345
def deserialize_reply(xml, update_time=False):

wechatpy/enterprise/replies.py 1 location

@@ 45-68 (lines=24) @@
42
    agent = IntegerField('AgentID', 0)
43
44
45
def create_reply(reply, message=None, render=False):
46
    r = None
47
    if isinstance(reply, replies.BaseReply):
48
        r = reply
49
        if message:
50
            r.source = message.target
51
            r.target = message.source
52
            r.agent = message.agent
53
    elif isinstance(reply, six.string_types):
54
        r = TextReply(
55
            message=message,
56
            content=reply
57
        )
58
    elif isinstance(reply, (tuple, list)):
59
        if len(reply) > 10:
60
            raise AttributeError("Can't add more than 10 articles"
61
                                 " in an ArticlesReply")
62
        r = ArticlesReply(
63
            message=message,
64
            articles=reply
65
        )
66
    if r and render:
67
        return r.render()
68
    return r
69