Skip to content

Commit

Permalink
feat: Add get_full_skel_from_ref_skel
Browse files Browse the repository at this point in the history
  • Loading branch information
sveneberth committed Mar 8, 2024
1 parent 508d9c9 commit deb0254
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 4 deletions.
4 changes: 3 additions & 1 deletion src/viur/toolkit/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import logging
import logging as _logging

from .checks import *
Expand All @@ -10,5 +11,6 @@
from .viur import *

# By default, the toolkit log level is INFO
_logging.getLogger(__name__).setLevel(_logging.INFO)
if not _logging.getLogger(__name__).level:
_logging.getLogger(__name__).setLevel(_logging.INFO)
del _logging
3 changes: 3 additions & 0 deletions src/viur/toolkit/db.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import logging

from viur.core import db

__all__ = [
Expand All @@ -7,6 +9,7 @@
"increaseCounter",
]

logger = logging.getLogger(__name__)

def getNewEntityForKey(key):
return db.Entity(key)
Expand Down
2 changes: 1 addition & 1 deletion src/viur/toolkit/version.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# This will mark it as a pre-release as well on PyPI.
# See CONTRIBUTING.md for further information. # TODO: tbd

__version__ = "0.1.0.dev1"
__version__ = "0.1.0.dev2"

assert __version__.count(".") >= 2 and "".join(__version__.split(".", 3)[:3]).isdigit(), \
"Semantic __version__ expected!"
21 changes: 19 additions & 2 deletions src/viur/toolkit/viur.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
import logging

from viur.core import current
from viur.core.skeleton import SkeletonInstance, skeletonByKind

from viur.core.skeleton import SkeletonInstance
__all__ = [
"change_language",
"without_render_preparation",
"get_full_skel_from_ref_skel",
]

__all__ = ["change_language", "without_render_preparation"]
logger = logging.getLogger(__name__)


def change_language(lang: str) -> None:
Expand All @@ -18,3 +25,13 @@ def without_render_preparation(skel: SkeletonInstance) -> SkeletonInstance:
skel = skel.clone()
skel.renderPreparation = None
return skel


def get_full_skel_from_ref_skel(ref_skel: SkeletonInstance) -> SkeletonInstance:
# logger.debug(f"{ref_skel = }")
# logger.debug(f"{ref_skel.skeletonCls = }")
kind_name = ref_skel.skeletonCls.__name__.removeprefix("RefSkelFor")
# logger.debug(f"{kind_name = }")
skel = skeletonByKind(kind_name)()
skel.fromDB(ref_skel["key"])
return skel

0 comments on commit deb0254

Please sign in to comment.