Move site deletion to dedicted function
This commit is contained in:
parent
cb20280530
commit
59205088d2
3 changed files with 14 additions and 12 deletions
|
@ -49,12 +49,13 @@ class Site(object):
|
||||||
self.content_updated = None # Content.js update time
|
self.content_updated = None # Content.js update time
|
||||||
self.notifications = [] # Pending notifications displayed once on page load [error|ok|info, message, timeout]
|
self.notifications = [] # Pending notifications displayed once on page load [error|ok|info, message, timeout]
|
||||||
self.page_requested = False # Page viewed in browser
|
self.page_requested = False # Page viewed in browser
|
||||||
|
self.websockets = [] # Active site websocket connections
|
||||||
|
|
||||||
|
self.connection_server = None
|
||||||
self.storage = SiteStorage(self, allow_create=allow_create) # Save and load site files
|
self.storage = SiteStorage(self, allow_create=allow_create) # Save and load site files
|
||||||
self.loadSettings(settings) # Load settings from sites.json
|
self.loadSettings(settings) # Load settings from sites.json
|
||||||
self.content_manager = ContentManager(self)
|
self.content_manager = ContentManager(self)
|
||||||
self.content_manager.loadContents() # Load content.json files
|
self.content_manager.loadContents() # Load content.json files
|
||||||
self.connection_server = None
|
|
||||||
if "main" in sys.modules and "file_server" in dir(sys.modules["main"]): # Use global file server by default if possible
|
if "main" in sys.modules and "file_server" in dir(sys.modules["main"]): # Use global file server by default if possible
|
||||||
self.connection_server = sys.modules["main"].file_server
|
self.connection_server = sys.modules["main"].file_server
|
||||||
else:
|
else:
|
||||||
|
@ -67,7 +68,6 @@ class Site(object):
|
||||||
self.settings["wrapper_key"] = CryptHash.random()
|
self.settings["wrapper_key"] = CryptHash.random()
|
||||||
self.log.debug("New wrapper key: %s" % self.settings["wrapper_key"])
|
self.log.debug("New wrapper key: %s" % self.settings["wrapper_key"])
|
||||||
|
|
||||||
self.websockets = [] # Active site websocket connections
|
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return "Site %s" % self.address_short
|
return "Site %s" % self.address_short
|
||||||
|
@ -924,6 +924,16 @@ class Site(object):
|
||||||
self.log.debug("Queried hashfield from %s peers" % queried)
|
self.log.debug("Queried hashfield from %s peers" % queried)
|
||||||
return queried
|
return queried
|
||||||
|
|
||||||
|
def delete(self):
|
||||||
|
self.settings["serving"] = False
|
||||||
|
self.saveSettings()
|
||||||
|
self.worker_manager.running = False
|
||||||
|
self.worker_manager.stopWorkers()
|
||||||
|
self.storage.deleteFiles()
|
||||||
|
self.updateWebsocket()
|
||||||
|
self.content_manager.contents.db.deleteSite(self.site.address)
|
||||||
|
SiteManager.site_manager.delete(address)
|
||||||
|
|
||||||
# - Events -
|
# - Events -
|
||||||
|
|
||||||
# Add event listeners
|
# Add event listeners
|
||||||
|
|
|
@ -296,6 +296,7 @@ class SiteStorage(object):
|
||||||
i = 0
|
i = 0
|
||||||
|
|
||||||
if not self.site.content_manager.contents.get("content.json"): # No content.json, download it first
|
if not self.site.content_manager.contents.get("content.json"): # No content.json, download it first
|
||||||
|
self.log.debug("VerifyFile content.json not exists")
|
||||||
self.site.needFile("content.json", update=True) # Force update to fix corrupt file
|
self.site.needFile("content.json", update=True) # Force update to fix corrupt file
|
||||||
self.site.content_manager.loadContent() # Reload content.json
|
self.site.content_manager.loadContent() # Reload content.json
|
||||||
for content_inner_path, content in self.site.content_manager.contents.items():
|
for content_inner_path, content in self.site.content_manager.contents.items():
|
||||||
|
@ -405,9 +406,6 @@ class SiteStorage(object):
|
||||||
except Exception, err:
|
except Exception, err:
|
||||||
self.log.error("Db file delete error: %s" % err)
|
self.log.error("Db file delete error: %s" % err)
|
||||||
|
|
||||||
# Delete from content.db
|
|
||||||
self.site.content_manager.contents.db.deleteSite(self.site.address)
|
|
||||||
|
|
||||||
for inner_path in files:
|
for inner_path in files:
|
||||||
path = self.getPath(inner_path)
|
path = self.getPath(inner_path)
|
||||||
if os.path.isfile(path):
|
if os.path.isfile(path):
|
||||||
|
|
|
@ -665,13 +665,7 @@ class UiWebsocket(object):
|
||||||
def actionSiteDelete(self, to, address):
|
def actionSiteDelete(self, to, address):
|
||||||
site = self.server.sites.get(address)
|
site = self.server.sites.get(address)
|
||||||
if site:
|
if site:
|
||||||
site.settings["serving"] = False
|
site.delete()
|
||||||
site.saveSettings()
|
|
||||||
site.worker_manager.running = False
|
|
||||||
site.worker_manager.stopWorkers()
|
|
||||||
site.storage.deleteFiles()
|
|
||||||
site.updateWebsocket()
|
|
||||||
SiteManager.site_manager.delete(address)
|
|
||||||
self.user.deleteSiteData(address)
|
self.user.deleteSiteData(address)
|
||||||
self.response(to, "Deleted")
|
self.response(to, "Deleted")
|
||||||
import gc
|
import gc
|
||||||
|
|
Loading…
Reference in a new issue