Support for task expiry.

This commit is contained in:
Zaid Abdulla committed 2013-10-28 11:58:36 +03:00
1 parent 823eb162ad
commit fd378d138a
3 files changed
+8 -4

No files matched your search

+2 -4
View File
@@ -193,10 +193,7 @@ runTask = (currentRequest, task, methodResponse) ->
isTaskExpired = (task) ->
now = Date.now()
if task.expires and (now - task.timestamp.getTime()) > config.DEVICE_ONLINE_THRESHOLD
return true
return false
task.expiry <= new Date()
assertPresets = (currentRequest) ->
@@ -265,6 +262,7 @@ nextTask = (currentRequest) ->
res = tr069.response(null, cwmpResponse)
writeResponse(currentRequest, res)
else if isTaskExpired(task)
util.log("#{currentRequest.deviceId}: Task is expired #{task.name}(#{task._id})")
db.tasksCollection.remove({'_id' : mongodb.ObjectID(String(task._id))}, {safe: true}, (err, removed) ->
throw new Error(err) if err?
nextTask(currentRequest)
+5
View File
@@ -85,6 +85,11 @@ expandParam = (param) ->
sanitizeTask = (task, callback) ->
task.timestamp = new Date(task.timestamp ? Date.now())
if task.expiry?
if common.typeOf(task.expiry) is common.DATE_TYPE or isNaN(task.expiry)
task.expiry = new Date(task.expiry)
else
task.expiry = new Date(task.timestamp.getTime() + +task.expiry * 1000)
switch task.name
when 'getParameterValues'
+1
View File
@@ -6,6 +6,7 @@ STRING_TYPE = '[object String]'
ARRAY_TYPE = '[object Array]'
OBJECT_TYPE = '[object Object]'
REGEXP_TYPE = '[object RegExp]'
DATE_TYPE = '[object Date]'
typeOf = (obj) ->