summaryrefslogtreecommitdiff
path: root/meta/model/java.py
diff options
context:
space:
mode:
authorRachel Powers <508861+Ryex@users.noreply.github.com>2023-05-11 02:10:12 -0700
committerRachel Powers <508861+Ryex@users.noreply.github.com>2023-06-16 21:15:37 -0700
commit1b8d9d408c71453ccd5afc130f7b1da8df254dbc (patch)
tree71966cc98e160ef7023e8e3d4224ccefc4128150 /meta/model/java.py
parent030c5e70de38dc40994d14707018ec46700787e7 (diff)
downloadProject-Tick-1b8d9d408c71453ccd5afc130f7b1da8df254dbc.tar.gz
Project-Tick-1b8d9d408c71453ccd5afc130f7b1da8df254dbc.zip
fix: ensure there is a recomended version
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
Diffstat (limited to 'meta/model/java.py')
-rw-r--r--meta/model/java.py20
1 files changed, 17 insertions, 3 deletions
diff --git a/meta/model/java.py b/meta/model/java.py
index a7907d90d2..ca45085ea3 100644
--- a/meta/model/java.py
+++ b/meta/model/java.py
@@ -8,7 +8,7 @@ from .enum import StrEnum
from typing import Optional, List, Dict, Any, Iterator, Iterable, NamedTuple
from collections import namedtuple
from urllib.parse import urljoin, urlencode, urlparse, urlunparse
-
+from functools import total_ordering
# namedtuple to match the internal signature of urlunparse
@@ -32,18 +32,31 @@ class JavaRuntimeDownloadType(StrEnum):
Manifest = "manifest"
Archive = "archive"
-
+@total_ordering
class JavaVersionMeta(MetaBase):
major: int
minor: int
security: int
- build: Optional[int]
+ build: Optional[int] = None
+ name: Optional[str] = None
def __str__(self):
ver = f"{self.major}.{self.minor}.{self.security}"
if self.build is not None:
ver = f"{ver}+{self.build}"
return ver
+
+ def to_tuple(self):
+ build = 0
+ if self.build is not None:
+ build = self.build
+ return (self.major, self.minor, self.security, build)
+
+ def __eq__(self, other: 'JavaVersionMeta'):
+ return (self.to_tuple() == other.to_tuple())
+
+ def __lt__(self, other: 'JavaVersionMeta'):
+ return (self.to_tuple() < other.to_tuple())
class JavaChecksumType(StrEnum):
@@ -64,6 +77,7 @@ class JavaRuntimeMeta(MetaBase):
checksum: Optional[JavaChecksumMeta]
recomended: bool
download_type: JavaRuntimeDownloadType = Field(alias="downloadType")
+ version: JavaVersionMeta
class JavaRuntimeMap(MetaBase):