|
@@ -8,7 +8,13 @@ from hyde.fs import FS, File, Folder |
|
|
from hyde.model import Config |
|
|
from hyde.model import Config |
|
|
|
|
|
|
|
|
from hyde.util import getLoggerWithNullHandler |
|
|
from hyde.util import getLoggerWithNullHandler |
|
|
|
|
|
from functools import wraps |
|
|
|
|
|
|
|
|
|
|
|
def path_normalized(f): |
|
|
|
|
|
@wraps(f) |
|
|
|
|
|
def wrapper(self, path): |
|
|
|
|
|
return f(self, str(path).replace('/', os.sep)) |
|
|
|
|
|
return wrapper |
|
|
|
|
|
|
|
|
logger = getLoggerWithNullHandler('hyde.engine') |
|
|
logger = getLoggerWithNullHandler('hyde.engine') |
|
|
|
|
|
|
|
@@ -210,6 +216,7 @@ class RootNode(Node): |
|
|
self.resource_map = {} |
|
|
self.resource_map = {} |
|
|
self.resource_deploy_map = {} |
|
|
self.resource_deploy_map = {} |
|
|
|
|
|
|
|
|
|
|
|
@path_normalized |
|
|
def node_from_path(self, path): |
|
|
def node_from_path(self, path): |
|
|
""" |
|
|
""" |
|
|
Gets the node that maps to the given path. |
|
|
Gets the node that maps to the given path. |
|
@@ -219,6 +226,7 @@ class RootNode(Node): |
|
|
return self |
|
|
return self |
|
|
return self.node_map.get(str(Folder(path)), None) |
|
|
return self.node_map.get(str(Folder(path)), None) |
|
|
|
|
|
|
|
|
|
|
|
@path_normalized |
|
|
def node_from_relative_path(self, relative_path): |
|
|
def node_from_relative_path(self, relative_path): |
|
|
""" |
|
|
""" |
|
|
Gets the content node that maps to the given relative path. |
|
|
Gets the content node that maps to the given relative path. |
|
@@ -227,6 +235,7 @@ class RootNode(Node): |
|
|
return self.node_from_path( |
|
|
return self.node_from_path( |
|
|
self.source_folder.child(str(relative_path))) |
|
|
self.source_folder.child(str(relative_path))) |
|
|
|
|
|
|
|
|
|
|
|
@path_normalized |
|
|
def resource_from_path(self, path): |
|
|
def resource_from_path(self, path): |
|
|
""" |
|
|
""" |
|
|
Gets the resource that maps to the given path. |
|
|
Gets the resource that maps to the given path. |
|
@@ -234,6 +243,7 @@ class RootNode(Node): |
|
|
""" |
|
|
""" |
|
|
return self.resource_map.get(str(File(path)), None) |
|
|
return self.resource_map.get(str(File(path)), None) |
|
|
|
|
|
|
|
|
|
|
|
@path_normalized |
|
|
def resource_from_relative_path(self, relative_path): |
|
|
def resource_from_relative_path(self, relative_path): |
|
|
""" |
|
|
""" |
|
|
Gets the content resource that maps to the given relative path. |
|
|
Gets the content resource that maps to the given relative path. |
|
@@ -249,6 +259,7 @@ class RootNode(Node): |
|
|
""" |
|
|
""" |
|
|
self.resource_deploy_map[str(resource.relative_deploy_path)] = resource |
|
|
self.resource_deploy_map[str(resource.relative_deploy_path)] = resource |
|
|
|
|
|
|
|
|
|
|
|
@path_normalized |
|
|
def resource_from_relative_deploy_path(self, relative_deploy_path): |
|
|
def resource_from_relative_deploy_path(self, relative_deploy_path): |
|
|
""" |
|
|
""" |
|
|
Gets the content resource whose deploy path maps to |
|
|
Gets the content resource whose deploy path maps to |
|
|