From b5454afb4e5f52a1deafdc33be4d944d5a854398 Mon Sep 17 00:00:00 2001 From: viambot Date: Thu, 16 May 2024 20:57:24 +0000 Subject: [PATCH] [WORKFLOW] Updating protos from viamrobotics/api, commit: 1b8039699bbb7e17b6921cbac5bca7462ef78131 --- .../main/gen/com/viam/common/v1/Common.java | 238 +++++----- .../com/viam/service/motion/v1/Motion.java | 419 +++++++++++++++--- .../service/navigation/v1/Navigation.java | 96 ++-- .../gen/viam/app/packages/v1/Packages.java | 88 +++- core/sdk/src/main/resources/protofds/viam.api | Bin 496793 -> 499464 bytes 5 files changed, 633 insertions(+), 208 deletions(-) diff --git a/core/sdk/src/main/gen/com/viam/common/v1/Common.java b/core/sdk/src/main/gen/com/viam/common/v1/Common.java index 35c1af36e..41b00f347 100644 --- a/core/sdk/src/main/gen/com/viam/common/v1/Common.java +++ b/core/sdk/src/main/gen/com/viam/common/v1/Common.java @@ -6058,13 +6058,13 @@ public static com.google.protobuf.Parser parser() { } } - public interface GeoObstacleOrBuilder extends - // @@protoc_insertion_point(interface_extends:viam.common.v1.GeoObstacle) + public interface GeoGeometryOrBuilder extends + // @@protoc_insertion_point(interface_extends:viam.common.v1.GeoGeometry) com.google.protobuf.MessageLiteOrBuilder { /** *
-     * Location of the obstacle
+     * Location of the geometry
      * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6073,7 +6073,7 @@ public interface GeoObstacleOrBuilder extends boolean hasLocation(); /** *
-     * Location of the obstacle
+     * Location of the geometry
      * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6083,7 +6083,7 @@ public interface GeoObstacleOrBuilder extends /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6092,7 +6092,7 @@ public interface GeoObstacleOrBuilder extends getGeometriesList(); /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6100,7 +6100,7 @@ public interface GeoObstacleOrBuilder extends com.viam.common.v1.Common.Geometry getGeometries(int index); /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6109,18 +6109,17 @@ public interface GeoObstacleOrBuilder extends } /** *
-   * GeoObstacle contains information about the geometric structure of an obstacle and the location of the obstacle,
-   * captured in latitude and longitude.
+   * GeoGeometry contains information describing Geometry(s) that is located at a GeoPoint
    * 
* - * Protobuf type {@code viam.common.v1.GeoObstacle} + * Protobuf type {@code viam.common.v1.GeoGeometry} */ - public static final class GeoObstacle extends + public static final class GeoGeometry extends com.google.protobuf.GeneratedMessageLite< - GeoObstacle, GeoObstacle.Builder> implements - // @@protoc_insertion_point(message_implements:viam.common.v1.GeoObstacle) - GeoObstacleOrBuilder { - private GeoObstacle() { + GeoGeometry, GeoGeometry.Builder> implements + // @@protoc_insertion_point(message_implements:viam.common.v1.GeoGeometry) + GeoGeometryOrBuilder { + private GeoGeometry() { geometries_ = emptyProtobufList(); } private int bitField0_; @@ -6128,7 +6127,7 @@ private GeoObstacle() { private com.viam.common.v1.Common.GeoPoint location_; /** *
-     * Location of the obstacle
+     * Location of the geometry
      * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6139,7 +6138,7 @@ public boolean hasLocation() { } /** *
-     * Location of the obstacle
+     * Location of the geometry
      * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6150,7 +6149,7 @@ public com.viam.common.v1.Common.GeoPoint getLocation() { } /** *
-     * Location of the obstacle
+     * Location of the geometry
      * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6162,7 +6161,7 @@ private void setLocation(com.viam.common.v1.Common.GeoPoint value) { } /** *
-     * Location of the obstacle
+     * Location of the geometry
      * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6181,7 +6180,7 @@ private void mergeLocation(com.viam.common.v1.Common.GeoPoint value) { } /** *
-     * Location of the obstacle
+     * Location of the geometry
      * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6194,7 +6193,7 @@ private void mergeLocation(com.viam.common.v1.Common.GeoPoint value) { private com.google.protobuf.Internal.ProtobufList geometries_; /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6205,7 +6204,7 @@ public java.util.List getGeometriesList() { } /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6216,7 +6215,7 @@ public java.util.List getGeometriesList() { } /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6227,7 +6226,7 @@ public int getGeometriesCount() { } /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6238,7 +6237,7 @@ public com.viam.common.v1.Common.Geometry getGeometries(int index) { } /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6257,7 +6256,7 @@ private void ensureGeometriesIsMutable() { /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6270,7 +6269,7 @@ private void setGeometries( } /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6282,7 +6281,7 @@ private void addGeometries(com.viam.common.v1.Common.Geometry value) { } /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6295,7 +6294,7 @@ private void addGeometries( } /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6308,7 +6307,7 @@ private void addAllGeometries( } /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6318,7 +6317,7 @@ private void clearGeometries() { } /** *
-     * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+     * Geometries associated with the location, where embedded Pose data is with respect to the specified location
      * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6328,50 +6327,50 @@ private void removeGeometries(int index) { geometries_.remove(index); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom( + public static com.viam.common.v1.Common.GeoGeometry parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return com.google.protobuf.GeneratedMessageLite.parseFrom( DEFAULT_INSTANCE, data); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom( + public static com.viam.common.v1.Common.GeoGeometry parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return com.google.protobuf.GeneratedMessageLite.parseFrom( DEFAULT_INSTANCE, data, extensionRegistry); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom( + public static com.viam.common.v1.Common.GeoGeometry parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return com.google.protobuf.GeneratedMessageLite.parseFrom( DEFAULT_INSTANCE, data); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom( + public static com.viam.common.v1.Common.GeoGeometry parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return com.google.protobuf.GeneratedMessageLite.parseFrom( DEFAULT_INSTANCE, data, extensionRegistry); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom(byte[] data) + public static com.viam.common.v1.Common.GeoGeometry parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return com.google.protobuf.GeneratedMessageLite.parseFrom( DEFAULT_INSTANCE, data); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom( + public static com.viam.common.v1.Common.GeoGeometry parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return com.google.protobuf.GeneratedMessageLite.parseFrom( DEFAULT_INSTANCE, data, extensionRegistry); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom(java.io.InputStream input) + public static com.viam.common.v1.Common.GeoGeometry parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageLite.parseFrom( DEFAULT_INSTANCE, input); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom( + public static com.viam.common.v1.Common.GeoGeometry parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -6379,24 +6378,24 @@ public static com.viam.common.v1.Common.GeoObstacle parseFrom( DEFAULT_INSTANCE, input, extensionRegistry); } - public static com.viam.common.v1.Common.GeoObstacle parseDelimitedFrom(java.io.InputStream input) + public static com.viam.common.v1.Common.GeoGeometry parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return parseDelimitedFrom(DEFAULT_INSTANCE, input); } - public static com.viam.common.v1.Common.GeoObstacle parseDelimitedFrom( + public static com.viam.common.v1.Common.GeoGeometry parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom( + public static com.viam.common.v1.Common.GeoGeometry parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageLite.parseFrom( DEFAULT_INSTANCE, input); } - public static com.viam.common.v1.Common.GeoObstacle parseFrom( + public static com.viam.common.v1.Common.GeoGeometry parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -6407,24 +6406,23 @@ public static com.viam.common.v1.Common.GeoObstacle parseFrom( public static Builder newBuilder() { return (Builder) DEFAULT_INSTANCE.createBuilder(); } - public static Builder newBuilder(com.viam.common.v1.Common.GeoObstacle prototype) { + public static Builder newBuilder(com.viam.common.v1.Common.GeoGeometry prototype) { return DEFAULT_INSTANCE.createBuilder(prototype); } /** *
-     * GeoObstacle contains information about the geometric structure of an obstacle and the location of the obstacle,
-     * captured in latitude and longitude.
+     * GeoGeometry contains information describing Geometry(s) that is located at a GeoPoint
      * 
* - * Protobuf type {@code viam.common.v1.GeoObstacle} + * Protobuf type {@code viam.common.v1.GeoGeometry} */ public static final class Builder extends com.google.protobuf.GeneratedMessageLite.Builder< - com.viam.common.v1.Common.GeoObstacle, Builder> implements - // @@protoc_insertion_point(builder_implements:viam.common.v1.GeoObstacle) - com.viam.common.v1.Common.GeoObstacleOrBuilder { - // Construct using com.viam.common.v1.Common.GeoObstacle.newBuilder() + com.viam.common.v1.Common.GeoGeometry, Builder> implements + // @@protoc_insertion_point(builder_implements:viam.common.v1.GeoGeometry) + com.viam.common.v1.Common.GeoGeometryOrBuilder { + // Construct using com.viam.common.v1.Common.GeoGeometry.newBuilder() private Builder() { super(DEFAULT_INSTANCE); } @@ -6432,7 +6430,7 @@ private Builder() { /** *
-       * Location of the obstacle
+       * Location of the geometry
        * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6443,7 +6441,7 @@ public boolean hasLocation() { } /** *
-       * Location of the obstacle
+       * Location of the geometry
        * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6454,7 +6452,7 @@ public com.viam.common.v1.Common.GeoPoint getLocation() { } /** *
-       * Location of the obstacle
+       * Location of the geometry
        * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6466,7 +6464,7 @@ public Builder setLocation(com.viam.common.v1.Common.GeoPoint value) { } /** *
-       * Location of the obstacle
+       * Location of the geometry
        * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6479,7 +6477,7 @@ public Builder setLocation( } /** *
-       * Location of the obstacle
+       * Location of the geometry
        * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6491,7 +6489,7 @@ public Builder mergeLocation(com.viam.common.v1.Common.GeoPoint value) { } /** *
-       * Location of the obstacle
+       * Location of the geometry
        * 
* * .viam.common.v1.GeoPoint location = 1 [json_name = "location"]; @@ -6503,7 +6501,7 @@ public Builder mergeLocation(com.viam.common.v1.Common.GeoPoint value) { /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6515,7 +6513,7 @@ public java.util.List getGeometriesList() { } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6525,7 +6523,7 @@ public int getGeometriesCount() { return instance.getGeometriesCount(); }/** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6536,7 +6534,7 @@ public com.viam.common.v1.Common.Geometry getGeometries(int index) { } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6549,7 +6547,7 @@ public Builder setGeometries( } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6563,7 +6561,7 @@ public Builder setGeometries( } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6575,7 +6573,7 @@ public Builder addGeometries(com.viam.common.v1.Common.Geometry value) { } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6588,7 +6586,7 @@ public Builder addGeometries( } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6601,7 +6599,7 @@ public Builder addGeometries( } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6615,7 +6613,7 @@ public Builder addGeometries( } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6628,7 +6626,7 @@ public Builder addAllGeometries( } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6640,7 +6638,7 @@ public Builder clearGeometries() { } /** *
-       * Geometries that describe the obstacle, where embedded Pose data is with respect to the specified location
+       * Geometries associated with the location, where embedded Pose data is with respect to the specified location
        * 
* * repeated .viam.common.v1.Geometry geometries = 2 [json_name = "geometries"]; @@ -6651,7 +6649,7 @@ public Builder removeGeometries(int index) { return this; } - // @@protoc_insertion_point(builder_scope:viam.common.v1.GeoObstacle) + // @@protoc_insertion_point(builder_scope:viam.common.v1.GeoGeometry) } @java.lang.Override @java.lang.SuppressWarnings({"unchecked", "fallthrough"}) @@ -6660,7 +6658,7 @@ protected final java.lang.Object dynamicMethod( java.lang.Object arg0, java.lang.Object arg1) { switch (method) { case NEW_MUTABLE_INSTANCE: { - return new com.viam.common.v1.Common.GeoObstacle(); + return new com.viam.common.v1.Common.GeoGeometry(); } case NEW_BUILDER: { return new Builder(); @@ -6682,13 +6680,13 @@ protected final java.lang.Object dynamicMethod( return DEFAULT_INSTANCE; } case GET_PARSER: { - com.google.protobuf.Parser parser = PARSER; + com.google.protobuf.Parser parser = PARSER; if (parser == null) { - synchronized (com.viam.common.v1.Common.GeoObstacle.class) { + synchronized (com.viam.common.v1.Common.GeoGeometry.class) { parser = PARSER; if (parser == null) { parser = - new DefaultInstanceBasedParser( + new DefaultInstanceBasedParser( DEFAULT_INSTANCE); PARSER = parser; } @@ -6707,24 +6705,24 @@ protected final java.lang.Object dynamicMethod( } - // @@protoc_insertion_point(class_scope:viam.common.v1.GeoObstacle) - private static final com.viam.common.v1.Common.GeoObstacle DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:viam.common.v1.GeoGeometry) + private static final com.viam.common.v1.Common.GeoGeometry DEFAULT_INSTANCE; static { - GeoObstacle defaultInstance = new GeoObstacle(); + GeoGeometry defaultInstance = new GeoGeometry(); // New instances are implicitly immutable so no need to make // immutable. DEFAULT_INSTANCE = defaultInstance; com.google.protobuf.GeneratedMessageLite.registerDefaultInstance( - GeoObstacle.class, defaultInstance); + GeoGeometry.class, defaultInstance); } - public static com.viam.common.v1.Common.GeoObstacle getDefaultInstance() { + public static com.viam.common.v1.Common.GeoGeometry getDefaultInstance() { return DEFAULT_INSTANCE; } - private static volatile com.google.protobuf.Parser PARSER; + private static volatile com.google.protobuf.Parser PARSER; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return DEFAULT_INSTANCE.getParserForType(); } } @@ -7380,7 +7378,8 @@ public interface WorldStateOrBuilder extends /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7389,7 +7388,8 @@ public interface WorldStateOrBuilder extends getTransformsList(); /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7397,7 +7397,8 @@ public interface WorldStateOrBuilder extends com.viam.common.v1.Common.Transform getTransforms(int index); /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7564,7 +7565,8 @@ private void removeObstacles(int index) { private com.google.protobuf.Internal.ProtobufList transforms_; /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7575,7 +7577,8 @@ public java.util.List getTransformsList() { } /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7586,7 +7589,8 @@ public java.util.List getTransformsList() { } /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7597,7 +7601,8 @@ public int getTransformsCount() { } /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7608,7 +7613,8 @@ public com.viam.common.v1.Common.Transform getTransforms(int index) { } /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7627,7 +7633,8 @@ private void ensureTransformsIsMutable() { /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7640,7 +7647,8 @@ private void setTransforms( } /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7652,7 +7660,8 @@ private void addTransforms(com.viam.common.v1.Common.Transform value) { } /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7665,7 +7674,8 @@ private void addTransforms( } /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7678,7 +7688,8 @@ private void addAllTransforms( } /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7688,7 +7699,8 @@ private void clearTransforms() { } /** *
-     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+     * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+     * another, or to attach moving geometries to the frame system. This field is optional
      * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7953,7 +7965,8 @@ public Builder removeObstacles(int index) { /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7965,7 +7978,8 @@ public java.util.List getTransformsList() { } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7975,7 +7989,8 @@ public int getTransformsCount() { return instance.getTransformsCount(); }/** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7986,7 +8001,8 @@ public com.viam.common.v1.Common.Transform getTransforms(int index) { } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -7999,7 +8015,8 @@ public Builder setTransforms( } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -8013,7 +8030,8 @@ public Builder setTransforms( } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -8025,7 +8043,8 @@ public Builder addTransforms(com.viam.common.v1.Common.Transform value) { } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -8038,7 +8057,8 @@ public Builder addTransforms( } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -8051,7 +8071,8 @@ public Builder addTransforms( } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -8065,7 +8086,8 @@ public Builder addTransforms( } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -8078,7 +8100,8 @@ public Builder addAllTransforms( } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; @@ -8090,7 +8113,8 @@ public Builder clearTransforms() { } /** *
-       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to another, or to attach moving geometries to the frame system. This field is optional
+       * a list of Transforms, optionally with geometries. Used as supplemental transforms to transform a pose from one reference frame to
+       * another, or to attach moving geometries to the frame system. This field is optional
        * 
* * repeated .viam.common.v1.Transform transforms = 3 [json_name = "transforms"]; diff --git a/core/sdk/src/main/gen/com/viam/service/motion/v1/Motion.java b/core/sdk/src/main/gen/com/viam/service/motion/v1/Motion.java index 5f71a59cf..84502995f 100644 --- a/core/sdk/src/main/gen/com/viam/service/motion/v1/Motion.java +++ b/core/sdk/src/main/gen/com/viam/service/motion/v1/Motion.java @@ -4966,24 +4966,24 @@ public interface MoveOnGlobeRequestOrBuilder extends * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ - java.util.List + java.util.List getObstaclesList(); /** *
      * Obstacles to be considered for motion planning
      * 
* - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ - com.viam.common.v1.Common.GeoObstacle getObstacles(int index); + com.viam.common.v1.Common.GeoGeometry getObstacles(int index); /** *
      * Obstacles to be considered for motion planning
      * 
* - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ int getObstaclesCount(); @@ -5006,6 +5006,32 @@ public interface MoveOnGlobeRequestOrBuilder extends */ com.viam.service.motion.v1.Motion.MotionConfiguration getMotionConfiguration(); + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + java.util.List + getBoundingRegionsList(); + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + com.viam.common.v1.Common.GeoGeometry getBoundingRegions(int index); + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + int getBoundingRegionsCount(); + /** *
      * Additional arguments to the method
@@ -5036,6 +5062,7 @@ public  static final class MoveOnGlobeRequest extends
     private MoveOnGlobeRequest() {
       name_ = "";
       obstacles_ = emptyProtobufList();
+      boundingRegions_ = emptyProtobufList();
     }
     private int bitField0_;
     public static final int NAME_FIELD_NUMBER = 1;
@@ -5354,16 +5381,16 @@ private void mergeMovementSensorName(com.viam.common.v1.Common.ResourceName valu
     }
 
     public static final int OBSTACLES_FIELD_NUMBER = 6;
-    private com.google.protobuf.Internal.ProtobufList obstacles_;
+    private com.google.protobuf.Internal.ProtobufList obstacles_;
     /**
      * 
      * Obstacles to be considered for motion planning
      * 
* - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ @java.lang.Override - public java.util.List getObstaclesList() { + public java.util.List getObstaclesList() { return obstacles_; } /** @@ -5371,9 +5398,9 @@ public java.util.List getObstaclesList() * Obstacles to be considered for motion planning *
* - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ - public java.util.List + public java.util.List getObstaclesOrBuilderList() { return obstacles_; } @@ -5382,7 +5409,7 @@ public java.util.List getObstaclesList() * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ @java.lang.Override public int getObstaclesCount() { @@ -5393,10 +5420,10 @@ public int getObstaclesCount() { * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ @java.lang.Override - public com.viam.common.v1.Common.GeoObstacle getObstacles(int index) { + public com.viam.common.v1.Common.GeoGeometry getObstacles(int index) { return obstacles_.get(index); } /** @@ -5404,14 +5431,14 @@ public com.viam.common.v1.Common.GeoObstacle getObstacles(int index) { * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ - public com.viam.common.v1.Common.GeoObstacleOrBuilder getObstaclesOrBuilder( + public com.viam.common.v1.Common.GeoGeometryOrBuilder getObstaclesOrBuilder( int index) { return obstacles_.get(index); } private void ensureObstaclesIsMutable() { - com.google.protobuf.Internal.ProtobufList tmp = obstacles_; + com.google.protobuf.Internal.ProtobufList tmp = obstacles_; if (!tmp.isModifiable()) { obstacles_ = com.google.protobuf.GeneratedMessageLite.mutableCopy(tmp); @@ -5423,10 +5450,10 @@ private void ensureObstaclesIsMutable() { * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ private void setObstacles( - int index, com.viam.common.v1.Common.GeoObstacle value) { + int index, com.viam.common.v1.Common.GeoGeometry value) { value.getClass(); ensureObstaclesIsMutable(); obstacles_.set(index, value); @@ -5436,9 +5463,9 @@ private void setObstacles( * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ - private void addObstacles(com.viam.common.v1.Common.GeoObstacle value) { + private void addObstacles(com.viam.common.v1.Common.GeoGeometry value) { value.getClass(); ensureObstaclesIsMutable(); obstacles_.add(value); @@ -5448,10 +5475,10 @@ private void addObstacles(com.viam.common.v1.Common.GeoObstacle value) { * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ private void addObstacles( - int index, com.viam.common.v1.Common.GeoObstacle value) { + int index, com.viam.common.v1.Common.GeoGeometry value) { value.getClass(); ensureObstaclesIsMutable(); obstacles_.add(index, value); @@ -5461,10 +5488,10 @@ private void addObstacles( * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ private void addAllObstacles( - java.lang.Iterable values) { + java.lang.Iterable values) { ensureObstaclesIsMutable(); com.google.protobuf.AbstractMessageLite.addAll( values, obstacles_); @@ -5474,7 +5501,7 @@ private void addAllObstacles( * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ private void clearObstacles() { obstacles_ = emptyProtobufList(); @@ -5484,7 +5511,7 @@ private void clearObstacles() { * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ private void removeObstacles(int index) { ensureObstaclesIsMutable(); @@ -5557,6 +5584,144 @@ private void mergeMotionConfiguration(com.viam.service.motion.v1.Motion.MotionCo bitField0_ = (bitField0_ & ~0x00000010); } + public static final int BOUNDING_REGIONS_FIELD_NUMBER = 8; + private com.google.protobuf.Internal.ProtobufList boundingRegions_; + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + @java.lang.Override + public java.util.List getBoundingRegionsList() { + return boundingRegions_; + } + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public java.util.List + getBoundingRegionsOrBuilderList() { + return boundingRegions_; + } + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + @java.lang.Override + public int getBoundingRegionsCount() { + return boundingRegions_.size(); + } + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + @java.lang.Override + public com.viam.common.v1.Common.GeoGeometry getBoundingRegions(int index) { + return boundingRegions_.get(index); + } + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public com.viam.common.v1.Common.GeoGeometryOrBuilder getBoundingRegionsOrBuilder( + int index) { + return boundingRegions_.get(index); + } + private void ensureBoundingRegionsIsMutable() { + com.google.protobuf.Internal.ProtobufList tmp = boundingRegions_; + if (!tmp.isModifiable()) { + boundingRegions_ = + com.google.protobuf.GeneratedMessageLite.mutableCopy(tmp); + } + } + + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + private void setBoundingRegions( + int index, com.viam.common.v1.Common.GeoGeometry value) { + value.getClass(); + ensureBoundingRegionsIsMutable(); + boundingRegions_.set(index, value); + } + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + private void addBoundingRegions(com.viam.common.v1.Common.GeoGeometry value) { + value.getClass(); + ensureBoundingRegionsIsMutable(); + boundingRegions_.add(value); + } + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + private void addBoundingRegions( + int index, com.viam.common.v1.Common.GeoGeometry value) { + value.getClass(); + ensureBoundingRegionsIsMutable(); + boundingRegions_.add(index, value); + } + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + private void addAllBoundingRegions( + java.lang.Iterable values) { + ensureBoundingRegionsIsMutable(); + com.google.protobuf.AbstractMessageLite.addAll( + values, boundingRegions_); + } + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + private void clearBoundingRegions() { + boundingRegions_ = emptyProtobufList(); + } + /** + *
+     * Set of obstacles which the robot must remain within while navigating
+     * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + private void removeBoundingRegions(int index) { + ensureBoundingRegionsIsMutable(); + boundingRegions_.remove(index); + } + public static final int EXTRA_FIELD_NUMBER = 99; private com.google.protobuf.Struct extra_; /** @@ -6059,10 +6224,10 @@ public Builder mergeMovementSensorName(com.viam.common.v1.Common.ResourceName va * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ @java.lang.Override - public java.util.List getObstaclesList() { + public java.util.List getObstaclesList() { return java.util.Collections.unmodifiableList( instance.getObstaclesList()); } @@ -6071,7 +6236,7 @@ public java.util.List getObstaclesList() * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ @java.lang.Override public int getObstaclesCount() { @@ -6081,10 +6246,10 @@ public int getObstaclesCount() { * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ @java.lang.Override - public com.viam.common.v1.Common.GeoObstacle getObstacles(int index) { + public com.viam.common.v1.Common.GeoGeometry getObstacles(int index) { return instance.getObstacles(index); } /** @@ -6092,10 +6257,10 @@ public com.viam.common.v1.Common.GeoObstacle getObstacles(int index) { * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ public Builder setObstacles( - int index, com.viam.common.v1.Common.GeoObstacle value) { + int index, com.viam.common.v1.Common.GeoGeometry value) { copyOnWrite(); instance.setObstacles(index, value); return this; @@ -6105,10 +6270,10 @@ public Builder setObstacles( * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ public Builder setObstacles( - int index, com.viam.common.v1.Common.GeoObstacle.Builder builderForValue) { + int index, com.viam.common.v1.Common.GeoGeometry.Builder builderForValue) { copyOnWrite(); instance.setObstacles(index, builderForValue.build()); @@ -6119,9 +6284,9 @@ public Builder setObstacles( * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ - public Builder addObstacles(com.viam.common.v1.Common.GeoObstacle value) { + public Builder addObstacles(com.viam.common.v1.Common.GeoGeometry value) { copyOnWrite(); instance.addObstacles(value); return this; @@ -6131,10 +6296,10 @@ public Builder addObstacles(com.viam.common.v1.Common.GeoObstacle value) { * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ public Builder addObstacles( - int index, com.viam.common.v1.Common.GeoObstacle value) { + int index, com.viam.common.v1.Common.GeoGeometry value) { copyOnWrite(); instance.addObstacles(index, value); return this; @@ -6144,10 +6309,10 @@ public Builder addObstacles( * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ public Builder addObstacles( - com.viam.common.v1.Common.GeoObstacle.Builder builderForValue) { + com.viam.common.v1.Common.GeoGeometry.Builder builderForValue) { copyOnWrite(); instance.addObstacles(builderForValue.build()); return this; @@ -6157,10 +6322,10 @@ public Builder addObstacles( * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ public Builder addObstacles( - int index, com.viam.common.v1.Common.GeoObstacle.Builder builderForValue) { + int index, com.viam.common.v1.Common.GeoGeometry.Builder builderForValue) { copyOnWrite(); instance.addObstacles(index, builderForValue.build()); @@ -6171,10 +6336,10 @@ public Builder addObstacles( * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ public Builder addAllObstacles( - java.lang.Iterable values) { + java.lang.Iterable values) { copyOnWrite(); instance.addAllObstacles(values); return this; @@ -6184,7 +6349,7 @@ public Builder addAllObstacles( * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ public Builder clearObstacles() { copyOnWrite(); @@ -6196,7 +6361,7 @@ public Builder clearObstacles() { * Obstacles to be considered for motion planning * * - * repeated .viam.common.v1.GeoObstacle obstacles = 6 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 6 [json_name = "obstacles"]; */ public Builder removeObstacles(int index) { copyOnWrite(); @@ -6275,6 +6440,156 @@ public Builder mergeMotionConfiguration(com.viam.service.motion.v1.Motion.Motion return this; } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + @java.lang.Override + public java.util.List getBoundingRegionsList() { + return java.util.Collections.unmodifiableList( + instance.getBoundingRegionsList()); + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + @java.lang.Override + public int getBoundingRegionsCount() { + return instance.getBoundingRegionsCount(); + }/** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + @java.lang.Override + public com.viam.common.v1.Common.GeoGeometry getBoundingRegions(int index) { + return instance.getBoundingRegions(index); + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public Builder setBoundingRegions( + int index, com.viam.common.v1.Common.GeoGeometry value) { + copyOnWrite(); + instance.setBoundingRegions(index, value); + return this; + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public Builder setBoundingRegions( + int index, com.viam.common.v1.Common.GeoGeometry.Builder builderForValue) { + copyOnWrite(); + instance.setBoundingRegions(index, + builderForValue.build()); + return this; + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public Builder addBoundingRegions(com.viam.common.v1.Common.GeoGeometry value) { + copyOnWrite(); + instance.addBoundingRegions(value); + return this; + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public Builder addBoundingRegions( + int index, com.viam.common.v1.Common.GeoGeometry value) { + copyOnWrite(); + instance.addBoundingRegions(index, value); + return this; + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public Builder addBoundingRegions( + com.viam.common.v1.Common.GeoGeometry.Builder builderForValue) { + copyOnWrite(); + instance.addBoundingRegions(builderForValue.build()); + return this; + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public Builder addBoundingRegions( + int index, com.viam.common.v1.Common.GeoGeometry.Builder builderForValue) { + copyOnWrite(); + instance.addBoundingRegions(index, + builderForValue.build()); + return this; + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public Builder addAllBoundingRegions( + java.lang.Iterable values) { + copyOnWrite(); + instance.addAllBoundingRegions(values); + return this; + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public Builder clearBoundingRegions() { + copyOnWrite(); + instance.clearBoundingRegions(); + return this; + } + /** + *
+       * Set of obstacles which the robot must remain within while navigating
+       * 
+ * + * repeated .viam.common.v1.GeoGeometry bounding_regions = 8 [json_name = "boundingRegions"]; + */ + public Builder removeBoundingRegions(int index) { + copyOnWrite(); + instance.removeBoundingRegions(index); + return this; + } + /** *
        * Additional arguments to the method
@@ -6369,14 +6684,16 @@ protected final java.lang.Object dynamicMethod(
               "componentName_",
               "movementSensorName_",
               "obstacles_",
-              com.viam.common.v1.Common.GeoObstacle.class,
+              com.viam.common.v1.Common.GeoGeometry.class,
               "motionConfiguration_",
+              "boundingRegions_",
+              com.viam.common.v1.Common.GeoGeometry.class,
               "extra_",
             };
             java.lang.String info =
-                "\u0000\b\u0000\u0001\u0001c\b\u0000\u0001\u0000\u0001\u0208\u0002\u1009\u0000\u0003" +
-                "\u1000\u0001\u0004\u1009\u0002\u0005\u1009\u0003\u0006\u001b\u0007\u1009\u0004c\u1009" +
-                "\u0005";
+                "\u0000\t\u0000\u0001\u0001c\t\u0000\u0002\u0000\u0001\u0208\u0002\u1009\u0000\u0003" +
+                "\u1000\u0001\u0004\u1009\u0002\u0005\u1009\u0003\u0006\u001b\u0007\u1009\u0004\b" +
+                "\u001bc\u1009\u0005";
             return newMessageInfo(DEFAULT_INSTANCE, info, objects);
         }
         // fall through
diff --git a/core/sdk/src/main/gen/com/viam/service/navigation/v1/Navigation.java b/core/sdk/src/main/gen/com/viam/service/navigation/v1/Navigation.java
index 9ac74310b..1039a2058 100644
--- a/core/sdk/src/main/gen/com/viam/service/navigation/v1/Navigation.java
+++ b/core/sdk/src/main/gen/com/viam/service/navigation/v1/Navigation.java
@@ -5751,24 +5751,24 @@ public interface GetObstaclesResponseOrBuilder extends
      * List of all known geometries
      * 
* - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ - java.util.List + java.util.List getObstaclesList(); /** *
      * List of all known geometries
      * 
* - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ - com.viam.common.v1.Common.GeoObstacle getObstacles(int index); + com.viam.common.v1.Common.GeoGeometry getObstacles(int index); /** *
      * List of all known geometries
      * 
* - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ int getObstaclesCount(); } @@ -5784,16 +5784,16 @@ private GetObstaclesResponse() { obstacles_ = emptyProtobufList(); } public static final int OBSTACLES_FIELD_NUMBER = 1; - private com.google.protobuf.Internal.ProtobufList obstacles_; + private com.google.protobuf.Internal.ProtobufList obstacles_; /** *
      * List of all known geometries
      * 
* - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ @java.lang.Override - public java.util.List getObstaclesList() { + public java.util.List getObstaclesList() { return obstacles_; } /** @@ -5801,9 +5801,9 @@ public java.util.List getObstaclesList() * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ - public java.util.List + public java.util.List getObstaclesOrBuilderList() { return obstacles_; } @@ -5812,7 +5812,7 @@ public java.util.List getObstaclesList() * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ @java.lang.Override public int getObstaclesCount() { @@ -5823,10 +5823,10 @@ public int getObstaclesCount() { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ @java.lang.Override - public com.viam.common.v1.Common.GeoObstacle getObstacles(int index) { + public com.viam.common.v1.Common.GeoGeometry getObstacles(int index) { return obstacles_.get(index); } /** @@ -5834,14 +5834,14 @@ public com.viam.common.v1.Common.GeoObstacle getObstacles(int index) { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ - public com.viam.common.v1.Common.GeoObstacleOrBuilder getObstaclesOrBuilder( + public com.viam.common.v1.Common.GeoGeometryOrBuilder getObstaclesOrBuilder( int index) { return obstacles_.get(index); } private void ensureObstaclesIsMutable() { - com.google.protobuf.Internal.ProtobufList tmp = obstacles_; + com.google.protobuf.Internal.ProtobufList tmp = obstacles_; if (!tmp.isModifiable()) { obstacles_ = com.google.protobuf.GeneratedMessageLite.mutableCopy(tmp); @@ -5853,10 +5853,10 @@ private void ensureObstaclesIsMutable() { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ private void setObstacles( - int index, com.viam.common.v1.Common.GeoObstacle value) { + int index, com.viam.common.v1.Common.GeoGeometry value) { value.getClass(); ensureObstaclesIsMutable(); obstacles_.set(index, value); @@ -5866,9 +5866,9 @@ private void setObstacles( * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ - private void addObstacles(com.viam.common.v1.Common.GeoObstacle value) { + private void addObstacles(com.viam.common.v1.Common.GeoGeometry value) { value.getClass(); ensureObstaclesIsMutable(); obstacles_.add(value); @@ -5878,10 +5878,10 @@ private void addObstacles(com.viam.common.v1.Common.GeoObstacle value) { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ private void addObstacles( - int index, com.viam.common.v1.Common.GeoObstacle value) { + int index, com.viam.common.v1.Common.GeoGeometry value) { value.getClass(); ensureObstaclesIsMutable(); obstacles_.add(index, value); @@ -5891,10 +5891,10 @@ private void addObstacles( * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ private void addAllObstacles( - java.lang.Iterable values) { + java.lang.Iterable values) { ensureObstaclesIsMutable(); com.google.protobuf.AbstractMessageLite.addAll( values, obstacles_); @@ -5904,7 +5904,7 @@ private void addAllObstacles( * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ private void clearObstacles() { obstacles_ = emptyProtobufList(); @@ -5914,7 +5914,7 @@ private void clearObstacles() { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ private void removeObstacles(int index) { ensureObstaclesIsMutable(); @@ -6023,10 +6023,10 @@ private Builder() { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ @java.lang.Override - public java.util.List getObstaclesList() { + public java.util.List getObstaclesList() { return java.util.Collections.unmodifiableList( instance.getObstaclesList()); } @@ -6035,7 +6035,7 @@ public java.util.List getObstaclesList() * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ @java.lang.Override public int getObstaclesCount() { @@ -6045,10 +6045,10 @@ public int getObstaclesCount() { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ @java.lang.Override - public com.viam.common.v1.Common.GeoObstacle getObstacles(int index) { + public com.viam.common.v1.Common.GeoGeometry getObstacles(int index) { return instance.getObstacles(index); } /** @@ -6056,10 +6056,10 @@ public com.viam.common.v1.Common.GeoObstacle getObstacles(int index) { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ public Builder setObstacles( - int index, com.viam.common.v1.Common.GeoObstacle value) { + int index, com.viam.common.v1.Common.GeoGeometry value) { copyOnWrite(); instance.setObstacles(index, value); return this; @@ -6069,10 +6069,10 @@ public Builder setObstacles( * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ public Builder setObstacles( - int index, com.viam.common.v1.Common.GeoObstacle.Builder builderForValue) { + int index, com.viam.common.v1.Common.GeoGeometry.Builder builderForValue) { copyOnWrite(); instance.setObstacles(index, builderForValue.build()); @@ -6083,9 +6083,9 @@ public Builder setObstacles( * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ - public Builder addObstacles(com.viam.common.v1.Common.GeoObstacle value) { + public Builder addObstacles(com.viam.common.v1.Common.GeoGeometry value) { copyOnWrite(); instance.addObstacles(value); return this; @@ -6095,10 +6095,10 @@ public Builder addObstacles(com.viam.common.v1.Common.GeoObstacle value) { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ public Builder addObstacles( - int index, com.viam.common.v1.Common.GeoObstacle value) { + int index, com.viam.common.v1.Common.GeoGeometry value) { copyOnWrite(); instance.addObstacles(index, value); return this; @@ -6108,10 +6108,10 @@ public Builder addObstacles( * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ public Builder addObstacles( - com.viam.common.v1.Common.GeoObstacle.Builder builderForValue) { + com.viam.common.v1.Common.GeoGeometry.Builder builderForValue) { copyOnWrite(); instance.addObstacles(builderForValue.build()); return this; @@ -6121,10 +6121,10 @@ public Builder addObstacles( * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ public Builder addObstacles( - int index, com.viam.common.v1.Common.GeoObstacle.Builder builderForValue) { + int index, com.viam.common.v1.Common.GeoGeometry.Builder builderForValue) { copyOnWrite(); instance.addObstacles(index, builderForValue.build()); @@ -6135,10 +6135,10 @@ public Builder addObstacles( * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ public Builder addAllObstacles( - java.lang.Iterable values) { + java.lang.Iterable values) { copyOnWrite(); instance.addAllObstacles(values); return this; @@ -6148,7 +6148,7 @@ public Builder addAllObstacles( * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ public Builder clearObstacles() { copyOnWrite(); @@ -6160,7 +6160,7 @@ public Builder clearObstacles() { * List of all known geometries * * - * repeated .viam.common.v1.GeoObstacle obstacles = 1 [json_name = "obstacles"]; + * repeated .viam.common.v1.GeoGeometry obstacles = 1 [json_name = "obstacles"]; */ public Builder removeObstacles(int index) { copyOnWrite(); @@ -6185,7 +6185,7 @@ protected final java.lang.Object dynamicMethod( case BUILD_MESSAGE_INFO: { java.lang.Object[] objects = new java.lang.Object[] { "obstacles_", - com.viam.common.v1.Common.GeoObstacle.class, + com.viam.common.v1.Common.GeoGeometry.class, }; java.lang.String info = "\u0000\u0001\u0000\u0000\u0001\u0001\u0001\u0000\u0001\u0000\u0001\u001b"; diff --git a/core/sdk/src/main/gen/viam/app/packages/v1/Packages.java b/core/sdk/src/main/gen/viam/app/packages/v1/Packages.java index c6fec1a3a..ae6a508fd 100644 --- a/core/sdk/src/main/gen/viam/app/packages/v1/Packages.java +++ b/core/sdk/src/main/gen/viam/app/packages/v1/Packages.java @@ -155,6 +155,17 @@ public interface FileInfoOrBuilder extends * @return The size. */ long getSize(); + + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + * @return Whether the isDirectory field is set. + */ + boolean hasIsDirectory(); + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + * @return The isDirectory. + */ + boolean getIsDirectory(); } /** * Protobuf type {@code viam.app.packages.v1.FileInfo} @@ -167,6 +178,7 @@ public static final class FileInfo extends private FileInfo() { name_ = ""; } + private int bitField0_; public static final int NAME_FIELD_NUMBER = 1; private java.lang.String name_; /** @@ -240,6 +252,40 @@ private void clearSize() { size_ = 0L; } + public static final int IS_DIRECTORY_FIELD_NUMBER = 3; + private boolean isDirectory_; + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + * @return Whether the isDirectory field is set. + */ + @java.lang.Override + public boolean hasIsDirectory() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + * @return The isDirectory. + */ + @java.lang.Override + public boolean getIsDirectory() { + return isDirectory_; + } + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + * @param value The isDirectory to set. + */ + private void setIsDirectory(boolean value) { + bitField0_ |= 0x00000001; + isDirectory_ = value; + } + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + */ + private void clearIsDirectory() { + bitField0_ = (bitField0_ & ~0x00000001); + isDirectory_ = false; + } + public static viam.app.packages.v1.Packages.FileInfo parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { @@ -414,6 +460,42 @@ public Builder clearSize() { return this; } + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + * @return Whether the isDirectory field is set. + */ + @java.lang.Override + public boolean hasIsDirectory() { + return instance.hasIsDirectory(); + } + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + * @return The isDirectory. + */ + @java.lang.Override + public boolean getIsDirectory() { + return instance.getIsDirectory(); + } + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + * @param value The isDirectory to set. + * @return This builder for chaining. + */ + public Builder setIsDirectory(boolean value) { + copyOnWrite(); + instance.setIsDirectory(value); + return this; + } + /** + * optional bool is_directory = 3 [json_name = "isDirectory"]; + * @return This builder for chaining. + */ + public Builder clearIsDirectory() { + copyOnWrite(); + instance.clearIsDirectory(); + return this; + } + // @@protoc_insertion_point(builder_scope:viam.app.packages.v1.FileInfo) } @java.lang.Override @@ -430,12 +512,14 @@ protected final java.lang.Object dynamicMethod( } case BUILD_MESSAGE_INFO: { java.lang.Object[] objects = new java.lang.Object[] { + "bitField0_", "name_", "size_", + "isDirectory_", }; java.lang.String info = - "\u0000\u0002\u0000\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\u0208\u0002\u0003" + - ""; + "\u0000\u0003\u0000\u0001\u0001\u0003\u0003\u0000\u0000\u0000\u0001\u0208\u0002\u0003" + + "\u0003\u1007\u0000"; return newMessageInfo(DEFAULT_INSTANCE, info, objects); } // fall through diff --git a/core/sdk/src/main/resources/protofds/viam.api b/core/sdk/src/main/resources/protofds/viam.api index 163ed9585d0ee059adea8d541752d58f4aecef26..0d51928f6494706a5f0f1b3d1b3a50c90330be02 100644 GIT binary patch delta 30938 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