0.2.1 Updated to include keyword arguments in run() method. /JL

This commit is contained in:
Jan Lerking
2025-03-27 10:46:05 +01:00
parent 34ba757bc6
commit dd5904c273
4 changed files with 16 additions and 7 deletions

View File

@@ -16,7 +16,7 @@ if __name__ == "__main__":
"""
system = XtendRSystem()
system.attach("example_plugin") # Assuming 'example_plugin/plugin_info.json' exists
system.run("example_plugin", "Hello!")
system.run("example_plugin", test="Hello!")
system.stop("example_plugin")
system.run("example_plugin", 25)
system.stop("example_plugin")

View File

@@ -13,10 +13,19 @@ class ExamplePlugin(XtendRBase):
>>> plugin.stop()
ExamplePlugin has stopped!
"""
def run(self, *args):
print(f"Passed arguments {len(args)}:")
for idx, a in enumerate(args):
print(f"Argument {idx}: {a}")
def run(self, *args, **kwargs):
arglen = len(args)
keylen = len(kwargs)
if arglen > 0:
print(f"Passed arguments {arglen}:")
for idx, a in enumerate(args):
print(f"Argument {idx}: {a}")
if keylen > 0:
print(f"Keyword arguments passed {keylen}")
if not "test" in kwargs:
raise ValueError("Didn't get expected 'test' keyword!")
for kw in kwargs:
print(f"Argument {kw}: {kwargs[kw]}")
print("ExamplePlugin is running!")

View File

@@ -3,7 +3,7 @@ if __name__ == "__main__":
setup(
name="XtendR",
version="0.2.0",
version="0.2.1",
packages=find_packages(),
install_requires=[],
author="Jan Lerking",

View File

@@ -17,7 +17,7 @@ class XtendRBase(ABC):
Stopping TestPlugin
"""
@abstractmethod
def run(self, *args):
def run(self, *args, **kwargs):
pass
@abstractmethod