Skip to content

Commit e2a7440

Browse files
committed
chore: create java-spanneradapter
1 parent 060f609 commit e2a7440

File tree

53 files changed

+10100
-6
lines changed

Some content is hidden

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

53 files changed

+10100
-6
lines changed

gapic-libraries-bom/pom.xml

+9-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<groupId>com.google.cloud</groupId>
55
<artifactId>gapic-libraries-bom</artifactId>
66
<packaging>pom</packaging>
7-
<version>1.54.2</version><!-- {x-version-update:google-cloud-java:current} -->
7+
<version>1.54.3</version><!-- {x-version-update:google-cloud-java:current} -->
88
<name>Google Cloud Java BOM</name>
99
<description>
1010
BOM for the libraries in google-cloud-java repository. Users should not
@@ -15,7 +15,7 @@
1515
<parent>
1616
<artifactId>google-cloud-pom-parent</artifactId>
1717
<groupId>com.google.cloud</groupId>
18-
<version>1.54.2</version><!-- {x-version-update:google-cloud-java:current} -->
18+
<version>1.54.3</version><!-- {x-version-update:google-cloud-java:current} -->
1919
<relativePath>../google-cloud-pom-parent/pom.xml</relativePath>
2020
</parent>
2121

@@ -1102,6 +1102,13 @@
11021102
<type>pom</type>
11031103
<scope>import</scope>
11041104
</dependency>
1105+
<dependency>
1106+
<groupId>com.google.cloud</groupId>
1107+
<artifactId>google-cloud-spanneradapter-bom</artifactId>
1108+
<version>0.0.1</version><!-- {x-version-update:google-cloud-spanneradapter:current} -->
1109+
<type>pom</type>
1110+
<scope>import</scope>
1111+
</dependency>
11051112
<dependency>
11061113
<groupId>com.google.cloud</groupId>
11071114
<artifactId>google-cloud-speech-bom</artifactId>

generation_config.yaml

+17
Original file line numberDiff line numberDiff line change
@@ -2237,6 +2237,23 @@ libraries:
22372237
requires_billing: true
22382238
library_name: shopping-merchant-reviews
22392239

2240+
- api_shortname: spanneradapter
2241+
name_pretty: Cloud Spanner Adapter API
2242+
product_documentation: https://cloud.google.com/spanner
2243+
api_description: The Cloud Spanner Adapter service allows native drivers of supported
2244+
database dialects to interact directly with Cloud Spanner by wrapping the underlying
2245+
wire protocol used by the driver in a gRPC stream.
2246+
client_documentation:
2247+
https://cloud.google.com/java/docs/reference/google-cloud-spanneradapter/latest/overview
2248+
release_level: preview
2249+
distribution_name: com.google.cloud:google-cloud-spanneradapter
2250+
api_id: spanner.googleapis.com
2251+
library_type: GAPIC_AUTO
2252+
group_id: com.google.cloud
2253+
cloud_api: true
2254+
GAPICs:
2255+
- proto_path: google/spanner/adapter/v1
2256+
requires_billing: true
22402257
- api_shortname: speech
22412258
name_pretty: Cloud Speech
22422259
product_documentation: https://cloud.google.com/speech-to-text/docs/

google-cloud-jar-parent/pom.xml

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<modelVersion>4.0.0</modelVersion>
66
<artifactId>google-cloud-jar-parent</artifactId>
77
<groupId>com.google.cloud</groupId>
8-
<version>1.54.2</version><!-- {x-version-update:google-cloud-java:current} -->
8+
<version>1.54.3</version><!-- {x-version-update:google-cloud-java:current} -->
99
<packaging>pom</packaging>
1010
<name>Google Cloud JAR Parent</name>
1111
<description>
@@ -15,7 +15,7 @@
1515
<parent>
1616
<groupId>com.google.cloud</groupId>
1717
<artifactId>google-cloud-pom-parent</artifactId>
18-
<version>1.54.2</version><!-- {x-version-update:google-cloud-java:current} -->
18+
<version>1.54.3</version><!-- {x-version-update:google-cloud-java:current} -->
1919
<relativePath>../google-cloud-pom-parent/pom.xml</relativePath>
2020
</parent>
2121
<properties>

