public static String generatePackageName(MicroserviceMeta microserviceMeta, String schemaId) { String name = "cse.gen." + microserviceMeta.getAppId() + "." + microserviceMeta.getShortName() + "." + schemaId; return ClassUtils.correctClassName(name); }
protected JavaType getOrCreateType(SwaggerToClassGenerator swaggerToClassGenerator, ModelImpl modelImpl) { String clsName = ClassUtils.getClassName(findVendorExtensions(modelImpl)); clsName = ClassUtils.correctClassName(clsName); return getOrCreateType(swaggerToClassGenerator, modelImpl.getProperties(), clsName); }
public WrapSchema getOrCreateSchema(Type type) { JavaType javaType = TypeFactory.defaultInstance().constructType(type); // List<String> -> java.util.List<java.lang.String> // List<List<String>> -> java.util.List<java.util.List<java.lang.String>> String key = javaType.toCanonical(); return schemaCache.computeIfAbsent(key, k -> { if (!ProtobufSchemaUtils.isNeedWrap(javaType.getRawClass())) { // 可以直接使用 Schema<?> schema = RuntimeSchema.createFrom(javaType.getRawClass()); return WrapSchemaFactory.createSchema(schema, WrapType.NOT_WRAP); } // 需要包装 WrapClassConfig config = new WrapClassConfig(); config.setType(WrapType.NORMAL_WRAP); config.setClassName( "gen.wrap.protobuf." + org.apache.servicecomb.swagger.generator.core.utils.ClassUtils.correctClassName(key)); if (!Void.TYPE.isAssignableFrom(javaType.getRawClass())) { config.addField("field0", javaType); } JavassistUtils.genSingleWrapperInterface(config); return createWrapSchema(config); }); }
public static String generatePackageName(MicroserviceMeta microserviceMeta, String schemaId) { String name = "cse.gen." + microserviceMeta.getAppId() + "." + microserviceMeta.getShortName() + "." + schemaId; return ClassUtils.correctClassName(name); }
protected JavaType getOrCreateType(SwaggerToClassGenerator swaggerToClassGenerator, ModelImpl modelImpl) { String clsName = ClassUtils.getClassName(findVendorExtensions(modelImpl)); clsName = ClassUtils.correctClassName(clsName); return getOrCreateType(swaggerToClassGenerator, modelImpl.getProperties(), clsName); }
public WrapSchema getOrCreateSchema(Type type) { JavaType javaType = TypeFactory.defaultInstance().constructType(type); // List<String> -> java.util.List<java.lang.String> // List<List<String>> -> java.util.List<java.util.List<java.lang.String>> String key = javaType.toCanonical(); return schemaCache.computeIfAbsent(key, k -> { if (!ProtobufSchemaUtils.isNeedWrap(javaType.getRawClass())) { // 可以直接使用 Schema<?> schema = RuntimeSchema.createFrom(javaType.getRawClass()); return WrapSchemaFactory.createSchema(schema, WrapType.NOT_WRAP); } // 需要包装 WrapClassConfig config = new WrapClassConfig(); config.setType(WrapType.NORMAL_WRAP); config.setClassName( "gen.wrap.protobuf." + org.apache.servicecomb.swagger.generator.core.utils.ClassUtils.correctClassName(key)); if (!Void.TYPE.isAssignableFrom(javaType.getRawClass())) { config.addField("field0", javaType); } JavassistUtils.genSingleWrapperInterface(config); return createWrapSchema(config); }); }