Skip to content

Commit

Permalink
added image model
Browse files Browse the repository at this point in the history
  • Loading branch information
brandonzorn committed Jul 23, 2024
1 parent dbaa4ee commit ea607d5
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 0 deletions.
1 change: 1 addition & 0 deletions nlightreader/models/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@
from .chapter_model import Chapter
from .character_model import Character
from .sort_models import Order, Kind, Genre
from .image_model import Image
28 changes: 28 additions & 0 deletions nlightreader/models/image_model.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
from types import NoneType

import validators


class Image:
def __init__(self, image_id: str, page_number: int, url: str | None):
self.id = image_id
self.page_number = page_number
self.__url = None

self.url = url

@property
def url(self):
return self.__url

@url.setter
def url(self, url: str | None):
if not isinstance(url, (str, NoneType)):
raise TypeError(f"Url must be str or None got {type(url)}")
if url is not None and not validators.url(url):
raise ValueError(f"Url {url} is not valid")
self.__url = url

@staticmethod
def get_empty_instance():
return Image("", 1, None)

0 comments on commit ea607d5

Please sign in to comment.