Software /
code /
prosody
Annotate
util/jid.lua @ 29:b847875801e5
jid.split(): Return nil when passed nil
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 30 Sep 2008 19:49:36 +0100 |
parent | 27:859b316e2fb0 |
child | 104:cfbd3b849f9e |
rev | line source |
---|---|
0 | 1 |
2 local match = string.match; | |
3 | |
4 module "jid" | |
5 | |
6 function split(jid) | |
29
b847875801e5
jid.split(): Return nil when passed nil
Matthew Wild <mwild1@gmail.com>
parents:
27
diff
changeset
|
7 if not jid then return nil; end |
27
859b316e2fb0
Fixing jid.split() for all JIDs
Matthew Wild <mwild1@gmail.com>
parents:
0
diff
changeset
|
8 local node = match(jid, "^([^@]+)@"); |
859b316e2fb0
Fixing jid.split() for all JIDs
Matthew Wild <mwild1@gmail.com>
parents:
0
diff
changeset
|
9 local server = (node and match(jid, ".-@([^@/]+)")) or match(jid, "^([^@/]+)"); |
859b316e2fb0
Fixing jid.split() for all JIDs
Matthew Wild <mwild1@gmail.com>
parents:
0
diff
changeset
|
10 local resource = match(jid, "/(.+)$"); |
859b316e2fb0
Fixing jid.split() for all JIDs
Matthew Wild <mwild1@gmail.com>
parents:
0
diff
changeset
|
11 return node, server, resource; |
0 | 12 end |