Skip to content

Commit c084846

Browse files
committed
shifted EnumEncoder to telemetry/utils.py
Signed-off-by: Sai Shree Pradhan <saishree.pradhan@databricks.com>
1 parent 9615519 commit c084846

File tree

3 files changed

+18
-15
lines changed

3 files changed

+18
-15
lines changed

src/databricks/sql/telemetry/models/event.py

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,7 @@
99
ExecutionResultFormat,
1010
)
1111
from typing import Optional
12-
from enum import Enum
13-
14-
15-
class EnumEncoder(json.JSONEncoder):
16-
"""
17-
Custom JSON encoder to handle Enum values.
18-
This is used to convert Enum values to their string representations.
19-
Default JSON encoder raises a TypeError for Enums.
20-
"""
21-
22-
def default(self, obj):
23-
if isinstance(obj, Enum):
24-
return obj.value
25-
return super().default(obj)
12+
from databricks.sql.telemetry.utils import EnumEncoder
2613

2714

2815
@dataclass

src/databricks/sql/telemetry/models/frontend_logs.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import json
22
from dataclasses import dataclass, asdict
3-
from databricks.sql.telemetry.models.event import TelemetryEvent, EnumEncoder
3+
from databricks.sql.telemetry.models.event import TelemetryEvent
4+
from databricks.sql.telemetry.utils import EnumEncoder
45
from typing import Optional
56

67

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import json
2+
from enum import Enum
3+
4+
5+
class EnumEncoder(json.JSONEncoder):
6+
"""
7+
Custom JSON encoder to handle Enum values.
8+
This is used to convert Enum values to their string representations.
9+
Default JSON encoder raises a TypeError for Enums.
10+
"""
11+
12+
def default(self, obj):
13+
if isinstance(obj, Enum):
14+
return obj.value
15+
return super().default(obj)

0 commit comments

Comments
 (0)