pluGET/src/handlers/handle_input.py
Neocky ac561d92ce Split everything in sub packages; Created main function; Added many exception handlers for SFTP
Added:
- Split everything into sub packages
- created a main file: __main__.py
- added many exception handlings with SFTP

Edited:
- launcher.bat calls now the __main__.py file
2021-03-12 01:39:39 +01:00

91 lines
2.8 KiB
Python

import sys
import time
from utils.consoleoutput import oColors
from utils.utilities import getHelp
from handlers.handle_config import checkConfig
from plugin.plugin_downloader import searchPackage, getSpecificPackage
from plugin.plugin_updatechecker import updateInstalledPackage, checkInstalledPackage
from plugin.plugin_remover import removePlugin
def createInputLists():
global COMMANDLIST
COMMANDLIST = [
'get',
'update',
'check',
'exit',
'help',
'remove'
]
global INPUTSELECTEDOBJECT
INPUTSELECTEDOBJECT = [
'all',
'*'
]
def handleInput(inputCommand, inputSelectedObject, inputParams):
while True:
if inputCommand == 'get':
if inputSelectedObject.isdigit():
if not checkConfig().localPluginFolder:
getSpecificPackage(inputSelectedObject, checkConfig().sftp_folderPath, inputParams)
break
else:
getSpecificPackage(inputSelectedObject, checkConfig().pathToPluginFolder, inputParams)
break
else:
searchPackage(inputSelectedObject)
break
if inputCommand == 'update':
updateInstalledPackage(inputSelectedObject)
break
if inputCommand == 'check':
checkInstalledPackage(inputSelectedObject)
break
if inputCommand == 'exit':
sys.exit()
if inputCommand == 'help':
getHelp()
break
if inputCommand == 'remove':
removePlugin(inputSelectedObject)
break
else:
print(oColors.brightRed + "Command not found. Please try again." + oColors.standardWhite)
getInput()
getInput()
def getInput():
while True:
try:
inputCommand, inputSelectedObject, *inputParams = input("pluGET >> ").split()
break
except ValueError:
print(oColors.brightRed + "Wrong input! Use: > *command* *selectedObject* *optionalParams*" + oColors.standardWhite)
inputParams = inputParams[0] if inputParams else None
print(inputCommand)
print(inputSelectedObject)
print(inputParams)
handleInput(inputCommand, inputSelectedObject, inputParams)
# only for testing purposes
def outputTest():
print("Hello world")
print("Waiting still seconds: 5", end='\r')
time.sleep(1)
print("Waiting still seconds: 4", end='\r')
time.sleep(1)
print("Waiting still seconds: 3", end='\r')
time.sleep(1)
print("Waiting still seconds: 2", end='\r')
time.sleep(1)
print("Waiting still seconds: 1", end='\r')
time.sleep(1)
print("Done ✅☑✔ ")
input("Press key to end program...")