@@ -24,7 +24,7 @@ local utils = require("lime.utils")
2424
2525local shared_state = {}
2626shared_state .DATA_DIR = ' /var/shared-state/data/'
27- shared_state .PERSISTENT_DATA_DIR = ' /var /shared-state/persistent-data/'
27+ shared_state .PERSISTENT_DATA_DIR = ' /etc /shared-state/persistent-data/'
2828shared_state .ERROR_LOCK_FAILED = 165
2929shared_state .CANDIDATE_NEIGHBORS_BIN = ' /usr/bin/shared-state-get_candidates_neigh'
3030
3939function SharedStateBase :lock (maxwait )
4040 if self .locked then return end
4141 maxwait = maxwait or 10
42-
4342 fs .mkdirr (fs .dirname (self .dataFile ))
4443 self .storageFD = nixio .open (
4544 self .dataFile , nixio .open_flags (" rdwr" , " creat" ) )
@@ -287,17 +286,17 @@ function SharedState:getSyncUrl(host)
287286end
288287
289288
290- local SharedStatePersistent = {}
291- setmetatable (SharedStatePersistent , {__index = SharedStateBase })
289+ local SharedStateMultiWriter = {}
290+ setmetatable (SharedStateMultiWriter , {__index = SharedStateBase })
292291
293- function SharedStatePersistent :new (dataType , logger )
292+ function SharedStateMultiWriter :new (dataType , logger )
294293 local dataFile = shared_state .PERSISTENT_DATA_DIR .. dataType .. " .json"
295294 local newInstance = createSharedStateBase (dataType , logger , dataFile )
296- setmetatable (newInstance , {__index = SharedStatePersistent })
295+ setmetatable (newInstance , {__index = SharedStateMultiWriter })
297296 return newInstance
298297end
299298
300- function SharedStatePersistent :_merge (stateSlice )
299+ function SharedStateMultiWriter :_merge (stateSlice )
301300 -- Make merge based on timestamp
302301 local stateSlice = stateSlice or {}
303302 for key ,rv in pairs (stateSlice ) do
@@ -311,7 +310,7 @@ function SharedStatePersistent:_merge(stateSlice)
311310 end
312311end
313312
314- function SharedStatePersistent :insert (data )
313+ function SharedStateMultiWriter :insert (data )
315314 self :lock ()
316315 self :load ()
317316 for key , lv in pairs (data ) do self :_insert (key , lv ) end
@@ -320,7 +319,7 @@ function SharedStatePersistent:insert(data)
320319 self :notifyHooks ()
321320end
322321
323- function SharedStatePersistent :_insert (key , data )
322+ function SharedStateMultiWriter :_insert (key , data )
324323 local lv = self .storage [key ]
325324 if (lv == nil or not utils .deepcompare (lv .data , data )) then
326325 self .storage [key ] = {
@@ -329,13 +328,13 @@ function SharedStatePersistent:_insert(key, data)
329328 data = data
330329 }
331330 self .changed = true
332- end
331+ end
333332end
334333
335- function SharedStatePersistent :getSyncUrl (host )
336- return " http://[" .. host .. " ]/cgi-bin/shared-state-persistent /" .. self .dataType
334+ function SharedStateMultiWriter :getSyncUrl (host )
335+ return " http://[" .. host .. " ]/cgi-bin/shared-state-multiwriter /" .. self .dataType
337336end
338337
339338shared_state .SharedState = SharedState
340- shared_state .SharedStatePersistent = SharedStatePersistent
339+ shared_state .SharedStateMultiWriter = SharedStateMultiWriter
341340return shared_state
0 commit comments