mirror of
https://github.com/philippemerle/KubeDiagrams.git
synced 2026-05-06 09:06:33 +00:00
45 lines
1.3 KiB
Python
45 lines
1.3 KiB
Python
"""Service Data Model"""
|
|
from typing import Optional
|
|
|
|
class DiagramResult:
|
|
"""Data model for the diagram result."""
|
|
def __init__(
|
|
self,
|
|
success: bool,
|
|
diagram: Optional[str] = None,
|
|
mime_type: Optional[str] = None,
|
|
filename: Optional[str] = None,
|
|
message: Optional[str] = None,
|
|
error: Optional[str] = None,
|
|
command: Optional[str] = None,
|
|
stdout: Optional[str] = None,
|
|
stderr: Optional[str] = None
|
|
):
|
|
self.success = success
|
|
self.diagram = diagram
|
|
self.mime_type = mime_type
|
|
self.filename = filename
|
|
self.message = message
|
|
self.error = error
|
|
self.command = command
|
|
self.stdout = stdout
|
|
self.stderr = stderr
|
|
|
|
def to_dict(self) -> dict:
|
|
"""Converts the DiagramResult to a dictionary."""
|
|
result = {
|
|
"command": self.command,
|
|
"stdout": self.stdout or "",
|
|
"stderr": self.stderr or ""
|
|
}
|
|
if self.success:
|
|
result.update({
|
|
"diagram": self.diagram,
|
|
"mimeType": self.mime_type,
|
|
"filename": self.filename,
|
|
"message": self.message
|
|
})
|
|
else:
|
|
result["error"] = self.error
|
|
return result
|