google-cloud-pom-parent/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<modelVersion>4.0.0</modelVersion>
66
<artifactId>google-cloud-pom-parent</artifactId>
77
<groupId>com.google.cloud</groupId>
8-
<version>1.54.2</version><!-- {x-version-update:google-cloud-java:current} -->
8+
<version>1.54.3</version><!-- {x-version-update:google-cloud-java:current} -->
99
<packaging>pom</packaging>
1010
<name>Google Cloud POM Parent</name>
1111
<url>https://github.com/googleapis/google-cloud-java</url>
+35
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-spanneradapter/grpc-google-.*/src"
18+
- "/java-spanneradapter/proto-google-.*/src"
19+
- "/java-spanneradapter/google-.*/src"
20+
- "/java-spanneradapter/samples/snippets/generated"
21+
22+
deep-preserve-regex:
23+
- "/java-spanneradapter/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java"
24+
25+
deep-copy-regex:
26+
- source: "/google/spanner/adapter/(v.*)/.*-java/proto-google-.*/src"
27+
dest: "/owl-bot-staging/java-spanneradapter/$1/proto-google-cloud-spanneradapter-$1/src"
28+
- source: "/google/spanner/adapter/(v.*)/.*-java/grpc-google-.*/src"
29+
dest: "/owl-bot-staging/java-spanneradapter/$1/grpc-google-cloud-spanneradapter-$1/src"
30+
- source: "/google/spanner/adapter/(v.*)/.*-java/gapic-google-.*/src"
31+
dest: "/owl-bot-staging/java-spanneradapter/$1/google-cloud-spanneradapter/src"
32+
- source: "/google/spanner/adapter/(v.*)/.*-java/samples/snippets/generated"
33+
dest: "/owl-bot-staging/java-spanneradapter/$1/samples/snippets/generated"
34+
35+
api-name: spanneradapter
+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"api_shortname": "spanneradapter",
3+
"name_pretty": "Cloud Spanner Adapter API",
4+
"product_documentation": "https://cloud.google.com/spanner",
5+
"api_description": "The Cloud Spanner Adapter service allows native drivers of supported database dialects to interact directly with Cloud Spanner by wrapping the underlying wire protocol used by the driver in a gRPC stream.",
6+
"client_documentation": "https://cloud.google.com/java/docs/reference/google-cloud-spanneradapter/latest/overview",
7+
"release_level": "preview",
8+
"transport": "both",
9+
"language": "java",
10+
"repo": "googleapis/google-cloud-java",
11+
"repo_short": "java-spanneradapter",
12+
"distribution_name": "com.google.cloud:google-cloud-spanneradapter",
13+
"api_id": "spanner.googleapis.com",
14+
"library_type": "GAPIC_AUTO",
15+
"requires_billing": true
16+
}

java-spanneradapter/README.md

