def bazel_library( service: str, version: str, package_pattern: str = "com.google.cloud.{service}.{version}", gapic: gcp.GAPICBazel = None, destination_name: str = None, cloud_api: bool = True, diregapic: bool = False, preserve_gapic: bool = False, **kwargs, ) -> Path: """Generate a Java library using the gapic-generator via bazel. Generates code into a temp directory, fixes missing header fields, and copies into the expected locations. Args: service (str): Name of the service. version (str): Service API version. package_pattern (str, optional): Package name template for fixing file headers. Defaults to "com.google.cloud.{service}.{version}". gapic (GAPICBazel, optional): Generator instance. destination_name (str, optional): Override the service name for the destination of the output code. Defaults to the service name. preserve_gapic (bool, optional): Whether to preserve the gapic directory prefix. Default False. **kwargs: Additional options for gapic.java_library() Returns: The path to the temp directory containing the generated client. """ if gapic is None: gapic = gcp.GAPICBazel() library = gapic.java_library(service=service, version=version, diregapic=diregapic, **kwargs) _common_generation( service=service, version=version, library=library / f"google-cloud-{service}-{version}-java", package_pattern=package_pattern, suffix="-java", destination_name=destination_name, cloud_api=cloud_api, diregapic=diregapic, preserve_gapic=preserve_gapic, ) return library
def bazel_library( service: str, version: str, package_pattern: str = "com.google.cloud.{service}.{version}", gapic: gcp.GAPICBazel = None, **kwargs, ) -> Path: """Generate a Java library using the gapic-generator via bazel. Generates code into a temp directory, fixes missing header fields, and copies into the expected locations. Args: service (str): Name of the service. version (str): Service API version. package_pattern (str, optional): Package name template for fixing file headers. Defaults to "com.google.cloud.{service}.{version}". gapic (GAPICBazel, optional): Generator instance. **kwargs: Additional options for gapic.java_library() Returns: The path to the temp directory containing the generated client. """ if gapic is None: gapic = gcp.GAPICBazel() library = gapic.java_library(service=service, version=version, **kwargs) _common_generation( service=service, version=version, library=library / f"google-cloud-{service}-{version}-java", package_pattern=package_pattern, suffix="-java", ) return library