Skip to content

Commit ea607d5

Browse files
committed
added image model
1 parent dbaa4ee commit ea607d5

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

nlightreader/models/__init__.py

+1
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@
22
from .chapter_model import Chapter
33
from .character_model import Character
44
from .sort_models import Order, Kind, Genre
5+
from .image_model import Image

nlightreader/models/image_model.py

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
from types import NoneType
2+
3+
import validators
4+
5+
6+
class Image:
7+
def __init__(self, image_id: str, page_number: int, url: str | None):
8+
self.id = image_id
9+
self.page_number = page_number
10+
self.__url = None
11+
12+
self.url = url
13+
14+
@property
15+
def url(self):
16+
return self.__url
17+
18+
@url.setter
19+
def url(self, url: str | None):
20+
if not isinstance(url, (str, NoneType)):
21+
raise TypeError(f"Url must be str or None got {type(url)}")
22+
if url is not None and not validators.url(url):
23+
raise ValueError(f"Url {url} is not valid")
24+
self.__url = url
25+
26+
@staticmethod
27+
def get_empty_instance():
28+
return Image("", 1, None)

0 commit comments

Comments
 (0)