Skip to content
Snippets Groups Projects
Commit d70e38bc authored by Sebastian Böckelmann's avatar Sebastian Böckelmann
Browse files

WIP: Middleware Api Object Generator

parent aaee13b4
No related branches found
No related tags found
No related merge requests found
import json
from net_api_generator.middleware_generator.MiddlewareLoader import MiddlewareLoader as Loader
from net_api_generator.middleware_generator.MiddlewareModel import FunctionParameterEnumType, \
FunctionParameterArrayType, FunctionParameterSimpleType, FunctionParameterComposedType
def typescript(open_api_file):
loader = Loader(open_api_file)
loader.load()
\ No newline at end of file
loader.load()
api_objects = loader.api_objects
for api_object in api_objects:
api_object_code = ("export class ${API_OBJECT_NAME}\n"
"\t${API_ATTRIBUTE}\n"
"\tconstructor(${CONSTRUCTOR_PARAMETER}) {\n"
"\t\t${ATTRIBUTE_ASSIGNMENT}\n"
"\t}"
"}")
api_object_code = api_object_code.replace("${API_OBJECT_NAME}", api_object.name)
for parameter in api_object.parameters.values():
parameter_name = parameter.title
parameter_type = parameter.data_type
if isinstance(parameter_type, FunctionParameterEnumType):
print(parameter_name + " " + parameter_type.data_type)
elif isinstance(parameter_type, FunctionParameterArrayType):
print(parameter_name + " " + parameter_type.item_type.title)
elif isinstance(parameter_type, FunctionParameterSimpleType):
#todo: abstract method to resolve datatype name for referencing recursive data_type uses
print(parameter_name + " " + parameter_type.title)
elif isinstance(parameter_type, FunctionParameterComposedType):
print(parameter_name + " " + parameter_type.title)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment