sift_py.data_import.time_format

 1from enum import Enum
 2from typing import Optional
 3
 4from typing_extensions import Self
 5
 6
 7class TimeFormatType(Enum):
 8    ABSOLUTE_RFC3339 = "TIME_FORMAT_ABSOLUTE_RFC3339"
 9    ABSOLUTE_DATETIME = "TIME_FORMAT_ABSOLUTE_DATETIME"
10    ABSOLUTE_UNIX_SECONDS = "TIME_FORMAT_ABSOLUTE_UNIX_SECONDS"
11    ABSOLUTE_UNIX_MILLISECONDS = "TIME_FORMAT_ABSOLUTE_UNIX_MILLISECONDS"
12    ABSOLUTE_UNIX_MICROSECONDS = "TIME_FORMAT_ABSOLUTE_UNIX_MICROSECONDS"
13    ABSOLUTE_UNIX_NANOSECONDS = "TIME_FORMAT_ABSOLUTE_UNIX_NANOSECONDS"
14    RELATIVE_NANOSECONDS = "TIME_FORMAT_RELATIVE_NANOSECONDS"
15    RELATIVE_MICROSECONDS = "TIME_FORMAT_RELATIVE_MICROSECONDS"
16    RELATIVE_MILLISECONDS = "TIME_FORMAT_RELATIVE_MILLISECONDS"
17    RELATIVE_SECONDS = "TIME_FORMAT_RELATIVE_SECONDS"
18    RELATIVE_MINUTES = "TIME_FORMAT_RELATIVE_MINUTES"
19    RELATIVE_HOURS = "TIME_FORMAT_RELATIVE_HOURS"
20
21    @classmethod
22    def from_str(cls, val: str) -> Optional[Self]:
23        try:
24            return cls(val)
25        except ValueError:
26            return None
27
28    def as_human_str(self) -> str:
29        return self.value
30
31    def is_relative(self) -> bool:
32        return self in [
33            self.RELATIVE_NANOSECONDS,
34            self.RELATIVE_MICROSECONDS,
35            self.RELATIVE_MILLISECONDS,
36            self.RELATIVE_SECONDS,
37            self.RELATIVE_MINUTES,
38            self.RELATIVE_HOURS,
39        ]
class TimeFormatType(enum.Enum):
 8class TimeFormatType(Enum):
 9    ABSOLUTE_RFC3339 = "TIME_FORMAT_ABSOLUTE_RFC3339"
10    ABSOLUTE_DATETIME = "TIME_FORMAT_ABSOLUTE_DATETIME"
11    ABSOLUTE_UNIX_SECONDS = "TIME_FORMAT_ABSOLUTE_UNIX_SECONDS"
12    ABSOLUTE_UNIX_MILLISECONDS = "TIME_FORMAT_ABSOLUTE_UNIX_MILLISECONDS"
13    ABSOLUTE_UNIX_MICROSECONDS = "TIME_FORMAT_ABSOLUTE_UNIX_MICROSECONDS"
14    ABSOLUTE_UNIX_NANOSECONDS = "TIME_FORMAT_ABSOLUTE_UNIX_NANOSECONDS"
15    RELATIVE_NANOSECONDS = "TIME_FORMAT_RELATIVE_NANOSECONDS"
16    RELATIVE_MICROSECONDS = "TIME_FORMAT_RELATIVE_MICROSECONDS"
17    RELATIVE_MILLISECONDS = "TIME_FORMAT_RELATIVE_MILLISECONDS"
18    RELATIVE_SECONDS = "TIME_FORMAT_RELATIVE_SECONDS"
19    RELATIVE_MINUTES = "TIME_FORMAT_RELATIVE_MINUTES"
20    RELATIVE_HOURS = "TIME_FORMAT_RELATIVE_HOURS"
21
22    @classmethod
23    def from_str(cls, val: str) -> Optional[Self]:
24        try:
25            return cls(val)
26        except ValueError:
27            return None
28
29    def as_human_str(self) -> str:
30        return self.value
31
32    def is_relative(self) -> bool:
33        return self in [
34            self.RELATIVE_NANOSECONDS,
35            self.RELATIVE_MICROSECONDS,
36            self.RELATIVE_MILLISECONDS,
37            self.RELATIVE_SECONDS,
38            self.RELATIVE_MINUTES,
39            self.RELATIVE_HOURS,
40        ]

An enumeration.

ABSOLUTE_RFC3339 = <TimeFormatType.ABSOLUTE_RFC3339: 'TIME_FORMAT_ABSOLUTE_RFC3339'>
ABSOLUTE_DATETIME = <TimeFormatType.ABSOLUTE_DATETIME: 'TIME_FORMAT_ABSOLUTE_DATETIME'>
ABSOLUTE_UNIX_SECONDS = <TimeFormatType.ABSOLUTE_UNIX_SECONDS: 'TIME_FORMAT_ABSOLUTE_UNIX_SECONDS'>
ABSOLUTE_UNIX_MILLISECONDS = <TimeFormatType.ABSOLUTE_UNIX_MILLISECONDS: 'TIME_FORMAT_ABSOLUTE_UNIX_MILLISECONDS'>
ABSOLUTE_UNIX_MICROSECONDS = <TimeFormatType.ABSOLUTE_UNIX_MICROSECONDS: 'TIME_FORMAT_ABSOLUTE_UNIX_MICROSECONDS'>
ABSOLUTE_UNIX_NANOSECONDS = <TimeFormatType.ABSOLUTE_UNIX_NANOSECONDS: 'TIME_FORMAT_ABSOLUTE_UNIX_NANOSECONDS'>
RELATIVE_NANOSECONDS = <TimeFormatType.RELATIVE_NANOSECONDS: 'TIME_FORMAT_RELATIVE_NANOSECONDS'>
RELATIVE_MICROSECONDS = <TimeFormatType.RELATIVE_MICROSECONDS: 'TIME_FORMAT_RELATIVE_MICROSECONDS'>
RELATIVE_MILLISECONDS = <TimeFormatType.RELATIVE_MILLISECONDS: 'TIME_FORMAT_RELATIVE_MILLISECONDS'>
RELATIVE_SECONDS = <TimeFormatType.RELATIVE_SECONDS: 'TIME_FORMAT_RELATIVE_SECONDS'>
RELATIVE_MINUTES = <TimeFormatType.RELATIVE_MINUTES: 'TIME_FORMAT_RELATIVE_MINUTES'>
RELATIVE_HOURS = <TimeFormatType.RELATIVE_HOURS: 'TIME_FORMAT_RELATIVE_HOURS'>
@classmethod
def from_str(cls, val: str) -> Union[typing_extensions.Self, NoneType]:
22    @classmethod
23    def from_str(cls, val: str) -> Optional[Self]:
24        try:
25            return cls(val)
26        except ValueError:
27            return None
def as_human_str(self) -> str:
29    def as_human_str(self) -> str:
30        return self.value
def is_relative(self) -> bool:
32    def is_relative(self) -> bool:
33        return self in [
34            self.RELATIVE_NANOSECONDS,
35            self.RELATIVE_MICROSECONDS,
36            self.RELATIVE_MILLISECONDS,
37            self.RELATIVE_SECONDS,
38            self.RELATIVE_MINUTES,
39            self.RELATIVE_HOURS,
40        ]
Inherited Members
enum.Enum
name
value