public final class

TimelineProto

extends java.lang.Object

 java.lang.Object

↳androidx.wear.protolayout.proto.TimelineProto

Gradle dependencies

compile group: 'androidx.wear.protolayout', name: 'protolayout-proto', version: '1.2.0'

  • groupId: androidx.wear.protolayout
  • artifactId: protolayout-proto
  • version: 1.2.0

Artifact androidx.wear.protolayout:protolayout-proto:1.2.0 it located at Google repository (https://maven.google.com/)

Summary

Methods
public static voidregisterAllExtensions(com.google.protobuf.ExtensionRegistryLite registry)

from java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Methods

public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry)

Source

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

package androidx.wear.protolayout.proto;

public final class TimelineProto {
  private TimelineProto() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }
  public interface TimeIntervalOrBuilder extends
      // @@protoc_insertion_point(interface_extends:androidx.wear.protolayout.proto.TimeInterval)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <pre>
     * Starting point of the time interval, in milliseconds since the Unix epoch.
     * </pre>
     *
     * <code>int64 start_millis = 1;</code>
     * @return The startMillis.
     */
    long getStartMillis();

    /**
     * <pre>
     * End point of the time interval, in milliseconds since the Unix epoch.
     * </pre>
     *
     * <code>int64 end_millis = 2;</code>
     * @return The endMillis.
     */
    long getEndMillis();
  }
  /**
   * <pre>
   * A time interval, typically used to describe the validity period of a
   * TimelineEntry
   * </pre>
   *
   * Protobuf type {@code androidx.wear.protolayout.proto.TimeInterval}
   */
  public  static final class TimeInterval extends
      com.google.protobuf.GeneratedMessageLite<
          TimeInterval, TimeInterval.Builder> implements
      // @@protoc_insertion_point(message_implements:androidx.wear.protolayout.proto.TimeInterval)
      TimeIntervalOrBuilder {
    private TimeInterval() {
    }
    public static final int START_MILLIS_FIELD_NUMBER = 1;
    private long startMillis_;
    /**
     * <pre>
     * Starting point of the time interval, in milliseconds since the Unix epoch.
     * </pre>
     *
     * <code>int64 start_millis = 1;</code>
     * @return The startMillis.
     */
    @java.lang.Override
    public long getStartMillis() {
      return startMillis_;
    }
    /**
     * <pre>
     * Starting point of the time interval, in milliseconds since the Unix epoch.
     * </pre>
     *
     * <code>int64 start_millis = 1;</code>
     * @param value The startMillis to set.
     */
    private void setStartMillis(long value) {
      
      startMillis_ = value;
    }
    /**
     * <pre>
     * Starting point of the time interval, in milliseconds since the Unix epoch.
     * </pre>
     *
     * <code>int64 start_millis = 1;</code>
     */
    private void clearStartMillis() {

      startMillis_ = 0L;
    }

    public static final int END_MILLIS_FIELD_NUMBER = 2;
    private long endMillis_;
    /**
     * <pre>
     * End point of the time interval, in milliseconds since the Unix epoch.
     * </pre>
     *
     * <code>int64 end_millis = 2;</code>
     * @return The endMillis.
     */
    @java.lang.Override
    public long getEndMillis() {
      return endMillis_;
    }
    /**
     * <pre>
     * End point of the time interval, in milliseconds since the Unix epoch.
     * </pre>
     *
     * <code>int64 end_millis = 2;</code>
     * @param value The endMillis to set.
     */
    private void setEndMillis(long value) {
      
      endMillis_ = value;
    }
    /**
     * <pre>
     * End point of the time interval, in milliseconds since the Unix epoch.
     * </pre>
     *
     * <code>int64 end_millis = 2;</code>
     */
    private void clearEndMillis() {

      endMillis_ = 0L;
    }

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

    /**
     * <pre>
     * A time interval, typically used to describe the validity period of a
     * TimelineEntry
     * </pre>
     *
     * Protobuf type {@code androidx.wear.protolayout.proto.TimeInterval}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.wear.protolayout.proto.TimelineProto.TimeInterval, Builder> implements
        // @@protoc_insertion_point(builder_implements:androidx.wear.protolayout.proto.TimeInterval)
        androidx.wear.protolayout.proto.TimelineProto.TimeIntervalOrBuilder {
      // Construct using androidx.wear.protolayout.proto.TimelineProto.TimeInterval.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <pre>
       * Starting point of the time interval, in milliseconds since the Unix epoch.
       * </pre>
       *
       * <code>int64 start_millis = 1;</code>
       * @return The startMillis.
       */
      @java.lang.Override
      public long getStartMillis() {
        return instance.getStartMillis();
      }
      /**
       * <pre>
       * Starting point of the time interval, in milliseconds since the Unix epoch.
       * </pre>
       *
       * <code>int64 start_millis = 1;</code>
       * @param value The startMillis to set.
       * @return This builder for chaining.
       */
      public Builder setStartMillis(long value) {
        copyOnWrite();
        instance.setStartMillis(value);
        return this;
      }
      /**
       * <pre>
       * Starting point of the time interval, in milliseconds since the Unix epoch.
       * </pre>
       *
       * <code>int64 start_millis = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearStartMillis() {
        copyOnWrite();
        instance.clearStartMillis();
        return this;
      }

      /**
       * <pre>
       * End point of the time interval, in milliseconds since the Unix epoch.
       * </pre>
       *
       * <code>int64 end_millis = 2;</code>
       * @return The endMillis.
       */
      @java.lang.Override
      public long getEndMillis() {
        return instance.getEndMillis();
      }
      /**
       * <pre>
       * End point of the time interval, in milliseconds since the Unix epoch.
       * </pre>
       *
       * <code>int64 end_millis = 2;</code>
       * @param value The endMillis to set.
       * @return This builder for chaining.
       */
      public Builder setEndMillis(long value) {
        copyOnWrite();
        instance.setEndMillis(value);
        return this;
      }
      /**
       * <pre>
       * End point of the time interval, in milliseconds since the Unix epoch.
       * </pre>
       *
       * <code>int64 end_millis = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearEndMillis() {
        copyOnWrite();
        instance.clearEndMillis();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:androidx.wear.protolayout.proto.TimeInterval)
    }
    @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.protolayout.proto.TimelineProto.TimeInterval();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "startMillis_",
              "endMillis_",
            };
            java.lang.String info =
                "\u0000\u0002\u0000\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\u0002\u0002\u0002" +
                "";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.wear.protolayout.proto.TimelineProto.TimeInterval> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.wear.protolayout.proto.TimelineProto.TimeInterval.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.wear.protolayout.proto.TimelineProto.TimeInterval>(
                        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.protolayout.proto.TimeInterval)
    private static final androidx.wear.protolayout.proto.TimelineProto.TimeInterval DEFAULT_INSTANCE;
    static {
      TimeInterval defaultInstance = new TimeInterval();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        TimeInterval.class, defaultInstance);
    }

    public static androidx.wear.protolayout.proto.TimelineProto.TimeInterval getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

  public interface TimelineEntryOrBuilder extends
      // @@protoc_insertion_point(interface_extends:androidx.wear.protolayout.proto.TimelineEntry)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <pre>
     * The validity period for this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
     * @return Whether the validity field is set.
     */
    boolean hasValidity();
    /**
     * <pre>
     * The validity period for this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
     * @return The validity.
     */
    androidx.wear.protolayout.proto.TimelineProto.TimeInterval getValidity();

    /**
     * <pre>
     * The contents of this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
     * @return Whether the layout field is set.
     */
    boolean hasLayout();
    /**
     * <pre>
     * The contents of this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
     * @return The layout.
     */
    androidx.wear.protolayout.proto.LayoutElementProto.Layout getLayout();
  }
  /**
   * <pre>
   * One piece of renderable content along with the time that it is valid for.
   * </pre>
   *
   * Protobuf type {@code androidx.wear.protolayout.proto.TimelineEntry}
   */
  public  static final class TimelineEntry extends
      com.google.protobuf.GeneratedMessageLite<
          TimelineEntry, TimelineEntry.Builder> implements
      // @@protoc_insertion_point(message_implements:androidx.wear.protolayout.proto.TimelineEntry)
      TimelineEntryOrBuilder {
    private TimelineEntry() {
    }
    public static final int VALIDITY_FIELD_NUMBER = 1;
    private androidx.wear.protolayout.proto.TimelineProto.TimeInterval validity_;
    /**
     * <pre>
     * The validity period for this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
     */
    @java.lang.Override
    public boolean hasValidity() {
      return validity_ != null;
    }
    /**
     * <pre>
     * The validity period for this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
     */
    @java.lang.Override
    public androidx.wear.protolayout.proto.TimelineProto.TimeInterval getValidity() {
      return validity_ == null ? androidx.wear.protolayout.proto.TimelineProto.TimeInterval.getDefaultInstance() : validity_;
    }
    /**
     * <pre>
     * The validity period for this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
     */
    private void setValidity(androidx.wear.protolayout.proto.TimelineProto.TimeInterval value) {
      value.getClass();
  validity_ = value;

      }
    /**
     * <pre>
     * The validity period for this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeValidity(androidx.wear.protolayout.proto.TimelineProto.TimeInterval value) {
      value.getClass();
  if (validity_ != null &&
          validity_ != androidx.wear.protolayout.proto.TimelineProto.TimeInterval.getDefaultInstance()) {
        validity_ =
          androidx.wear.protolayout.proto.TimelineProto.TimeInterval.newBuilder(validity_).mergeFrom(value).buildPartial();
      } else {
        validity_ = value;
      }

    }
    /**
     * <pre>
     * The validity period for this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
     */
    private void clearValidity() {  validity_ = null;

    }

    public static final int LAYOUT_FIELD_NUMBER = 2;
    private androidx.wear.protolayout.proto.LayoutElementProto.Layout layout_;
    /**
     * <pre>
     * The contents of this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
     */
    @java.lang.Override
    public boolean hasLayout() {
      return layout_ != null;
    }
    /**
     * <pre>
     * The contents of this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
     */
    @java.lang.Override
    public androidx.wear.protolayout.proto.LayoutElementProto.Layout getLayout() {
      return layout_ == null ? androidx.wear.protolayout.proto.LayoutElementProto.Layout.getDefaultInstance() : layout_;
    }
    /**
     * <pre>
     * The contents of this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
     */
    private void setLayout(androidx.wear.protolayout.proto.LayoutElementProto.Layout value) {
      value.getClass();
  layout_ = value;

      }
    /**
     * <pre>
     * The contents of this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeLayout(androidx.wear.protolayout.proto.LayoutElementProto.Layout value) {
      value.getClass();
  if (layout_ != null &&
          layout_ != androidx.wear.protolayout.proto.LayoutElementProto.Layout.getDefaultInstance()) {
        layout_ =
          androidx.wear.protolayout.proto.LayoutElementProto.Layout.newBuilder(layout_).mergeFrom(value).buildPartial();
      } else {
        layout_ = value;
      }

    }
    /**
     * <pre>
     * The contents of this timeline entry.
     * </pre>
     *
     * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
     */
    private void clearLayout() {  layout_ = null;

    }

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

    /**
     * <pre>
     * One piece of renderable content along with the time that it is valid for.
     * </pre>
     *
     * Protobuf type {@code androidx.wear.protolayout.proto.TimelineEntry}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.wear.protolayout.proto.TimelineProto.TimelineEntry, Builder> implements
        // @@protoc_insertion_point(builder_implements:androidx.wear.protolayout.proto.TimelineEntry)
        androidx.wear.protolayout.proto.TimelineProto.TimelineEntryOrBuilder {
      // Construct using androidx.wear.protolayout.proto.TimelineProto.TimelineEntry.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <pre>
       * The validity period for this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
       */
      @java.lang.Override
      public boolean hasValidity() {
        return instance.hasValidity();
      }
      /**
       * <pre>
       * The validity period for this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
       */
      @java.lang.Override
      public androidx.wear.protolayout.proto.TimelineProto.TimeInterval getValidity() {
        return instance.getValidity();
      }
      /**
       * <pre>
       * The validity period for this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
       */
      public Builder setValidity(androidx.wear.protolayout.proto.TimelineProto.TimeInterval value) {
        copyOnWrite();
        instance.setValidity(value);
        return this;
        }
      /**
       * <pre>
       * The validity period for this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
       */
      public Builder setValidity(
          androidx.wear.protolayout.proto.TimelineProto.TimeInterval.Builder builderForValue) {
        copyOnWrite();
        instance.setValidity(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * The validity period for this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
       */
      public Builder mergeValidity(androidx.wear.protolayout.proto.TimelineProto.TimeInterval value) {
        copyOnWrite();
        instance.mergeValidity(value);
        return this;
      }
      /**
       * <pre>
       * The validity period for this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.TimeInterval validity = 1;</code>
       */
      public Builder clearValidity() {  copyOnWrite();
        instance.clearValidity();
        return this;
      }

      /**
       * <pre>
       * The contents of this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
       */
      @java.lang.Override
      public boolean hasLayout() {
        return instance.hasLayout();
      }
      /**
       * <pre>
       * The contents of this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
       */
      @java.lang.Override
      public androidx.wear.protolayout.proto.LayoutElementProto.Layout getLayout() {
        return instance.getLayout();
      }
      /**
       * <pre>
       * The contents of this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
       */
      public Builder setLayout(androidx.wear.protolayout.proto.LayoutElementProto.Layout value) {
        copyOnWrite();
        instance.setLayout(value);
        return this;
        }
      /**
       * <pre>
       * The contents of this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
       */
      public Builder setLayout(
          androidx.wear.protolayout.proto.LayoutElementProto.Layout.Builder builderForValue) {
        copyOnWrite();
        instance.setLayout(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * The contents of this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
       */
      public Builder mergeLayout(androidx.wear.protolayout.proto.LayoutElementProto.Layout value) {
        copyOnWrite();
        instance.mergeLayout(value);
        return this;
      }
      /**
       * <pre>
       * The contents of this timeline entry.
       * </pre>
       *
       * <code>.androidx.wear.protolayout.proto.Layout layout = 2;</code>
       */
      public Builder clearLayout() {  copyOnWrite();
        instance.clearLayout();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:androidx.wear.protolayout.proto.TimelineEntry)
    }
    @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.protolayout.proto.TimelineProto.TimelineEntry();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "validity_",
              "layout_",
            };
            java.lang.String info =
                "\u0000\u0002\u0000\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\t\u0002\t";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.wear.protolayout.proto.TimelineProto.TimelineEntry> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.wear.protolayout.proto.TimelineProto.TimelineEntry.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.wear.protolayout.proto.TimelineProto.TimelineEntry>(
                        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.protolayout.proto.TimelineEntry)
    private static final androidx.wear.protolayout.proto.TimelineProto.TimelineEntry DEFAULT_INSTANCE;
    static {
      TimelineEntry defaultInstance = new TimelineEntry();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        TimelineEntry.class, defaultInstance);
    }

    public static androidx.wear.protolayout.proto.TimelineProto.TimelineEntry getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

  public interface TimelineOrBuilder extends
      // @@protoc_insertion_point(interface_extends:androidx.wear.protolayout.proto.Timeline)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    java.util.List<androidx.wear.protolayout.proto.TimelineProto.TimelineEntry> 
        getTimelineEntriesList();
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    androidx.wear.protolayout.proto.TimelineProto.TimelineEntry getTimelineEntries(int index);
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    int getTimelineEntriesCount();
  }
  /**
   * <pre>
   * A collection of TimelineEntry items.
   *
   * TimelineEntry items can be used to update a layout on-screen at known times,
   * without having to explicitly update a layout. This allows for cases where,
   * say, a calendar can be used to show the next event, and automatically switch
   * to showing the next event when one has passed.
   *
   * The active TimelineEntry is switched, at most, once a minute. In the case
   * where the validity periods of TimelineEntry items overlap, the item with the
   * *shortest* validity period will be shown. This allows a layout provider to
   * show a "default" layout, and override it at set points without having to
   * explicitly insert the default layout between the "override" layout.
   * </pre>
   *
   * Protobuf type {@code androidx.wear.protolayout.proto.Timeline}
   */
  public  static final class Timeline extends
      com.google.protobuf.GeneratedMessageLite<
          Timeline, Timeline.Builder> implements
      // @@protoc_insertion_point(message_implements:androidx.wear.protolayout.proto.Timeline)
      TimelineOrBuilder {
    private Timeline() {
      timelineEntries_ = emptyProtobufList();
    }
    public static final int TIMELINE_ENTRIES_FIELD_NUMBER = 1;
    private com.google.protobuf.Internal.ProtobufList<androidx.wear.protolayout.proto.TimelineProto.TimelineEntry> timelineEntries_;
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    @java.lang.Override
    public java.util.List<androidx.wear.protolayout.proto.TimelineProto.TimelineEntry> getTimelineEntriesList() {
      return timelineEntries_;
    }
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    public java.util.List<? extends androidx.wear.protolayout.proto.TimelineProto.TimelineEntryOrBuilder> 
        getTimelineEntriesOrBuilderList() {
      return timelineEntries_;
    }
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    @java.lang.Override
    public int getTimelineEntriesCount() {
      return timelineEntries_.size();
    }
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    @java.lang.Override
    public androidx.wear.protolayout.proto.TimelineProto.TimelineEntry getTimelineEntries(int index) {
      return timelineEntries_.get(index);
    }
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    public androidx.wear.protolayout.proto.TimelineProto.TimelineEntryOrBuilder getTimelineEntriesOrBuilder(
        int index) {
      return timelineEntries_.get(index);
    }
    private void ensureTimelineEntriesIsMutable() {
      com.google.protobuf.Internal.ProtobufList<androidx.wear.protolayout.proto.TimelineProto.TimelineEntry> tmp = timelineEntries_;
      if (!tmp.isModifiable()) {
        timelineEntries_ =
            com.google.protobuf.GeneratedMessageLite.mutableCopy(tmp);
       }
    }

    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    private void setTimelineEntries(
        int index, androidx.wear.protolayout.proto.TimelineProto.TimelineEntry value) {
      value.getClass();
  ensureTimelineEntriesIsMutable();
      timelineEntries_.set(index, value);
    }
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    private void addTimelineEntries(androidx.wear.protolayout.proto.TimelineProto.TimelineEntry value) {
      value.getClass();
  ensureTimelineEntriesIsMutable();
      timelineEntries_.add(value);
    }
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    private void addTimelineEntries(
        int index, androidx.wear.protolayout.proto.TimelineProto.TimelineEntry value) {
      value.getClass();
  ensureTimelineEntriesIsMutable();
      timelineEntries_.add(index, value);
    }
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    private void addAllTimelineEntries(
        java.lang.Iterable<? extends androidx.wear.protolayout.proto.TimelineProto.TimelineEntry> values) {
      ensureTimelineEntriesIsMutable();
      com.google.protobuf.AbstractMessageLite.addAll(
          values, timelineEntries_);
    }
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    private void clearTimelineEntries() {
      timelineEntries_ = emptyProtobufList();
    }
    /**
     * <pre>
     * The entries in a timeline.
     * </pre>
     *
     * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
     */
    private void removeTimelineEntries(int index) {
      ensureTimelineEntriesIsMutable();
      timelineEntries_.remove(index);
    }

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

    /**
     * <pre>
     * A collection of TimelineEntry items.
     *
     * TimelineEntry items can be used to update a layout on-screen at known times,
     * without having to explicitly update a layout. This allows for cases where,
     * say, a calendar can be used to show the next event, and automatically switch
     * to showing the next event when one has passed.
     *
     * The active TimelineEntry is switched, at most, once a minute. In the case
     * where the validity periods of TimelineEntry items overlap, the item with the
     * *shortest* validity period will be shown. This allows a layout provider to
     * show a "default" layout, and override it at set points without having to
     * explicitly insert the default layout between the "override" layout.
     * </pre>
     *
     * Protobuf type {@code androidx.wear.protolayout.proto.Timeline}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.wear.protolayout.proto.TimelineProto.Timeline, Builder> implements
        // @@protoc_insertion_point(builder_implements:androidx.wear.protolayout.proto.Timeline)
        androidx.wear.protolayout.proto.TimelineProto.TimelineOrBuilder {
      // Construct using androidx.wear.protolayout.proto.TimelineProto.Timeline.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      @java.lang.Override
      public java.util.List<androidx.wear.protolayout.proto.TimelineProto.TimelineEntry> getTimelineEntriesList() {
        return java.util.Collections.unmodifiableList(
            instance.getTimelineEntriesList());
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      @java.lang.Override
      public int getTimelineEntriesCount() {
        return instance.getTimelineEntriesCount();
      }/**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      @java.lang.Override
      public androidx.wear.protolayout.proto.TimelineProto.TimelineEntry getTimelineEntries(int index) {
        return instance.getTimelineEntries(index);
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      public Builder setTimelineEntries(
          int index, androidx.wear.protolayout.proto.TimelineProto.TimelineEntry value) {
        copyOnWrite();
        instance.setTimelineEntries(index, value);
        return this;
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      public Builder setTimelineEntries(
          int index, androidx.wear.protolayout.proto.TimelineProto.TimelineEntry.Builder builderForValue) {
        copyOnWrite();
        instance.setTimelineEntries(index,
            builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      public Builder addTimelineEntries(androidx.wear.protolayout.proto.TimelineProto.TimelineEntry value) {
        copyOnWrite();
        instance.addTimelineEntries(value);
        return this;
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      public Builder addTimelineEntries(
          int index, androidx.wear.protolayout.proto.TimelineProto.TimelineEntry value) {
        copyOnWrite();
        instance.addTimelineEntries(index, value);
        return this;
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      public Builder addTimelineEntries(
          androidx.wear.protolayout.proto.TimelineProto.TimelineEntry.Builder builderForValue) {
        copyOnWrite();
        instance.addTimelineEntries(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      public Builder addTimelineEntries(
          int index, androidx.wear.protolayout.proto.TimelineProto.TimelineEntry.Builder builderForValue) {
        copyOnWrite();
        instance.addTimelineEntries(index,
            builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      public Builder addAllTimelineEntries(
          java.lang.Iterable<? extends androidx.wear.protolayout.proto.TimelineProto.TimelineEntry> values) {
        copyOnWrite();
        instance.addAllTimelineEntries(values);
        return this;
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      public Builder clearTimelineEntries() {
        copyOnWrite();
        instance.clearTimelineEntries();
        return this;
      }
      /**
       * <pre>
       * The entries in a timeline.
       * </pre>
       *
       * <code>repeated .androidx.wear.protolayout.proto.TimelineEntry timeline_entries = 1;</code>
       */
      public Builder removeTimelineEntries(int index) {
        copyOnWrite();
        instance.removeTimelineEntries(index);
        return this;
      }

      // @@protoc_insertion_point(builder_scope:androidx.wear.protolayout.proto.Timeline)
    }
    @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.protolayout.proto.TimelineProto.Timeline();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "timelineEntries_",
              androidx.wear.protolayout.proto.TimelineProto.TimelineEntry.class,
            };
            java.lang.String info =
                "\u0000\u0001\u0000\u0000\u0001\u0001\u0001\u0000\u0001\u0000\u0001\u001b";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.wear.protolayout.proto.TimelineProto.Timeline> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.wear.protolayout.proto.TimelineProto.Timeline.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.wear.protolayout.proto.TimelineProto.Timeline>(
                        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.protolayout.proto.Timeline)
    private static final androidx.wear.protolayout.proto.TimelineProto.Timeline DEFAULT_INSTANCE;
    static {
      Timeline defaultInstance = new Timeline();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        Timeline.class, defaultInstance);
    }

    public static androidx.wear.protolayout.proto.TimelineProto.Timeline getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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


  static {
  }

  // @@protoc_insertion_point(outer_class_scope)
}