Skip to content

Commit 4b97769

Browse files
feat: [apihub] new module for apihub (#11089)
* feat: [apihub] new module for apihub
1 parent acba70b commit 4b97769

File tree

656 files changed

+241193
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

656 files changed

+241193
-0
lines changed

gapic-libraries-bom/pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,13 @@
105105
<type>pom</type>
106106
<scope>import</scope>
107107
</dependency>
108+
<dependency>
109+
<groupId>com.google.cloud</groupId>
110+
<artifactId>google-cloud-apihub-bom</artifactId>
111+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:google-cloud-apihub:current} -->
112+
<type>pom</type>
113+
<scope>import</scope>
114+
</dependency>
108115
<dependency>
109116
<groupId>com.google.cloud</groupId>
110117
<artifactId>google-cloud-apikeys-bom</artifactId>

generation_config.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,24 @@ libraries:
158158
GAPICs:
159159
- proto_path: google/cloud/apigeeregistry/v1
160160

161+
- api_shortname: apihub
162+
name_pretty: API hub API
163+
product_documentation: https://cloud.google.com/apigee/docs/apihub/what-is-api-hub
164+
api_description: API hub lets you consolidate and organize information about all
165+
of the APIs of interest to your organization. API hub lets you capture critical
166+
information about APIs that allows developers to discover and evaluate them
167+
easily and leverage the work of other teams wherever possible. API platform
168+
teams can use API hub to have visibility into and manage their portfolio of APIs.
169+
client_documentation: https://cloud.google.com/java/docs/reference/google-cloud-apihub/latest/overview
170+
release_level: preview
171+
distribution_name: com.google.cloud:google-cloud-apihub
172+
api_id: apihub.googleapis.com
173+
library_type: GAPIC_AUTO
174+
group_id: com.google.cloud
175+
cloud_api: true
176+
GAPICs:
177+
- proto_path: google/cloud/apihub/v1
178+
requires_billing: true
161179
- api_shortname: apikeys
162180
name_pretty: API Keys API
163181
product_documentation: https://cloud.google.com/api-keys/

java-apihub/.OwlBot-hermetic.yaml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Copyright 2024 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
16+
deep-remove-regex:
17+
- "/java-apihub/grpc-google-.*/src"
18+
- "/java-apihub/proto-google-.*/src"
19+
- "/java-apihub/google-.*/src"
20+
- "/java-apihub/samples/snippets/generated"
21+
22+
deep-preserve-regex:
23+
- "/java-apihub/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java"
24+
25+
deep-copy-regex:
26+
- source: "/google/cloud/apihub/(v.*)/.*-java/proto-google-.*/src"
27+
dest: "/owl-bot-staging/java-apihub/$1/proto-google-cloud-apihub-$1/src"
28+
- source: "/google/cloud/apihub/(v.*)/.*-java/grpc-google-.*/src"
29+
dest: "/owl-bot-staging/java-apihub/$1/grpc-google-cloud-apihub-$1/src"
30+
- source: "/google/cloud/apihub/(v.*)/.*-java/gapic-google-.*/src"
31+
dest: "/owl-bot-staging/java-apihub/$1/google-cloud-apihub/src"
32+
- source: "/google/cloud/apihub/(v.*)/.*-java/samples/snippets/generated"
33+
dest: "/owl-bot-staging/java-apihub/$1/samples/snippets/generated"
34+
35+
api-name: apihub

java-apihub/.repo-metadata.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"api_shortname": "apihub",
3+
"name_pretty": "API hub API",
4+
"product_documentation": "https://cloud.google.com/apigee/docs/apihub/what-is-api-hub",
5+
"api_description": "API hub lets you consolidate and organize information about all of the APIs of interest to your organization. API hub lets you capture critical information about APIs that allows developers to discover and evaluate them easily and leverage the work of other teams wherever possible. API platform teams can use API hub to have visibility into and manage their portfolio of APIs.",
6+
"client_documentation": "https://cloud.google.com/java/docs/reference/google-cloud-apihub/latest/overview",
7+
"release_level": "preview",
8+
"transport": "both",
9+
"language": "java",
10+
"repo": "googleapis/google-cloud-java",
11+
"repo_short": "java-apihub",
12+
"distribution_name": "com.google.cloud:google-cloud-apihub",
13+
"api_id": "apihub.googleapis.com",
14+
"library_type": "GAPIC_AUTO",
15+
"requires_billing": true
16+
}

java-apihub/README.md

