From a53fa50f80766576ba14437b20feb86a1004ca06 Mon Sep 17 00:00:00 2001 From: Bart Van Der Meerssche Date: Sun, 14 Mar 2010 14:12:35 +0000 Subject: [PATCH] api: use pattern matching in to_json arguments --- web/api/flukso/src/flukso_resource.erl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/web/api/flukso/src/flukso_resource.erl b/web/api/flukso/src/flukso_resource.erl index afe75b1..f4d5554 100644 --- a/web/api/flukso/src/flukso_resource.erl +++ b/web/api/flukso/src/flukso_resource.erl @@ -34,16 +34,16 @@ malformed_request(ReqData, _) -> content_types_provided(ReqData, State) -> {[{"application/json", to_json}], ReqData, State}. -to_json(ReqData, State) -> +to_json(ReqData, #state{rrdSensor = RrdSensor, rrdTime = RrdTime, rrdFactor = RrdFactor} = State) -> case wrq:path_info(interval, ReqData) of "night" -> Path = "var/data/night/"; _Interval -> Path = "var/data/base/" end, - case erlrrd:fetch(erlrrd:c([[Path, [State#state.rrdSensor|".rrd"]], "AVERAGE", ["-s",State#state.rrdTime]])) of + case erlrrd:fetch(erlrrd:c([[Path, [RrdSensor|".rrd"]], "AVERAGE", ["-s",RrdTime]])) of {ok, Response} -> Filtered = [re:split(X, "[:][ ]", [{return,list}]) || [X] <- Response, string:str(X, ":") == 11], - Datapoints = [[list_to_integer(X), round(list_to_float(Y) * State#state.rrdFactor)] || [X, Y] <- Filtered, string:len(Y) /= 3], + Datapoints = [[list_to_integer(X), round(list_to_float(Y) * RrdFactor)] || [X, Y] <- Filtered, string:len(Y) /= 3], Nans = [[list_to_integer(X), list_to_binary(Y)] || [X, Y] <- Filtered, string:len(Y) == 3], Final = lists:merge(Datapoints, Nans), {mochijson2:encode(Final), ReqData, State};