diff options
author | Rasmus Luha <rasmus.luha@ut.ee> | 2025-04-06 16:46:36 +0300 |
---|---|---|
committer | Rasmus Luha <rasmus.luha@ut.ee> | 2025-04-06 16:46:36 +0300 |
commit | fc6f95665ae68c2025dd4579c6b6725d7d84a790 (patch) | |
tree | 4b03bc56978dc6f3285cc710438999eac722de2c /modules | |
parent | 31de311a17c9f83d330a499ec0b5ae5f672bbb65 (diff) |
nifi json value extraction
Diffstat (limited to 'modules')
-rw-r--r-- | modules/nifi/core.py | 35 | ||||
-rw-r--r-- | modules/nifi/templates/basic_ETL.json (renamed from modules/nifi/clean.json) | 0 |
2 files changed, 33 insertions, 2 deletions
diff --git a/modules/nifi/core.py b/modules/nifi/core.py index bdac035..6e2f2e7 100644 --- a/modules/nifi/core.py +++ b/modules/nifi/core.py @@ -3,6 +3,7 @@ from rich.console import Console from common import core as common import sys +import json def introduction(): @@ -11,7 +12,27 @@ def introduction(): console.print(ascii_art, style="cyan") print("Valisid Nifi Platformi!\n") + +## TODO +def set_processor_property(pipeline, processor_name, property_key, property_value): + for processor in pipeline['flowContents']['processors']: + if processor['name'] == processor_name: + processor['properties'][property_key] = property_value + print(f"Updated '{property_key}' in processor '{processor_name}'") + return + print(f"Processor '{processor_name}' not found.") + + + + + + + def build_pipeline(): + + chosen_json_values = [] + + ##Getting API url and json values while True: api_url = input("Palun sisesta andmete API URL: ").strip() username = "placeholder" @@ -22,8 +43,18 @@ def build_pipeline(): username=input("Sisesta kasutajanimi: ") passwd=input("Sisesta parool: ") - if common.is_app_url_correct(api_url,needs_auth,username,passwd): - break # Exit loop if URL is correct + json_data, api_url_correct = common.is_app_url_correct(api_url,needs_auth,username,passwd) + + ## TODO itemite eemaldamise v6malus + if api_url_correct: + while True: + chosen_json_values.append(common.inspect_json_top_level(json_data)) + print("Oled hetkel valinud järgmised väärtused:", chosen_json_values) + choose_another = common.ask_binary_input(prompt="\nKas soovid (v)alida veel mõne väärtuse või liikuda (e)dasi?(v/e): ",valikud=["v","e"]).strip().lower() + + if choose_another == 'e': + return chosen_json_values + else: choice = common.ask_binary_input(prompt="\nKas soovid URL-i (m)uuta URL-i või (v)äljuda?(m/v): ",valikud=["m","v"]).strip().lower() if choice == 'v': diff --git a/modules/nifi/clean.json b/modules/nifi/templates/basic_ETL.json index 457c783..457c783 100644 --- a/modules/nifi/clean.json +++ b/modules/nifi/templates/basic_ETL.json |