Lines changed: 225 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,225 @@
1+
# Google API hub API Client for Java
2+
3+
Java idiomatic client for [API hub API][product-docs].
4+
5+
[![Maven][maven-version-image]][maven-version-link]
6+
![Stability][stability-image]
7+
8+
- [Product Documentation][product-docs]
9+
- [Client Library Documentation][javadocs]
10+
11+
> Note: This client is a work-in-progress, and may occasionally
12+
> make backwards-incompatible changes.
13+
14+
15+
## Quickstart
16+
17+
18+
If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file:
19+
20+
```xml
21+
<dependencyManagement>
22+
<dependencies>
23+
<dependency>
24+
<groupId>com.google.cloud</groupId>
25+
<artifactId>libraries-bom</artifactId>
26+
<version>26.44.0</version>
27+
<type>pom</type>
28+
<scope>import</scope>
29+
</dependency>
30+
</dependencies>
31+
</dependencyManagement>
32+
33+
<dependencies>
34+
<dependency>
35+
<groupId>com.google.cloud</groupId>
36+
<artifactId>google-cloud-apihub</artifactId>
37+
</dependency>
38+
```
39+
40+
If you are using Maven without the BOM, add this to your dependencies:
41+
42+
<!-- {x-version-update-start:google-cloud-apihub:released} -->
43+
44+
```xml
45+
<dependency>
46+
<groupId>com.google.cloud</groupId>
47+
<artifactId>google-cloud-apihub</artifactId>
48+
<version>0.0.0</version>
49+
</dependency>
50+
```
51+
52+
If you are using Gradle without BOM, add this to your dependencies:
53+
54+
```Groovy
55+
implementation 'com.google.cloud:google-cloud-apihub:0.0.0'
56+
```
57+
58+
If you are using SBT, add this to your dependencies:
59+
60+
```Scala
61+
libraryDependencies += "com.google.cloud" % "google-cloud-apihub" % "0.0.0"
62+
```
63+
<!-- {x-version-update-end} -->
64+
65+
## Authentication
66+
67+
See the [Authentication][authentication] section in the base directory's README.
68+
69+
## Authorization
70+
71+
The client application making API calls must be granted [authorization scopes][auth-scopes] required for the desired API hub API APIs, and the authenticated principal must have the [IAM role(s)][predefined-iam-roles] required to access GCP resources using the API hub API API calls.
72+
73+
## Getting Started
74+
75+
### Prerequisites
76+
77+
You will need a [Google Cloud Platform Console][developer-console] project with the API hub API [API enabled][enable-api].
78+
You will need to [enable billing][enable-billing] to use Google API hub API.
79+
[Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
80+
[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
81+
`gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
82+
83+
### Installation and setup
84+
85+
You'll need to obtain the `google-cloud-apihub` library. See the [Quickstart](#quickstart) section
86+
to add `google-cloud-apihub` as a dependency in your code.
87+
88+
## About API hub API
89+
90+
91+
[API hub API][product-docs] API hub lets you consolidate and organize information about all of the APIs of interest to your organization. API hub lets you capture critical information about APIs that allows developers to discover and evaluate them easily and leverage the work of other teams wherever possible. API platform teams can use API hub to have visibility into and manage their portfolio of APIs.
92+
93+
See the [API hub API client library docs][javadocs] to learn how to
94+
use this API hub API Client Library.
95+
96+
97+
98+
99+
100+
101+
## Troubleshooting
102+
103+
To get help, follow the instructions in the [shared Troubleshooting document][troubleshooting].
104+
105+
## Transport
106+
107+
API hub API uses both gRPC and HTTP/JSON for the transport layer.
108+
109+
## Supported Java Versions
110+
111+
Java 8 or above is required for using this client.
112+
113+
Google's Java client libraries,
114+
[Google Cloud Client Libraries][cloudlibs]
115+
and
116+
[Google Cloud API Libraries][apilibs],
117+
follow the
118+
[Oracle Java SE support roadmap][oracle]
119+
(see the Oracle Java SE Product Releases section).
120+
121+
### For new development
122+
123+
In general, new feature development occurs with support for the lowest Java
124+
LTS version covered by Oracle's Premier Support (which typically lasts 5 years
125+
from initial General Availability). If the minimum required JVM for a given
126+
library is changed, it is accompanied by a [semver][semver] major release.
127+
128+
Java 11 and (in September 2021) Java 17 are the best choices for new
129+
development.
130+
131+
### Keeping production systems current
132+
133+
Google tests its client libraries with all current LTS versions covered by
134+
Oracle's Extended Support (which typically lasts 8 years from initial
135+
General Availability).
136+
137+
#### Legacy support
138+
139+
Google's client libraries support legacy versions of Java runtimes with long
140+
term stable libraries that don't receive feature updates on a best efforts basis
141+
as it may not be possible to backport all patches.
142+
143+
Google provides updates on a best efforts basis to apps that continue to use
144+
Java 7, though apps might need to upgrade to current versions of the library
145+
that supports their JVM.
146+
147+
#### Where to find specific information
148+
149+
The latest versions and the supported Java versions are identified on
150+
the individual GitHub repository `github.com/GoogleAPIs/java-SERVICENAME`
151+
and on [google-cloud-java][g-c-j].
152+
153+
## Versioning
154+
155+
156+
This library follows [Semantic Versioning](http://semver.org/).
157+
158+
159+
It is currently in major version zero (``0.y.z``), which means that anything may change at any time
160+
and the public API should not be considered stable.
161+
162+
163+
## Contributing
164+
165+
166+
Contributions to this library are always welcome and highly encouraged.
167+
168+
See [CONTRIBUTING][contributing] for more information how to get started.
169+
170+
Please note that this project is released with a Contributor Code of Conduct. By participating in
171+
this project you agree to abide by its terms. See [Code of Conduct][code-of-conduct] for more
172+
information.
173+
174+
175+
## License
176+
177+
Apache 2.0 - See [LICENSE][license] for more information.
178+
179+
## CI Status
180+
181+
Java Version | Status
182+
------------ | ------
183+
Java 8 | [![Kokoro CI][kokoro-badge-image-2]][kokoro-badge-link-2]
184+
Java 8 OSX | [![Kokoro CI][kokoro-badge-image-3]][kokoro-badge-link-3]
185+
Java 8 Windows | [![Kokoro CI][kokoro-badge-image-4]][kokoro-badge-link-4]
186+
Java 11 | [![Kokoro CI][kokoro-badge-image-5]][kokoro-badge-link-5]
187+
188+
Java is a registered trademark of Oracle and/or its affiliates.
189+
190+
[product-docs]: https://cloud.google.com/apigee/docs/apihub/what-is-api-hub
191+
[javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-apihub/latest/overview
192+
[kokoro-badge-image-1]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java7.svg
193+
[kokoro-badge-link-1]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java7.html
194+
[kokoro-badge-image-2]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8.svg
195+
[kokoro-badge-link-2]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8.html
196+
[kokoro-badge-image-3]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8-osx.svg
197+
[kokoro-badge-link-3]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8-osx.html
198+
[kokoro-badge-image-4]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8-win.svg
199+
[kokoro-badge-link-4]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8-win.html
200+
[kokoro-badge-image-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.svg
201+
[kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
202+
[stability-image]: https://img.shields.io/badge/stability-preview-yellow
203+
[maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-apihub.svg
204+
[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-apihub/0.0.0
205+
[authentication]: https://github.com/googleapis/google-cloud-java#authentication
206+
[auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
207+
[predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
208+
[iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
209+
[developer-console]: https://console.developers.google.com/
210+
[create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
211+
[cloud-cli]: https://cloud.google.com/cli
212+
[troubleshooting]: https://github.com/googleapis/google-cloud-java/blob/main/TROUBLESHOOTING.md
213+
[contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
214+
[code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
215+
[license]: https://github.com/googleapis/google-cloud-java/blob/main/LICENSE
216+
[enable-billing]: https://cloud.google.com/apis/docs/getting-started#enabling_billing
217+
[enable-api]: https://console.cloud.google.com/flows/enableapi?apiid=apihub.googleapis.com
218+
[libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM
219+
[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png
220+
221+
[semver]: https://semver.org/
222+
[cloudlibs]: https://cloud.google.com/apis/docs/client-libraries-explained
223+
[apilibs]: https://cloud.google.com/apis/docs/client-libraries-explained#google_api_client_libraries
224+
[oracle]: https://www.oracle.com/java/technologies/java-se-support-roadmap.html
225+
[g-c-j]: http://github.com/googleapis/google-cloud-java
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3+
<modelVersion>4.0.0</modelVersion>
4+
<groupId>com.google.cloud</groupId>
5+
<artifactId>google-cloud-apihub-bom</artifactId>
6+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:google-cloud-apihub:current} -->
7+
<packaging>pom</packaging>
8+
<parent>
9+
<groupId>com.google.cloud</groupId>
10+
<artifactId>google-cloud-pom-parent</artifactId>
11+
<version>1.42.0-SNAPSHOT</version><!-- {x-version-update:google-cloud-java:current} -->
12+
<relativePath>../../google-cloud-pom-parent/pom.xml</relativePath>
13+
</parent>
14+
15+
<name>Google API hub API BOM</name>
16+
<description>
17+
BOM for API hub API
18+
</description>
19+
20+
<properties>
21+
<maven.antrun.skip>true</maven.antrun.skip>
22+
</properties>
23+
24+
<dependencyManagement>
25+
<dependencies>
26+
<dependency>
27+
<groupId>com.google.cloud</groupId>
28+
<artifactId>google-cloud-apihub</artifactId>
29+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:google-cloud-apihub:current} -->
30+
</dependency>
31+
<dependency>
32+
<groupId>com.google.api.grpc</groupId>
33+
<artifactId>grpc-google-cloud-apihub-v1</artifactId>
34+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:grpc-google-cloud-apihub-v1:current} -->
35+
</dependency>
36+
<dependency>
37+
<groupId>com.google.api.grpc</groupId>
38+
<artifactId>proto-google-cloud-apihub-v1</artifactId>
39+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:proto-google-cloud-apihub-v1:current} -->
40+
</dependency>
41+
</dependencies>
42+
</dependencyManagement>
43+
</project>

0 commit comments

Comments
 (0)