meta = ref [] # s = some source # Update current metadata # converted in UTF8 def update_meta(m) = m = metadata.export(m) recode = string.recode(out_enc="UTF-8") def f(x) = (recode(fst(x)),recode(snd(x))) end meta := list.map(f,m) end # Apply update_metadata # every time we see a new # metadata s = on_metadata(update_meta,s) # Return the json content # of meta def get_meta(~method,~protocol,~data,~headers,uri) = m = !meta http_response( protocol=protocol, code=200, headers=[("Content-Type","application/json; charset=utf-8")], data=json_of(m) ) end # Register get_meta at port 700 harbor.http.register(port=7000,"/getmeta",get_meta)