mirror of
https://github.com/velocitatem/PHANTOM.git
synced 2026-05-31 08:33:36 +00:00
20 lines
667 B
Python
Executable File
20 lines
667 B
Python
Executable File
import os
|
|
import pandas as pd
|
|
import requests
|
|
from typing import List
|
|
from .base import DataProvider
|
|
|
|
class BackendAPIProvider(DataProvider):
|
|
"""Concrete backend API implementation"""
|
|
def __init__(self, backend_url: str = None):
|
|
self.backend_url = backend_url or os.getenv("BACKEND_URL", "http://localhost:5000")
|
|
def fetch_kafka_topic(self, topic: str) -> pd.DataFrame:
|
|
resp = requests.get(f"{self.backend_url}/api/kafka/dump?topic={topic}")
|
|
resp.raise_for_status()
|
|
data = resp.json()
|
|
|
|
if not data.get('success') or not data.get('data'):
|
|
return pd.DataFrame()
|
|
|
|
return pd.DataFrame(data['data'])
|