Creates Project object. Args: name: The unique name of the project. description (optional): A human-readable description. tags (optional): A dictionary of key-value pairs to store arbitrary metadata. owner (optional): The owner of the
(
self,
*,
name: str,
description: str = "",
tags: Optional[Dict[str, str]] = None,
owner: str = "",
created_timestamp: Optional[datetime] = None,
last_updated_timestamp: Optional[datetime] = None,
)
| 46 | last_updated_timestamp: datetime |
| 47 | |
| 48 | def __init__( |
| 49 | self, |
| 50 | *, |
| 51 | name: str, |
| 52 | description: str = "", |
| 53 | tags: Optional[Dict[str, str]] = None, |
| 54 | owner: str = "", |
| 55 | created_timestamp: Optional[datetime] = None, |
| 56 | last_updated_timestamp: Optional[datetime] = None, |
| 57 | ): |
| 58 | """ |
| 59 | Creates Project object. |
| 60 | |
| 61 | Args: |
| 62 | name: The unique name of the project. |
| 63 | description (optional): A human-readable description. |
| 64 | tags (optional): A dictionary of key-value pairs to store arbitrary metadata. |
| 65 | owner (optional): The owner of the project, typically the email of the primary maintainer. |
| 66 | created_timestamp (optional): The time when the project was created. Defaults to |
| 67 | last_updated_timestamp (optional): The time when the project was last updated. |
| 68 | |
| 69 | Raises: |
| 70 | ValueError: Parameters are specified incorrectly. |
| 71 | """ |
| 72 | self.name = name |
| 73 | self.description = description |
| 74 | self.tags = tags if tags is not None else {} |
| 75 | self.owner = owner |
| 76 | updated_time = _utc_now() |
| 77 | self.created_timestamp = created_timestamp or updated_time |
| 78 | self.last_updated_timestamp = last_updated_timestamp or updated_time |
| 79 | |
| 80 | def __hash__(self) -> int: |
| 81 | return hash((self.name)) |
nothing calls this directly
no test coverage detected