Skip to content

Commit 0c791cb

Browse files
committed
Missing file.
1 parent 11f73f8 commit 0c791cb

File tree

1 file changed

+50
-0
lines changed

1 file changed

+50
-0
lines changed

src/cryptojwt/serialize/item.py

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
from cryptojwt import jwk
2+
from cryptojwt.jwk.jwk import key_from_jwk_dict
3+
from cryptojwt import key_bundle
4+
from cryptojwt import key_issuer
5+
6+
7+
class JWK:
8+
@staticmethod
9+
def serialize(key: jwk.JWK) -> dict:
10+
_dict = key.serialize()
11+
inactive = key.inactive_since
12+
if inactive:
13+
_dict['inactive_since'] = inactive
14+
return _dict
15+
16+
@staticmethod
17+
def deserialize(jwk: dict) -> jwk.JWK:
18+
k = key_from_jwk_dict(jwk)
19+
inactive = jwk.get("inactive_since", 0)
20+
if inactive:
21+
k.inactive_since = inactive
22+
return k
23+
24+
25+
class KeyBundle:
26+
def __init__(self, storage_conf=None):
27+
self.storage_conf = storage_conf
28+
29+
@staticmethod
30+
def serialize(item: key_bundle.KeyBundle) -> dict:
31+
_dict = item.dump()
32+
return _dict
33+
34+
def deserialize(self, spec: dict) -> key_bundle.KeyBundle:
35+
bundle = key_bundle.KeyBundle(storage_conf=self.storage_conf).load(spec)
36+
return bundle
37+
38+
39+
class KeyIssuer:
40+
def __init__(self, storage_conf=None):
41+
self.storage_conf = storage_conf
42+
43+
@staticmethod
44+
def serialize(item: key_issuer.KeyIssuer) -> dict:
45+
_dict = item.dump()
46+
return _dict
47+
48+
def deserialize(self, spec: dict) -> key_issuer.KeyIssuer:
49+
issuer = key_issuer.KeyIssuer(storage_conf=self.storage_conf).load(spec)
50+
return issuer

0 commit comments

Comments
 (0)