+224
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,224 @@
1+
# Google Cloud Spanner Adapter API Client for Java
2+
3+
Java idiomatic client for [Cloud Spanner Adapter 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.56.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-spanneradapter</artifactId>
37+
</dependency>
38+
</dependencies>
39+
```
40+
41+
If you are using Maven without the BOM, add this to your dependencies:
42+
43+
44+
```xml
45+
<dependency>
46+
<groupId>com.google.cloud</groupId>
47+
<artifactId>google-cloud-spanneradapter</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-spanneradapter: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-spanneradapter" % "0.0.0"
62+
```
63+
64+
## Authentication
65+
66+
See the [Authentication][authentication] section in the base directory's README.
67+
68+
## Authorization
69+
70+
The client application making API calls must be granted [authorization scopes][auth-scopes] required for the desired Cloud Spanner Adapter API APIs, and the authenticated principal must have the [IAM role(s)][predefined-iam-roles] required to access GCP resources using the Cloud Spanner Adapter API API calls.
71+
72+
## Getting Started
73+
74+
### Prerequisites
75+
76+
You will need a [Google Cloud Platform Console][developer-console] project with the Cloud Spanner Adapter API [API enabled][enable-api].
77+
You will need to [enable billing][enable-billing] to use Google Cloud Spanner Adapter API.
78+
[Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
79+
[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
80+
`gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
81+
82+
### Installation and setup
83+
84+
You'll need to obtain the `google-cloud-spanneradapter` library. See the [Quickstart](#quickstart) section
85+
to add `google-cloud-spanneradapter` as a dependency in your code.
86+
87+
## About Cloud Spanner Adapter API
88+
89+
90+
[Cloud Spanner Adapter API][product-docs] The Cloud Spanner Adapter service allows native drivers of supported database dialects to interact directly with Cloud Spanner by wrapping the underlying wire protocol used by the driver in a gRPC stream.
91+
92+
See the [Cloud Spanner Adapter API client library docs][javadocs] to learn how to
93+
use this Cloud Spanner Adapter API Client Library.
94+
95+
96+
97+
98+
99+
100+
## Troubleshooting
101+
102+
To get help, follow the instructions in the [shared Troubleshooting document][troubleshooting].
103+
104+
## Transport
105+
106+
Cloud Spanner Adapter API uses both gRPC and HTTP/JSON for the transport layer.
107+
108+
## Supported Java Versions
109+
110+
Java 8 or above is required for using this client.
111+
112+
Google's Java client libraries,
113+
[Google Cloud Client Libraries][cloudlibs]
114+
and
115+
[Google Cloud API Libraries][apilibs],
116+
follow the
117+
[Oracle Java SE support roadmap][oracle]
118+
(see the Oracle Java SE Product Releases section).
119+
120+
### For new development
121+
122+
In general, new feature development occurs with support for the lowest Java
123+
LTS version covered by Oracle's Premier Support (which typically lasts 5 years
124+
from initial General Availability). If the minimum required JVM for a given
125+
library is changed, it is accompanied by a [semver][semver] major release.
126+
127+
Java 11 and (in September 2021) Java 17 are the best choices for new
128+
development.
129+
130+
### Keeping production systems current
131+
132+
Google tests its client libraries with all current LTS versions covered by
133+
Oracle's Extended Support (which typically lasts 8 years from initial
134+
General Availability).
135+
136+
#### Legacy support
137+
138+
Google's client libraries support legacy versions of Java runtimes with long
139+
term stable libraries that don't receive feature updates on a best efforts basis
140+
as it may not be possible to backport all patches.
141+
142+
Google provides updates on a best efforts basis to apps that continue to use
143+
Java 7, though apps might need to upgrade to current versions of the library
144+
that supports their JVM.
145+
146+
#### Where to find specific information
147+
148+
The latest versions and the supported Java versions are identified on
149+
the individual GitHub repository `github.com/GoogleAPIs/java-SERVICENAME`
150+
and on [google-cloud-java][g-c-j].
151+
152+
## Versioning
153+
154+
155+
This library follows [Semantic Versioning](http://semver.org/).
156+
157+
158+
It is currently in major version zero (``0.y.z``), which means that anything may change at any time
159+
and the public API should not be considered stable.
160+
161+
162+
## Contributing
163+
164+
165+
Contributions to this library are always welcome and highly encouraged.
166+
167+
See [CONTRIBUTING][contributing] for more information how to get started.
168+
169+
Please note that this project is released with a Contributor Code of Conduct. By participating in
170+
this project you agree to abide by its terms. See [Code of Conduct][code-of-conduct] for more
171+
information.
172+
173+
174+
## License
175+
176+
Apache 2.0 - See [LICENSE][license] for more information.
177+
178+
## CI Status
179+
180+
Java Version | Status
181+
------------ | ------
182+
Java 8 | [![Kokoro CI][kokoro-badge-image-2]][kokoro-badge-link-2]
183+
Java 8 OSX | [![Kokoro CI][kokoro-badge-image-3]][kokoro-badge-link-3]
184+
Java 8 Windows | [![Kokoro CI][kokoro-badge-image-4]][kokoro-badge-link-4]
185+
Java 11 | [![Kokoro CI][kokoro-badge-image-5]][kokoro-badge-link-5]
186+
187+
Java is a registered trademark of Oracle and/or its affiliates.
188+
189+
[product-docs]: https://cloud.google.com/spanner
190+
[javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-spanneradapter/latest/overview
191+
[kokoro-badge-image-1]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java7.svg
192+
[kokoro-badge-link-1]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java7.html
193+
[kokoro-badge-image-2]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8.svg
194+
[kokoro-badge-link-2]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8.html
195+
[kokoro-badge-image-3]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8-osx.svg
196+
[kokoro-badge-link-3]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8-osx.html
197+
[kokoro-badge-image-4]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8-win.svg
198+
[kokoro-badge-link-4]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java8-win.html
199+
[kokoro-badge-image-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.svg
200+
[kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
201+
[stability-image]: https://img.shields.io/badge/stability-preview-yellow
202+
[maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-spanneradapter.svg
203+
[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-spanneradapter/0.0.0
204+
[authentication]: https://github.com/googleapis/google-cloud-java#authentication
205+
[auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
206+
[predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
207+
[iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
208+
[developer-console]: https://console.developers.google.com/
209+
[create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
210+
[cloud-cli]: https://cloud.google.com/cli
211+
[troubleshooting]: https://github.com/googleapis/google-cloud-java/blob/main/TROUBLESHOOTING.md
212+
[contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
213+
[code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
214+
[license]: https://github.com/googleapis/google-cloud-java/blob/main/LICENSE
215+
[enable-billing]: https://cloud.google.com/apis/docs/getting-started#enabling_billing
216+
[enable-api]: https://console.cloud.google.com/flows/enableapi?apiid=spanner.googleapis.com
217+
[libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM
218+
[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png
219+
220+
[semver]: https://semver.org/
221+
[cloudlibs]: https://cloud.google.com/apis/docs/client-libraries-explained
222+
[apilibs]: https://cloud.google.com/apis/docs/client-libraries-explained#google_api_client_libraries
223+
[oracle]: https://www.oracle.com/java/technologies/java-se-support-roadmap.html
224+
[g-c-j]: http://github.com/googleapis/google-cloud-java

0 commit comments

Comments
 (0)