Skip to content

Commit

Permalink
Generate Firestore API v1 (#4410)
Browse files Browse the repository at this point in the history
  • Loading branch information
JesseLovelace authored and kolea2 committed Jan 30, 2019
1 parent f4bac2f commit 7fc4b3b
Show file tree
Hide file tree
Showing 127 changed files with 83,656 additions and 59 deletions.
31 changes: 31 additions & 0 deletions google-api-grpc/grpc-google-cloud-firestore-v1/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<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">
<modelVersion>4.0.0</modelVersion>
<artifactId>grpc-google-cloud-firestore-v1</artifactId>
<version>0.44.1-SNAPSHOT</version><!-- {x-version-update:grpc-google-cloud-firestore-v1beta1:current} -->
<name>grpc-google-cloud-firestore-v1</name>
<description>GRPC library for grpc-google-cloud-firestore-v1</description>
<parent>
<groupId>com.google.api.grpc</groupId>
<artifactId>google-api-grpc</artifactId>
<version>0.44.1-SNAPSHOT</version><!-- {x-version-update:google-api-grpc:current} -->
</parent>
<dependencies>
<dependency>
<groupId>io.grpc</groupId>
<artifactId>grpc-stub</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>io.grpc</groupId>
<artifactId>grpc-protobuf</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.api.grpc</groupId>
<artifactId>proto-google-cloud-firestore-v1</artifactId>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

Large diffs are not rendered by default.

12 changes: 12 additions & 0 deletions google-api-grpc/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -284,11 +284,21 @@
<artifactId>grpc-google-cloud-error-reporting-v1beta1</artifactId>
<version>0.44.1-SNAPSHOT</version><!-- {x-version-update:grpc-google-cloud-error-reporting-v1beta1:current} -->
</dependency>
<dependency>
<groupId>com.google.api.grpc</groupId>
<artifactId>proto-google-cloud-firestore-v1</artifactId>
<version>0.44.1-SNAPSHOT</version><!-- {x-version-update:proto-google-cloud-firestore-v1:current} -->
</dependency>
<dependency>
<groupId>com.google.api.grpc</groupId>
<artifactId>proto-google-cloud-firestore-v1beta1</artifactId>
<version>0.44.1-SNAPSHOT</version><!-- {x-version-update:proto-google-cloud-firestore-v1beta1:current} -->
</dependency>
<dependency>
<groupId>com.google.api.grpc</groupId>
<artifactId>grpc-google-cloud-firestore-v1</artifactId>
<version>0.44.1-SNAPSHOT</version><!-- {x-version-update:grpc-google-cloud-firestore-v1:current} -->
</dependency>
<dependency>
<groupId>com.google.api.grpc</groupId>
<artifactId>grpc-google-cloud-firestore-v1beta1</artifactId>
Expand Down Expand Up @@ -662,6 +672,7 @@
<module>grpc-google-cloud-dialogflow-v2beta1</module>
<module>grpc-google-cloud-dlp-v2</module>
<module>grpc-google-cloud-error-reporting-v1beta1</module>
<module>grpc-google-cloud-firestore-v1</module>
<module>grpc-google-cloud-firestore-v1beta1</module>
<module>grpc-google-cloud-iamcredentials-v1</module>
<module>grpc-google-cloud-iot-v1</module>
Expand Down Expand Up @@ -714,6 +725,7 @@
<module>proto-google-cloud-dialogflow-v2beta1</module>
<module>proto-google-cloud-dlp-v2</module>
<module>proto-google-cloud-error-reporting-v1beta1</module>
<module>proto-google-cloud-firestore-v1</module>
<module>proto-google-cloud-firestore-v1beta1</module>
<module>proto-google-cloud-iamcredentials-v1</module>
<module>proto-google-cloud-iot-v1</module>
Expand Down
31 changes: 31 additions & 0 deletions google-api-grpc/proto-google-cloud-firestore-v1/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<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">
<modelVersion>4.0.0</modelVersion>
<artifactId>proto-google-cloud-firestore-v1</artifactId>
<version>0.44.1-SNAPSHOT</version><!-- {x-version-update:proto-google-cloud-firestore-v1:current} -->
<name>proto-google-cloud-firestore-v1</name>
<description>PROTO library for proto-google-cloud-firestore-v1</description>
<parent>
<groupId>com.google.api.grpc</groupId>
<artifactId>google-api-grpc</artifactId>
<version>0.44.1-SNAPSHOT</version><!-- {x-version-update:google-api-grpc:current} -->
</parent>
<dependencies>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.api</groupId>
<artifactId>api-common</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.api.grpc</groupId>
<artifactId>proto-google-common-protos</artifactId>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,240 @@
/*
* Copyright 2018 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/

package com.google.firestore.v1;

import com.google.api.pathtemplate.PathTemplate;
import com.google.api.resourcenames.ResourceName;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableMap;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

// AUTO-GENERATED DOCUMENTATION AND CLASS
@javax.annotation.Generated("by GAPIC protoc plugin")
public class AnyPathName implements ResourceName {

private static final PathTemplate PATH_TEMPLATE =
PathTemplate.createWithoutUrlEncoding(
"projects/{project}/databases/{database}/documents/{document}/{any_path=**}");

private volatile Map<String, String> fieldValuesMap;

private final String project;
private final String database;
private final String document;
private final String anyPath;

public String getProject() {
return project;
}

public String getDatabase() {
return database;
}

public String getDocument() {
return document;
}

public String getAnyPath() {
return anyPath;
}

public static Builder newBuilder() {
return new Builder();
}

public Builder toBuilder() {
return new Builder(this);
}

private AnyPathName(Builder builder) {
project = Preconditions.checkNotNull(builder.getProject());
database = Preconditions.checkNotNull(builder.getDatabase());
document = Preconditions.checkNotNull(builder.getDocument());
anyPath = Preconditions.checkNotNull(builder.getAnyPath());
}

public static AnyPathName of(String project, String database, String document, String anyPath) {
return newBuilder()
.setProject(project)
.setDatabase(database)
.setDocument(document)
.setAnyPath(anyPath)
.build();
}

public static String format(String project, String database, String document, String anyPath) {
return newBuilder()
.setProject(project)
.setDatabase(database)
.setDocument(document)
.setAnyPath(anyPath)
.build()
.toString();
}

public static AnyPathName parse(String formattedString) {
if (formattedString.isEmpty()) {
return null;
}
Map<String, String> matchMap =
PATH_TEMPLATE.validatedMatch(
formattedString, "AnyPathName.parse: formattedString not in valid format");
return of(
matchMap.get("project"),
matchMap.get("database"),
matchMap.get("document"),
matchMap.get("any_path"));
}

public static List<AnyPathName> parseList(List<String> formattedStrings) {
List<AnyPathName> list = new ArrayList<>(formattedStrings.size());
for (String formattedString : formattedStrings) {
list.add(parse(formattedString));
}
return list;
}

public static List<String> toStringList(List<AnyPathName> values) {
List<String> list = new ArrayList<String>(values.size());
for (AnyPathName value : values) {
if (value == null) {
list.add("");
} else {
list.add(value.toString());
}
}
return list;
}

public static boolean isParsableFrom(String formattedString) {
return PATH_TEMPLATE.matches(formattedString);
}

public Map<String, String> getFieldValuesMap() {
if (fieldValuesMap == null) {
synchronized (this) {
if (fieldValuesMap == null) {
ImmutableMap.Builder<String, String> fieldMapBuilder = ImmutableMap.builder();
fieldMapBuilder.put("project", project);
fieldMapBuilder.put("database", database);
fieldMapBuilder.put("document", document);
fieldMapBuilder.put("anyPath", anyPath);
fieldValuesMap = fieldMapBuilder.build();
}
}
}
return fieldValuesMap;
}

public String getFieldValue(String fieldName) {
return getFieldValuesMap().get(fieldName);
}

@Override
public String toString() {
return PATH_TEMPLATE.instantiate(
"project", project, "database", database, "document", document, "any_path", anyPath);
}

/** Builder for AnyPathName. */
public static class Builder {

private String project;
private String database;
private String document;
private String anyPath;

public String getProject() {
return project;
}

public String getDatabase() {
return database;
}

public String getDocument() {
return document;
}

public String getAnyPath() {
return anyPath;
}

public Builder setProject(String project) {
this.project = project;
return this;
}

public Builder setDatabase(String database) {
this.database = database;
return this;
}

public Builder setDocument(String document) {
this.document = document;
return this;
}

public Builder setAnyPath(String anyPath) {
this.anyPath = anyPath;
return this;
}

private Builder() {}

private Builder(AnyPathName anyPathName) {
project = anyPathName.project;
database = anyPathName.database;
document = anyPathName.document;
anyPath = anyPathName.anyPath;
}

public AnyPathName build() {
return new AnyPathName(this);
}
}

@Override
public boolean equals(Object o) {
if (o == this) {
return true;
}
if (o instanceof AnyPathName) {
AnyPathName that = (AnyPathName) o;
return (this.project.equals(that.project))
&& (this.database.equals(that.database))
&& (this.document.equals(that.document))
&& (this.anyPath.equals(that.anyPath));
}
return false;
}

@Override
public int hashCode() {
int h = 1;
h *= 1000003;
h ^= project.hashCode();
h *= 1000003;
h ^= database.hashCode();
h *= 1000003;
h ^= document.hashCode();
h *= 1000003;
h ^= anyPath.hashCode();
return h;
}
}
Loading

0 comments on commit 7fc4b3b

Please sign in to comment.