TileProto.java

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: tile.proto

package androidx.wear.tiles.proto;

public final class TileProto {
  private TileProto() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }
  public interface TileOrBuilder extends
      // @@protoc_insertion_point(interface_extends:androidx.wear.tiles.proto.Tile)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <pre>
     * The resource version required for these tiles. This can be any
     * developer-defined string; it is only used to cache resources, and is passed
     * in ResourcesRequest if the system does not have a copy of the specified
     * resource version.
     * </pre>
     *
     * <code>string resources_version = 1;</code>
     * @return The resourcesVersion.
     */
    java.lang.String getResourcesVersion();
    /**
     * <pre>
     * The resource version required for these tiles. This can be any
     * developer-defined string; it is only used to cache resources, and is passed
     * in ResourcesRequest if the system does not have a copy of the specified
     * resource version.
     * </pre>
     *
     * <code>string resources_version = 1;</code>
     * @return The bytes for resourcesVersion.
     */
    com.google.protobuf.ByteString
        getResourcesVersionBytes();

    /**
     * <pre>
     * The tiles to show in the carousel, along with their validity periods.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
     * @return Whether the tileTimeline field is set.
     */
    boolean hasTileTimeline();
    /**
     * <pre>
     * The tiles to show in the carousel, along with their validity periods.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
     * @return The tileTimeline.
     */
    androidx.wear.protolayout.proto.TimelineProto.Timeline getTileTimeline();

    /**
     * <pre>
     * The schema version that this tile was built with.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
     * @return Whether the schemaVersion field is set.
     */
    boolean hasSchemaVersion();
    /**
     * <pre>
     * The schema version that this tile was built with.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
     * @return The schemaVersion.
     */
    androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo getSchemaVersion();

    /**
     * <pre>
     * How many milliseconds of elapsed time (**not** wall clock time) this tile
     * can be considered to be "fresh". The platform will attempt to refresh
     * your tile at some point in the future after this interval has lapsed. A
     * value of 0 here signifies that auto-refreshes should not be used (i.e. you
     * will manually request updates via TileService#getRequester).
     * This mechanism should not be used to update your tile more frequently than
     * once a minute, and the system may throttle your updates if you request
     * updates faster than this interval. This interval is also inexact; the
     * system will generally update your tile if it is on-screen, or about to be
     * on-screen, although this is not guaranteed due to system-level
     * optimizations.
     * </pre>
     *
     * <code>uint64 freshness_interval_millis = 4;</code>
     * @return The freshnessIntervalMillis.
     */
    long getFreshnessIntervalMillis();

    /**
     * <pre>
     * State for this tile.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
     * @return Whether the state field is set.
     */
    boolean hasState();
    /**
     * <pre>
     * State for this tile.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
     * @return The state.
     */
    androidx.wear.protolayout.proto.StateProto.State getState();

    /**
     * <pre>
     * How many milliseconds of elapsed time (**not** wall clock time) the state
     * for this tile can be considered to be fresh. The platform will attempt to
     * fetch new state at some point in the future after this interval has lapsed.
     * A value of 0 here signifies that auto-refreshes should not be used.
     * </pre>
     *
     * <code>uint64 state_freshness_interval_millis = 6;</code>
     * @return The stateFreshnessIntervalMillis.
     */
    long getStateFreshnessIntervalMillis();
  }
  /**
   * <pre>
   * A holder for a tile. This specifies the resources to use for this delivery
   * of the tile, and the timeline for the tile.
   * </pre>
   *
   * Protobuf type {@code androidx.wear.tiles.proto.Tile}
   */
  public  static final class Tile extends
      com.google.protobuf.GeneratedMessageLite<
          Tile, Tile.Builder> implements
      // @@protoc_insertion_point(message_implements:androidx.wear.tiles.proto.Tile)
      TileOrBuilder {
    private Tile() {
      resourcesVersion_ = "";
    }
    public static final int RESOURCES_VERSION_FIELD_NUMBER = 1;
    private java.lang.String resourcesVersion_;
    /**
     * <pre>
     * The resource version required for these tiles. This can be any
     * developer-defined string; it is only used to cache resources, and is passed
     * in ResourcesRequest if the system does not have a copy of the specified
     * resource version.
     * </pre>
     *
     * <code>string resources_version = 1;</code>
     * @return The resourcesVersion.
     */
    @java.lang.Override
    public java.lang.String getResourcesVersion() {
      return resourcesVersion_;
    }
    /**
     * <pre>
     * The resource version required for these tiles. This can be any
     * developer-defined string; it is only used to cache resources, and is passed
     * in ResourcesRequest if the system does not have a copy of the specified
     * resource version.
     * </pre>
     *
     * <code>string resources_version = 1;</code>
     * @return The bytes for resourcesVersion.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getResourcesVersionBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(resourcesVersion_);
    }
    /**
     * <pre>
     * The resource version required for these tiles. This can be any
     * developer-defined string; it is only used to cache resources, and is passed
     * in ResourcesRequest if the system does not have a copy of the specified
     * resource version.
     * </pre>
     *
     * <code>string resources_version = 1;</code>
     * @param value The resourcesVersion to set.
     */
    private void setResourcesVersion(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      resourcesVersion_ = value;
    }
    /**
     * <pre>
     * The resource version required for these tiles. This can be any
     * developer-defined string; it is only used to cache resources, and is passed
     * in ResourcesRequest if the system does not have a copy of the specified
     * resource version.
     * </pre>
     *
     * <code>string resources_version = 1;</code>
     */
    private void clearResourcesVersion() {
      
      resourcesVersion_ = getDefaultInstance().getResourcesVersion();
    }
    /**
     * <pre>
     * The resource version required for these tiles. This can be any
     * developer-defined string; it is only used to cache resources, and is passed
     * in ResourcesRequest if the system does not have a copy of the specified
     * resource version.
     * </pre>
     *
     * <code>string resources_version = 1;</code>
     * @param value The bytes for resourcesVersion to set.
     */
    private void setResourcesVersionBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      resourcesVersion_ = value.toStringUtf8();
      
    }

    public static final int TILE_TIMELINE_FIELD_NUMBER = 2;
    private androidx.wear.protolayout.proto.TimelineProto.Timeline tileTimeline_;
    /**
     * <pre>
     * The tiles to show in the carousel, along with their validity periods.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
     */
    @java.lang.Override
    public boolean hasTileTimeline() {
      return tileTimeline_ != null;
    }
    /**
     * <pre>
     * The tiles to show in the carousel, along with their validity periods.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
     */
    @java.lang.Override
    public androidx.wear.protolayout.proto.TimelineProto.Timeline getTileTimeline() {
      return tileTimeline_ == null ? androidx.wear.protolayout.proto.TimelineProto.Timeline.getDefaultInstance() : tileTimeline_;
    }
    /**
     * <pre>
     * The tiles to show in the carousel, along with their validity periods.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
     */
    private void setTileTimeline(androidx.wear.protolayout.proto.TimelineProto.Timeline value) {
      value.getClass();
  tileTimeline_ = value;
      
      }
    /**
     * <pre>
     * The tiles to show in the carousel, along with their validity periods.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeTileTimeline(androidx.wear.protolayout.proto.TimelineProto.Timeline value) {
      value.getClass();
  if (tileTimeline_ != null &&
          tileTimeline_ != androidx.wear.protolayout.proto.TimelineProto.Timeline.getDefaultInstance()) {
        tileTimeline_ =
          androidx.wear.protolayout.proto.TimelineProto.Timeline.newBuilder(tileTimeline_).mergeFrom(value).buildPartial();
      } else {
        tileTimeline_ = value;
      }
      
    }
    /**
     * <pre>
     * The tiles to show in the carousel, along with their validity periods.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
     */
    private void clearTileTimeline() {  tileTimeline_ = null;
      
    }

    public static final int SCHEMA_VERSION_FIELD_NUMBER = 3;
    private androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo schemaVersion_;
    /**
     * <pre>
     * The schema version that this tile was built with.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
     */
    @java.lang.Override
    public boolean hasSchemaVersion() {
      return schemaVersion_ != null;
    }
    /**
     * <pre>
     * The schema version that this tile was built with.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
     */
    @java.lang.Override
    public androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo getSchemaVersion() {
      return schemaVersion_ == null ? androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo.getDefaultInstance() : schemaVersion_;
    }
    /**
     * <pre>
     * The schema version that this tile was built with.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
     */
    private void setSchemaVersion(androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo value) {
      value.getClass();
  schemaVersion_ = value;
      
      }
    /**
     * <pre>
     * The schema version that this tile was built with.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeSchemaVersion(androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo value) {
      value.getClass();
  if (schemaVersion_ != null &&
          schemaVersion_ != androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo.getDefaultInstance()) {
        schemaVersion_ =
          androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo.newBuilder(schemaVersion_).mergeFrom(value).buildPartial();
      } else {
        schemaVersion_ = value;
      }
      
    }
    /**
     * <pre>
     * The schema version that this tile was built with.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
     */
    private void clearSchemaVersion() {  schemaVersion_ = null;
      
    }

    public static final int FRESHNESS_INTERVAL_MILLIS_FIELD_NUMBER = 4;
    private long freshnessIntervalMillis_;
    /**
     * <pre>
     * How many milliseconds of elapsed time (**not** wall clock time) this tile
     * can be considered to be "fresh". The platform will attempt to refresh
     * your tile at some point in the future after this interval has lapsed. A
     * value of 0 here signifies that auto-refreshes should not be used (i.e. you
     * will manually request updates via TileService#getRequester).
     * This mechanism should not be used to update your tile more frequently than
     * once a minute, and the system may throttle your updates if you request
     * updates faster than this interval. This interval is also inexact; the
     * system will generally update your tile if it is on-screen, or about to be
     * on-screen, although this is not guaranteed due to system-level
     * optimizations.
     * </pre>
     *
     * <code>uint64 freshness_interval_millis = 4;</code>
     * @return The freshnessIntervalMillis.
     */
    @java.lang.Override
    public long getFreshnessIntervalMillis() {
      return freshnessIntervalMillis_;
    }
    /**
     * <pre>
     * How many milliseconds of elapsed time (**not** wall clock time) this tile
     * can be considered to be "fresh". The platform will attempt to refresh
     * your tile at some point in the future after this interval has lapsed. A
     * value of 0 here signifies that auto-refreshes should not be used (i.e. you
     * will manually request updates via TileService#getRequester).
     * This mechanism should not be used to update your tile more frequently than
     * once a minute, and the system may throttle your updates if you request
     * updates faster than this interval. This interval is also inexact; the
     * system will generally update your tile if it is on-screen, or about to be
     * on-screen, although this is not guaranteed due to system-level
     * optimizations.
     * </pre>
     *
     * <code>uint64 freshness_interval_millis = 4;</code>
     * @param value The freshnessIntervalMillis to set.
     */
    private void setFreshnessIntervalMillis(long value) {
      
      freshnessIntervalMillis_ = value;
    }
    /**
     * <pre>
     * How many milliseconds of elapsed time (**not** wall clock time) this tile
     * can be considered to be "fresh". The platform will attempt to refresh
     * your tile at some point in the future after this interval has lapsed. A
     * value of 0 here signifies that auto-refreshes should not be used (i.e. you
     * will manually request updates via TileService#getRequester).
     * This mechanism should not be used to update your tile more frequently than
     * once a minute, and the system may throttle your updates if you request
     * updates faster than this interval. This interval is also inexact; the
     * system will generally update your tile if it is on-screen, or about to be
     * on-screen, although this is not guaranteed due to system-level
     * optimizations.
     * </pre>
     *
     * <code>uint64 freshness_interval_millis = 4;</code>
     */
    private void clearFreshnessIntervalMillis() {
      
      freshnessIntervalMillis_ = 0L;
    }

    public static final int STATE_FIELD_NUMBER = 5;
    private androidx.wear.protolayout.proto.StateProto.State state_;
    /**
     * <pre>
     * State for this tile.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
     */
    @java.lang.Override
    public boolean hasState() {
      return state_ != null;
    }
    /**
     * <pre>
     * State for this tile.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
     */
    @java.lang.Override
    public androidx.wear.protolayout.proto.StateProto.State getState() {
      return state_ == null ? androidx.wear.protolayout.proto.StateProto.State.getDefaultInstance() : state_;
    }
    /**
     * <pre>
     * State for this tile.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
     */
    private void setState(androidx.wear.protolayout.proto.StateProto.State value) {
      value.getClass();
  state_ = value;
      
      }
    /**
     * <pre>
     * State for this tile.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeState(androidx.wear.protolayout.proto.StateProto.State value) {
      value.getClass();
  if (state_ != null &&
          state_ != androidx.wear.protolayout.proto.StateProto.State.getDefaultInstance()) {
        state_ =
          androidx.wear.protolayout.proto.StateProto.State.newBuilder(state_).mergeFrom(value).buildPartial();
      } else {
        state_ = value;
      }
      
    }
    /**
     * <pre>
     * State for this tile.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
     */
    private void clearState() {  state_ = null;
      
    }

    public static final int STATE_FRESHNESS_INTERVAL_MILLIS_FIELD_NUMBER = 6;
    private long stateFreshnessIntervalMillis_;
    /**
     * <pre>
     * How many milliseconds of elapsed time (**not** wall clock time) the state
     * for this tile can be considered to be fresh. The platform will attempt to
     * fetch new state at some point in the future after this interval has lapsed.
     * A value of 0 here signifies that auto-refreshes should not be used.
     * </pre>
     *
     * <code>uint64 state_freshness_interval_millis = 6;</code>
     * @return The stateFreshnessIntervalMillis.
     */
    @java.lang.Override
    public long getStateFreshnessIntervalMillis() {
      return stateFreshnessIntervalMillis_;
    }
    /**
     * <pre>
     * How many milliseconds of elapsed time (**not** wall clock time) the state
     * for this tile can be considered to be fresh. The platform will attempt to
     * fetch new state at some point in the future after this interval has lapsed.
     * A value of 0 here signifies that auto-refreshes should not be used.
     * </pre>
     *
     * <code>uint64 state_freshness_interval_millis = 6;</code>
     * @param value The stateFreshnessIntervalMillis to set.
     */
    private void setStateFreshnessIntervalMillis(long value) {
      
      stateFreshnessIntervalMillis_ = value;
    }
    /**
     * <pre>
     * How many milliseconds of elapsed time (**not** wall clock time) the state
     * for this tile can be considered to be fresh. The platform will attempt to
     * fetch new state at some point in the future after this interval has lapsed.
     * A value of 0 here signifies that auto-refreshes should not be used.
     * </pre>
     *
     * <code>uint64 state_freshness_interval_millis = 6;</code>
     */
    private void clearStateFreshnessIntervalMillis() {
      
      stateFreshnessIntervalMillis_ = 0L;
    }

    public static androidx.wear.tiles.proto.TileProto.Tile parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.wear.tiles.proto.TileProto.Tile 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 androidx.wear.tiles.proto.TileProto.Tile parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.wear.tiles.proto.TileProto.Tile 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 androidx.wear.tiles.proto.TileProto.Tile parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.wear.tiles.proto.TileProto.Tile 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 androidx.wear.tiles.proto.TileProto.Tile parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.wear.tiles.proto.TileProto.Tile parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.wear.tiles.proto.TileProto.Tile parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }
    public static androidx.wear.tiles.proto.TileProto.Tile parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.wear.tiles.proto.TileProto.Tile parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.wear.tiles.proto.TileProto.Tile parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(androidx.wear.tiles.proto.TileProto.Tile prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * <pre>
     * A holder for a tile. This specifies the resources to use for this delivery
     * of the tile, and the timeline for the tile.
     * </pre>
     *
     * Protobuf type {@code androidx.wear.tiles.proto.Tile}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.wear.tiles.proto.TileProto.Tile, Builder> implements
        // @@protoc_insertion_point(builder_implements:androidx.wear.tiles.proto.Tile)
        androidx.wear.tiles.proto.TileProto.TileOrBuilder {
      // Construct using androidx.wear.tiles.proto.TileProto.Tile.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <pre>
       * The resource version required for these tiles. This can be any
       * developer-defined string; it is only used to cache resources, and is passed
       * in ResourcesRequest if the system does not have a copy of the specified
       * resource version.
       * </pre>
       *
       * <code>string resources_version = 1;</code>
       * @return The resourcesVersion.
       */
      @java.lang.Override
      public java.lang.String getResourcesVersion() {
        return instance.getResourcesVersion();
      }
      /**
       * <pre>
       * The resource version required for these tiles. This can be any
       * developer-defined string; it is only used to cache resources, and is passed
       * in ResourcesRequest if the system does not have a copy of the specified
       * resource version.
       * </pre>
       *
       * <code>string resources_version = 1;</code>
       * @return The bytes for resourcesVersion.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getResourcesVersionBytes() {
        return instance.getResourcesVersionBytes();
      }
      /**
       * <pre>
       * The resource version required for these tiles. This can be any
       * developer-defined string; it is only used to cache resources, and is passed
       * in ResourcesRequest if the system does not have a copy of the specified
       * resource version.
       * </pre>
       *
       * <code>string resources_version = 1;</code>
       * @param value The resourcesVersion to set.
       * @return This builder for chaining.
       */
      public Builder setResourcesVersion(
          java.lang.String value) {
        copyOnWrite();
        instance.setResourcesVersion(value);
        return this;
      }
      /**
       * <pre>
       * The resource version required for these tiles. This can be any
       * developer-defined string; it is only used to cache resources, and is passed
       * in ResourcesRequest if the system does not have a copy of the specified
       * resource version.
       * </pre>
       *
       * <code>string resources_version = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearResourcesVersion() {
        copyOnWrite();
        instance.clearResourcesVersion();
        return this;
      }
      /**
       * <pre>
       * The resource version required for these tiles. This can be any
       * developer-defined string; it is only used to cache resources, and is passed
       * in ResourcesRequest if the system does not have a copy of the specified
       * resource version.
       * </pre>
       *
       * <code>string resources_version = 1;</code>
       * @param value The bytes for resourcesVersion to set.
       * @return This builder for chaining.
       */
      public Builder setResourcesVersionBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setResourcesVersionBytes(value);
        return this;
      }

      /**
       * <pre>
       * The tiles to show in the carousel, along with their validity periods.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
       */
      @java.lang.Override
      public boolean hasTileTimeline() {
        return instance.hasTileTimeline();
      }
      /**
       * <pre>
       * The tiles to show in the carousel, along with their validity periods.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
       */
      @java.lang.Override
      public androidx.wear.protolayout.proto.TimelineProto.Timeline getTileTimeline() {
        return instance.getTileTimeline();
      }
      /**
       * <pre>
       * The tiles to show in the carousel, along with their validity periods.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
       */
      public Builder setTileTimeline(androidx.wear.protolayout.proto.TimelineProto.Timeline value) {
        copyOnWrite();
        instance.setTileTimeline(value);
        return this;
        }
      /**
       * <pre>
       * The tiles to show in the carousel, along with their validity periods.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
       */
      public Builder setTileTimeline(
          androidx.wear.protolayout.proto.TimelineProto.Timeline.Builder builderForValue) {
        copyOnWrite();
        instance.setTileTimeline(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * The tiles to show in the carousel, along with their validity periods.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
       */
      public Builder mergeTileTimeline(androidx.wear.protolayout.proto.TimelineProto.Timeline value) {
        copyOnWrite();
        instance.mergeTileTimeline(value);
        return this;
      }
      /**
       * <pre>
       * The tiles to show in the carousel, along with their validity periods.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Timeline tile_timeline = 2;</code>
       */
      public Builder clearTileTimeline() {  copyOnWrite();
        instance.clearTileTimeline();
        return this;
      }

      /**
       * <pre>
       * The schema version that this tile was built with.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
       */
      @java.lang.Override
      public boolean hasSchemaVersion() {
        return instance.hasSchemaVersion();
      }
      /**
       * <pre>
       * The schema version that this tile was built with.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
       */
      @java.lang.Override
      public androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo getSchemaVersion() {
        return instance.getSchemaVersion();
      }
      /**
       * <pre>
       * The schema version that this tile was built with.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
       */
      public Builder setSchemaVersion(androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo value) {
        copyOnWrite();
        instance.setSchemaVersion(value);
        return this;
        }
      /**
       * <pre>
       * The schema version that this tile was built with.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
       */
      public Builder setSchemaVersion(
          androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo.Builder builderForValue) {
        copyOnWrite();
        instance.setSchemaVersion(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * The schema version that this tile was built with.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
       */
      public Builder mergeSchemaVersion(androidx.wear.protolayout.expression.proto.VersionProto.VersionInfo value) {
        copyOnWrite();
        instance.mergeSchemaVersion(value);
        return this;
      }
      /**
       * <pre>
       * The schema version that this tile was built with.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.expression.proto.VersionInfo schema_version = 3;</code>
       */
      public Builder clearSchemaVersion() {  copyOnWrite();
        instance.clearSchemaVersion();
        return this;
      }

      /**
       * <pre>
       * How many milliseconds of elapsed time (**not** wall clock time) this tile
       * can be considered to be "fresh". The platform will attempt to refresh
       * your tile at some point in the future after this interval has lapsed. A
       * value of 0 here signifies that auto-refreshes should not be used (i.e. you
       * will manually request updates via TileService#getRequester).
       * This mechanism should not be used to update your tile more frequently than
       * once a minute, and the system may throttle your updates if you request
       * updates faster than this interval. This interval is also inexact; the
       * system will generally update your tile if it is on-screen, or about to be
       * on-screen, although this is not guaranteed due to system-level
       * optimizations.
       * </pre>
       *
       * <code>uint64 freshness_interval_millis = 4;</code>
       * @return The freshnessIntervalMillis.
       */
      @java.lang.Override
      public long getFreshnessIntervalMillis() {
        return instance.getFreshnessIntervalMillis();
      }
      /**
       * <pre>
       * How many milliseconds of elapsed time (**not** wall clock time) this tile
       * can be considered to be "fresh". The platform will attempt to refresh
       * your tile at some point in the future after this interval has lapsed. A
       * value of 0 here signifies that auto-refreshes should not be used (i.e. you
       * will manually request updates via TileService#getRequester).
       * This mechanism should not be used to update your tile more frequently than
       * once a minute, and the system may throttle your updates if you request
       * updates faster than this interval. This interval is also inexact; the
       * system will generally update your tile if it is on-screen, or about to be
       * on-screen, although this is not guaranteed due to system-level
       * optimizations.
       * </pre>
       *
       * <code>uint64 freshness_interval_millis = 4;</code>
       * @param value The freshnessIntervalMillis to set.
       * @return This builder for chaining.
       */
      public Builder setFreshnessIntervalMillis(long value) {
        copyOnWrite();
        instance.setFreshnessIntervalMillis(value);
        return this;
      }
      /**
       * <pre>
       * How many milliseconds of elapsed time (**not** wall clock time) this tile
       * can be considered to be "fresh". The platform will attempt to refresh
       * your tile at some point in the future after this interval has lapsed. A
       * value of 0 here signifies that auto-refreshes should not be used (i.e. you
       * will manually request updates via TileService#getRequester).
       * This mechanism should not be used to update your tile more frequently than
       * once a minute, and the system may throttle your updates if you request
       * updates faster than this interval. This interval is also inexact; the
       * system will generally update your tile if it is on-screen, or about to be
       * on-screen, although this is not guaranteed due to system-level
       * optimizations.
       * </pre>
       *
       * <code>uint64 freshness_interval_millis = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearFreshnessIntervalMillis() {
        copyOnWrite();
        instance.clearFreshnessIntervalMillis();
        return this;
      }

      /**
       * <pre>
       * State for this tile.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
       */
      @java.lang.Override
      public boolean hasState() {
        return instance.hasState();
      }
      /**
       * <pre>
       * State for this tile.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
       */
      @java.lang.Override
      public androidx.wear.protolayout.proto.StateProto.State getState() {
        return instance.getState();
      }
      /**
       * <pre>
       * State for this tile.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
       */
      public Builder setState(androidx.wear.protolayout.proto.StateProto.State value) {
        copyOnWrite();
        instance.setState(value);
        return this;
        }
      /**
       * <pre>
       * State for this tile.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
       */
      public Builder setState(
          androidx.wear.protolayout.proto.StateProto.State.Builder builderForValue) {
        copyOnWrite();
        instance.setState(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * State for this tile.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
       */
      public Builder mergeState(androidx.wear.protolayout.proto.StateProto.State value) {
        copyOnWrite();
        instance.mergeState(value);
        return this;
      }
      /**
       * <pre>
       * State for this tile.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.State state = 5;</code>
       */
      public Builder clearState() {  copyOnWrite();
        instance.clearState();
        return this;
      }

      /**
       * <pre>
       * How many milliseconds of elapsed time (**not** wall clock time) the state
       * for this tile can be considered to be fresh. The platform will attempt to
       * fetch new state at some point in the future after this interval has lapsed.
       * A value of 0 here signifies that auto-refreshes should not be used.
       * </pre>
       *
       * <code>uint64 state_freshness_interval_millis = 6;</code>
       * @return The stateFreshnessIntervalMillis.
       */
      @java.lang.Override
      public long getStateFreshnessIntervalMillis() {
        return instance.getStateFreshnessIntervalMillis();
      }
      /**
       * <pre>
       * How many milliseconds of elapsed time (**not** wall clock time) the state
       * for this tile can be considered to be fresh. The platform will attempt to
       * fetch new state at some point in the future after this interval has lapsed.
       * A value of 0 here signifies that auto-refreshes should not be used.
       * </pre>
       *
       * <code>uint64 state_freshness_interval_millis = 6;</code>
       * @param value The stateFreshnessIntervalMillis to set.
       * @return This builder for chaining.
       */
      public Builder setStateFreshnessIntervalMillis(long value) {
        copyOnWrite();
        instance.setStateFreshnessIntervalMillis(value);
        return this;
      }
      /**
       * <pre>
       * How many milliseconds of elapsed time (**not** wall clock time) the state
       * for this tile can be considered to be fresh. The platform will attempt to
       * fetch new state at some point in the future after this interval has lapsed.
       * A value of 0 here signifies that auto-refreshes should not be used.
       * </pre>
       *
       * <code>uint64 state_freshness_interval_millis = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearStateFreshnessIntervalMillis() {
        copyOnWrite();
        instance.clearStateFreshnessIntervalMillis();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:androidx.wear.tiles.proto.Tile)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new androidx.wear.tiles.proto.TileProto.Tile();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "resourcesVersion_",
              "tileTimeline_",
              "schemaVersion_",
              "freshnessIntervalMillis_",
              "state_",
              "stateFreshnessIntervalMillis_",
            };
            java.lang.String info =
                "\u0000\u0006\u0000\u0000\u0001\u0006\u0006\u0000\u0000\u0000\u0001\u0208\u0002\t" +
                "\u0003\t\u0004\u0003\u0005\t\u0006\u0003";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.wear.tiles.proto.TileProto.Tile> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.wear.tiles.proto.TileProto.Tile.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.wear.tiles.proto.TileProto.Tile>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:androidx.wear.tiles.proto.Tile)
    private static final androidx.wear.tiles.proto.TileProto.Tile DEFAULT_INSTANCE;
    static {
      Tile defaultInstance = new Tile();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        Tile.class, defaultInstance);
    }

    public static androidx.wear.tiles.proto.TileProto.Tile getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<Tile> PARSER;

    public static com.google.protobuf.Parser<Tile> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }


  static {
  }

  // @@protoc_insertion_point(outer_class_scope)
}