protected int countRealBodyParameter(List<Parameter> parameters) { int count = 0; for (Parameter p : parameters) { if (ParamUtils.isRealBodyParameter(p)) { count++; } } return count; }
protected void mapDefinitionsToExistingClasses() { interfaceCls = ClassUtils.getClassByName(classLoader, interfaceName); if (interfaceCls == null) { return; } // TODO: map }
@Override public boolean canProcess(Class<?> cls) { return ClassUtils.hasAnnotation(cls, Path.class); }
public static BodyParameter createBodyParameter(OperationGenerator operationGenerator, int paramIdx) { Method method = operationGenerator.getProviderMethod(); String paramName = getParameterName(method, paramIdx); Type paramType = getGenericParameterType(method, paramIdx); return createBodyParameter(operationGenerator.getSwagger(), paramName, paramType); }
public static String getParameterName(String existName, Method method, int paramIdx) { if (StringUtils.isEmpty(existName)) { existName = getParameterName(method, paramIdx); } return existName; }
public static PendingBodyParameter createPendingBodyParameter(OperationGenerator operationGenerator, int paramIdx) { Method method = operationGenerator.getProviderMethod(); String paramName = ParamUtils.getParameterName(method, paramIdx); Type paramType = ParamUtils.getGenericParameterType(method, paramIdx); return createPendingBodyParameter(operationGenerator, paramName, paramType); }
protected void mergeBodyBasedParameters(OperationGenerator operationGenerator, List<BodyParameter> bodyParameters) { List<Parameter> swaggerParameters = operationGenerator.getSwaggerParameters(); swaggerParameters.removeAll(bodyParameters); // 将这些body包装为一个class,整体做为一个body参数 String bodyParamName = ParamUtils.generateBodyParameterName(operationGenerator.getProviderMethod()); Class<?> cls = ClassUtils.getOrCreateBodyClass(operationGenerator, bodyParameters); BodyParameter bodyParameter = ParamUtils.createBodyParameter(operationGenerator.getSwagger(), bodyParamName, cls); swaggerParameters.add(bodyParameter); }
protected JavaType getOrCreateType(SwaggerToClassGenerator swaggerToClassGenerator, ModelImpl modelImpl) { String clsName = ClassUtils.getClassName(findVendorExtensions(modelImpl)); clsName = ClassUtils.correctClassName(clsName); return getOrCreateType(swaggerToClassGenerator, modelImpl.getProperties(), clsName); }
@Override public void process(OperationGenerator operationGenerator, int paramIndex) { BodyParameter bodyParameter = ParamUtils.createBodyParameter(operationGenerator, paramIndex); operationGenerator.addProviderParameter(bodyParameter); } }
protected void setParameterType(OperationGenerator operationGenerator, int paramIdx, T parameter) { ParamUtils.setParameterType(operationGenerator.getSwagger(), operationGenerator.getProviderMethod(), paramIdx, parameter); }
public static String generatePackageName(MicroserviceMeta microserviceMeta, String schemaId) { String name = "cse.gen." + microserviceMeta.getAppId() + "." + microserviceMeta.getShortName() + "." + schemaId; return ClassUtils.correctClassName(name); }
public static boolean isComplexProperty(Property property) { if (RefProperty.class.isInstance(property) || ObjectProperty.class.isInstance(property) || MapProperty.class.isInstance(property)) { return true; } if (ArrayProperty.class.isInstance(property)) { return isComplexProperty(((ArrayProperty) property).getItems()); } return false; }
public static String getClassName(Map<String, Object> vendorExtensions) { return getVendorExtension(vendorExtensions, SwaggerConst.EXT_JAVA_CLASS); }
protected void updateJavaClassInVendor(Map<String, Object> vendorExtensions, String shortClsName) { String clsName = ClassUtils.getClassName(vendorExtensions); if (StringUtils.isEmpty(clsName)) { vendorExtensions.put(SwaggerConst.EXT_JAVA_CLASS, packageName + "." + shortClsName); } }
protected void collectInterfaceName() { if (interfaceName != null) { return; } if (swagger.getInfo() != null) { interfaceName = ClassUtils.getInterfaceName(swagger.getInfo().getVendorExtensions()); if (interfaceName != null) { return; } } interfaceName = packageName + ".SchemaInterface"; }
public static String getParameterName(Executable methodOrConstructor, int parameterIndex) { MethodParameter methodParameter = MethodParameter.forMethodOrConstructor(methodOrConstructor, parameterIndex); return getParameterName(methodParameter, parameterIndex); }
@Override public void process(Object annotation, OperationGenerator operationGenerator, int paramIdx) { BodyParameter bodyParameter = ParamUtils.createBodyParameter(operationGenerator, paramIdx); bodyParameter.setVendorExtension("x-raw-json", true); bodyParameter.setRequired(true); operationGenerator.addProviderParameter(bodyParameter); } }
@Override public boolean canProcess(Class<?> cls) { return ClassUtils.hasAnnotation(cls, RequestMapping.class) || ClassUtils.hasAnnotation(cls, RestController.class); }
public static String getInterfaceName(Map<String, Object> vendorExtensions) { return getVendorExtension(vendorExtensions, SwaggerConst.EXT_JAVA_INTF); }
public static String getParameterName(Method method, int paramIdx) { MethodParameter methodParameter = new MethodParameter(method, paramIdx); return getParameterName(methodParameter, paramIdx); }