/** * Merges release levels from a PackageMetadataConfig and a GapicProductConfig. The * GapicProductConfig always overrides the PackageMetadataConfig if its release level is set. */ public ReleaseLevel getMergedReleaseLevel( PackageMetadataConfig packageConfig, GapicProductConfig productConfig) { return productConfig.getReleaseLevel() == ReleaseLevel.UNSET_RELEASE_LEVEL ? packageConfig.releaseLevel() : productConfig.getReleaseLevel(); }
private PackageInfoView generatePackageInfo( ApiModel model, GapicProductConfig productConfig, SurfaceNamer namer, List<ServiceDocView> serviceDocs) { PackageInfoView.Builder packageInfo = PackageInfoView.newBuilder(); packageInfo.templateFileName(PACKAGE_INFO_TEMPLATE_FILENAME); packageInfo.serviceTitle(model.getTitle()); packageInfo.serviceDocs(serviceDocs); packageInfo.domainLayerLocation(productConfig.getDomainLayerLocation()); packageInfo.authScopes(model.getAuthScopes(productConfig)); packageInfo.fileHeader( fileHeaderTransformer.generateFileHeader( productConfig, ImportSectionView.newBuilder().build(), namer)); model .getInterfaces() .stream() .filter(productConfig::hasInterfaceConfig) .map(InterfaceModel::getFullName) .findFirst() .map(name -> pathMapper.getOutputPath(name, productConfig)) .ifPresent(path -> packageInfo.outputPath(path + File.separator + "package-info.java")); packageInfo.releaseLevel(productConfig.getReleaseLevel()); return packageInfo.build(); }
view.domainLayerLocation(productConfig.getDomainLayerLocation()); view.authScopes(new ArrayList<>()); // Unused in C# view.releaseLevel(productConfig.getReleaseLevel()); String versionSuffix; switch (productConfig.getReleaseLevel()) { case ALPHA: versionSuffix = "-alpha01";
public GapicProductConfig withPackageName(String packageName) { return new AutoValue_GapicProductConfig( getInterfaceConfigMap(), packageName, getDomainLayerLocation(), getReleaseLevel(), getResourceNameMessageConfigs(), getCopyrightLines(), getLicenseLines(), getResourceNameConfigs(), getProtoParser(), getTransportProtocol(), getDefaultResourceNameFieldConfigMap(), getConfigSchemaVersion(), enableStringFormattingFunctionsOverride()); }
private PackageInfoView generatePackageInfo( ApiModel model, GapicProductConfig productConfig, SurfaceNamer namer) { String outputPath = productConfig.getPackageName(); String fileName = "doc.go"; PackageInfoView.Builder packageInfo = PackageInfoView.newBuilder(); packageInfo.templateFileName(DOC_TEMPLATE_FILENAME); packageInfo.outputPath(outputPath + File.separator + fileName); packageInfo.serviceTitle(model.getTitle()); packageInfo.importPath(productConfig.getPackageName()); packageInfo.serviceDocs(Collections.<ServiceDocView>emptyList()); packageInfo.packageDoc( CommonRenderingUtil.getDocLines(model.getDocumentationSummary(), COMMENT_LINE_LENGTH)); packageInfo.domainLayerLocation(productConfig.getDomainLayerLocation()); packageInfo.authScopes(model.getAuthScopes(productConfig)); packageInfo.fileHeader( fileHeaderTransformer.generateFileHeader( productConfig, ImportSectionView.newBuilder().build(), namer)); packageInfo.releaseLevel(productConfig.getReleaseLevel()); packageInfo.isInferredBeta(isInferredBetaVersion(productConfig.getPackageName())); return packageInfo.build(); }
private StaticLangStubInterfaceView generateStubInterface( InterfaceContext context, GapicProductConfig productConfig) { InterfaceConfig interfaceConfig = context.getInterfaceConfig(); addStubInterfaceImports(context); // Stub class has different default package name from methods classes. InterfaceContext apiMethodsContext = context.withNewTypeTable(context.getNamer().getRootPackageName()); List<StaticLangApiMethodView> methods = methodGenerator.generateApiMethods(apiMethodsContext); for (TypeAlias alias : apiMethodsContext.getImportTypeTable().getTypeTable().getAllImports().values()) { context.getImportTypeTable().getAndSaveNicknameFor(alias); } StaticLangStubInterfaceView.Builder stubInterface = StaticLangStubInterfaceView.newBuilder(); stubInterface.doc(serviceTransformer.generateServiceDoc(context, null, productConfig)); String name = context.getNamer().getApiStubInterfaceName(context.getInterfaceConfig()); stubInterface.releaseLevelAnnotation( context.getNamer().getReleaseAnnotation(productConfig.getReleaseLevel())); stubInterface.name(name); stubInterface.callableMethods(filterIncludeCallableMethods(methods)); stubInterface.hasLongRunningOperations(interfaceConfig.hasLongRunningOperations()); return stubInterface.build(); }
private StaticLangApiView generateApiClass( InterfaceContext context, GapicProductConfig productConfig) { SurfaceNamer namer = context.getNamer(); InterfaceConfig interfaceConfig = context.getInterfaceConfig(); addApiImports(context); List<StaticLangApiMethodView> methods = methodGenerator.generateApiMethods(context); StaticLangApiView.Builder xapiClass = StaticLangApiView.newBuilder(); ApiMethodView exampleApiMethod = getExampleApiMethod(methods); xapiClass.doc(serviceTransformer.generateServiceDoc(context, exampleApiMethod, productConfig)); String name = context.getNamer().getApiWrapperClassName(context.getInterfaceConfig()); xapiClass.releaseLevelAnnotation(namer.getReleaseAnnotation(productConfig.getReleaseLevel())); xapiClass.name(name); xapiClass.settingsClassName(namer.getApiSettingsClassName(interfaceConfig)); xapiClass.stubInterfaceName( getAndSaveNicknameForStubType(context, namer.getApiStubInterfaceName(interfaceConfig))); xapiClass.stubSettingsClassName( getAndSaveNicknameForStubType(context, namer.getApiStubSettingsClassName(interfaceConfig))); xapiClass.apiCallableMembers(apiCallableTransformer.generateStaticLangApiCallables(context)); xapiClass.pathTemplates(pathTemplateTransformer.generatePathTemplates(context)); xapiClass.formatResourceFunctions( pathTemplateTransformer.generateFormatResourceFunctions(context)); xapiClass.parseResourceFunctions( pathTemplateTransformer.generateParseResourceFunctions(context)); xapiClass.apiMethods(methods); xapiClass.hasDefaultInstance(interfaceConfig.hasDefaultInstance()); xapiClass.hasLongRunningOperations(interfaceConfig.hasLongRunningOperations()); xapiClass.pagedResponseViews(generatePagedResponseWrappers(context)); return xapiClass.build(); }
context.getNamer().getReleaseAnnotation(productConfig.getReleaseLevel())); xsettingsClass.doc( generateSettingsDoc(