Skip to content
This repository was archived by the owner on Sep 12, 2024. It is now read-only.

Commit a70412a

Browse files
committed
[REVERTIBLE]: Remove node/type access validation support
1 parent e8a7947 commit a70412a

File tree

1 file changed

+33
-33
lines changed

1 file changed

+33
-33
lines changed

jaclang/core/architype.py

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -105,37 +105,37 @@ class Permission(Generic[T]):
105105

106106
all: int = -1
107107
roots: Access[T] = field(default_factory=Access[T])
108-
types: dict[type[Architype], Access[T]] = field(default_factory=dict)
109-
nodes: Access[T] = field(default_factory=Access[T])
108+
# types: dict[type[Architype], Access[T]] = field(default_factory=dict)
109+
# nodes: Access[T] = field(default_factory=Access[T])
110110

111111
def serialize(self) -> dict[str, object]:
112112
"""Serialize Permission."""
113113
return {
114114
"all": self.all,
115115
"roots": self.roots.serialize(),
116-
"types": {
117-
f"{'n' if isinstance(key, NodeArchitype) else 'e'}:{key.__name__}": value.serialize()
118-
for key, value in self.types.items()
119-
},
120-
"nodes": self.nodes.serialize(),
116+
# "types": {
117+
# f"{'n' if isinstance(key, NodeArchitype) else 'e'}:{key.__name__}": value.serialize()
118+
# for key, value in self.types.items()
119+
# },
120+
# "nodes": self.nodes.serialize(),
121121
}
122122

123123
@classmethod
124124
def deserialize(cls, data: dict[str, Any]) -> Permission:
125125
"""Deserialize Permission."""
126-
types = cast(dict[str, dict[str, Any]], data.get("types", {}))
126+
# types = cast(dict[str, dict[str, Any]], data.get("types", {}))
127127
return Permission(
128128
all=data.get("all", -1),
129129
roots=Access.deserialize(data.get("roots", {})),
130-
types={
131-
(
132-
NodeArchitype.get(key[2:])
133-
if key[0] == "n"
134-
else EdgeArchitype.get(key[2:])
135-
): Access.deserialize(value)
136-
for key, value in types.items()
137-
},
138-
nodes=Access.deserialize(data.get("nodes", {})),
130+
# types={
131+
# (
132+
# NodeArchitype.get(key[2:])
133+
# if key[0] == "n"
134+
# else EdgeArchitype.get(key[2:])
135+
# ): Access.deserialize(value)
136+
# for key, value in types.items()
137+
# },
138+
# nodes=Access.deserialize(data.get("nodes", {})),
139139
)
140140

141141

@@ -235,22 +235,22 @@ def access_level(self, to: ObjectAnchor) -> int:
235235
if (to_access := to.access).all > -1:
236236
to.current_access_level = to_access.all
237237

238-
whitelist, level = to_access.nodes.check(self.id)
239-
if not whitelist and level < 0:
240-
to.current_access_level = -1
241-
return to.current_access_level
242-
elif whitelist and level > -1:
243-
to.current_access_level = level
244-
245-
if (architype := self.architype) and (
246-
access_type := to_access.types.get(architype.__class__)
247-
):
248-
whitelist, level = access_type.check(self.id)
249-
if not whitelist and level < 0:
250-
to.current_access_level = -1
251-
return to.current_access_level
252-
elif whitelist and level > -1 and to.current_access_level == -1:
253-
to.current_access_level = level
238+
# whitelist, level = to_access.nodes.check(self.id)
239+
# if not whitelist and level < 0:
240+
# to.current_access_level = -1
241+
# return to.current_access_level
242+
# elif whitelist and level > -1:
243+
# to.current_access_level = level
244+
245+
# if (architype := self.architype) and (
246+
# access_type := to_access.types.get(architype.__class__)
247+
# ):
248+
# whitelist, level = access_type.check(self.id)
249+
# if not whitelist and level < 0:
250+
# to.current_access_level = -1
251+
# return to.current_access_level
252+
# elif whitelist and level > -1 and to.current_access_level == -1:
253+
# to.current_access_level = level
254254

255255
whitelist, level = to_access.roots.check(jroot.id)
256256
if not whitelist and level < 0:

0 commit comments

Comments
 (0)