|
|
@@ -6,6 +6,7 @@ import nilmdb.utils |
|
|
|
import nilmdb.client.httpclient |
|
|
|
from nilmdb.client.errors import ClientError |
|
|
|
|
|
|
|
import re |
|
|
|
import time |
|
|
|
import simplejson as json |
|
|
|
import contextlib |
|
|
@@ -65,7 +66,12 @@ class Client(object): |
|
|
|
params["layout"] = layout |
|
|
|
if extended: |
|
|
|
params["extended"] = 1 |
|
|
|
return self.http.get("stream/list", params) |
|
|
|
def sort_streams_nicely(x): |
|
|
|
"""Human-friendly sort (/stream/2 before /stream/10)""" |
|
|
|
num = lambda t: int(t) if t.isdigit() else t |
|
|
|
key = lambda k: [ num(c) for c in re.split('([0-9]+)', k[0]) ] |
|
|
|
return sorted(x, key = key) |
|
|
|
return sort_streams_nicely(self.http.get("stream/list", params)) |
|
|
|
|
|
|
|
def stream_get_metadata(self, path, keys = None): |
|
|
|
params = { "path": path } |
|
|
|