Refactor codegen

This commit is contained in:
Ankit Mahato
2024-03-12 05:19:03 +05:30
parent fc7a051285
commit cb8bfebecd
19 changed files with 759 additions and 352 deletions

View File

@ -18,64 +18,40 @@ class Codegen {
String defaultUriScheme, {
String? boundary,
}) {
String url = requestModel.url;
if (url.isEmpty) {
url = kDefaultUri;
}
if (!url.contains("://") && url.isNotEmpty) {
url = "$defaultUriScheme://$url";
}
var rM = requestModel.copyWith(url: url);
switch (codegenLanguage) {
case CodegenLanguage.curl:
return cURLCodeGen().getCode(
requestModel,
defaultUriScheme,
);
return cURLCodeGen().getCode(rM);
case CodegenLanguage.har:
return HARCodeGen().getCode(
requestModel,
defaultUriScheme,
);
return HARCodeGen().getCode(rM, defaultUriScheme, boundary: boundary);
case CodegenLanguage.dartHttp:
return DartHttpCodeGen().getCode(
requestModel,
defaultUriScheme,
);
return DartHttpCodeGen().getCode(rM);
case CodegenLanguage.dartDio:
return DartDioCodeGen().getCode(
requestModel,
defaultUriScheme,
);
return DartDioCodeGen().getCode(rM);
case CodegenLanguage.jsAxios:
return AxiosCodeGen().getCode(
requestModel,
defaultUriScheme,
);
return AxiosCodeGen().getCode(rM);
case CodegenLanguage.jsFetch:
return FetchCodeGen().getCode(
requestModel,
defaultUriScheme,
);
return FetchCodeGen().getCode(rM);
case CodegenLanguage.nodejsAxios:
return AxiosCodeGen(isNodeJs: true).getCode(
requestModel,
defaultUriScheme,
);
return AxiosCodeGen(isNodeJs: true).getCode(rM);
case CodegenLanguage.nodejsFetch:
return FetchCodeGen(isNodeJs: true).getCode(
requestModel,
defaultUriScheme,
);
return FetchCodeGen(isNodeJs: true).getCode(rM);
case CodegenLanguage.kotlinOkHttp:
return KotlinOkHttpCodeGen().getCode(
requestModel,
defaultUriScheme,
);
return KotlinOkHttpCodeGen().getCode(rM);
case CodegenLanguage.pythonHttpClient:
return PythonHttpClientCodeGen().getCode(
requestModel,
defaultUriScheme,
boundary: boundary ?? getNewUuid(),
);
return PythonHttpClientCodeGen()
.getCode(rM, boundary: boundary ?? getNewUuid());
case CodegenLanguage.pythonRequests:
return PythonRequestsCodeGen().getCode(
requestModel,
defaultUriScheme,
boundary: boundary,
);
return PythonRequestsCodeGen().getCode(rM, boundary: boundary);
}
}
}