Skip to content
Snippets Groups Projects
ContextOuterClass.java 2.6 MiB
Newer Older
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: context.proto

package context;

public final class ContextOuterClass {
  private ContextOuterClass() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }

  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  /**
   * Protobuf enum {@code context.EventTypeEnum}
   */
  public enum EventTypeEnum
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <code>EVENTTYPE_UNDEFINED = 0;</code>
     */
    EVENTTYPE_UNDEFINED(0),
    /**
     * <code>EVENTTYPE_CREATE = 1;</code>
     */
    EVENTTYPE_CREATE(1),
    /**
     * <code>EVENTTYPE_UPDATE = 2;</code>
     */
    EVENTTYPE_UPDATE(2),
    /**
     * <code>EVENTTYPE_REMOVE = 3;</code>
     */
    EVENTTYPE_REMOVE(3),
    UNRECOGNIZED(-1),
    ;

    /**
     * <code>EVENTTYPE_UNDEFINED = 0;</code>
     */
    public static final int EVENTTYPE_UNDEFINED_VALUE = 0;
    /**
     * <code>EVENTTYPE_CREATE = 1;</code>
     */
    public static final int EVENTTYPE_CREATE_VALUE = 1;
    /**
     * <code>EVENTTYPE_UPDATE = 2;</code>
     */
    public static final int EVENTTYPE_UPDATE_VALUE = 2;
    /**
     * <code>EVENTTYPE_REMOVE = 3;</code>
     */
    public static final int EVENTTYPE_REMOVE_VALUE = 3;


    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static EventTypeEnum valueOf(int value) {
      return forNumber(value);
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static EventTypeEnum forNumber(int value) {
      switch (value) {
        case 0: return EVENTTYPE_UNDEFINED;
        case 1: return EVENTTYPE_CREATE;
        case 2: return EVENTTYPE_UPDATE;
        case 3: return EVENTTYPE_REMOVE;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<EventTypeEnum>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        EventTypeEnum> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<EventTypeEnum>() {
            public EventTypeEnum findValueByNumber(int number) {
              return EventTypeEnum.forNumber(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return context.ContextOuterClass.getDescriptor().getEnumTypes().get(0);
    }

    private static final EventTypeEnum[] VALUES = values();

    public static EventTypeEnum valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }

    private final int value;

    private EventTypeEnum(int value) {
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:context.EventTypeEnum)
  }

  /**
   * Protobuf enum {@code context.DeviceDriverEnum}
   */
  public enum DeviceDriverEnum
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <pre>
     * also used for emulated
     * </pre>
     *
     * <code>DEVICEDRIVER_UNDEFINED = 0;</code>
     */
    DEVICEDRIVER_UNDEFINED(0),
    /**
     * <code>DEVICEDRIVER_OPENCONFIG = 1;</code>
     */
    DEVICEDRIVER_OPENCONFIG(1),
    /**
     * <code>DEVICEDRIVER_TRANSPORT_API = 2;</code>
     */
    DEVICEDRIVER_TRANSPORT_API(2),
    /**
     * <code>DEVICEDRIVER_P4 = 3;</code>
     */
    DEVICEDRIVER_P4(3),
    /**
     * <code>DEVICEDRIVER_IETF_NETWORK_TOPOLOGY = 4;</code>
     */
    DEVICEDRIVER_IETF_NETWORK_TOPOLOGY(4),
    /**
     * <code>DEVICEDRIVER_ONF_TR_532 = 5;</code>
    DEVICEDRIVER_ONF_TR_532(5),
    /**
     * <code>DEVICEDRIVER_XR = 6;</code>
     */
    DEVICEDRIVER_XR(6),
    /**
     * <code>DEVICEDRIVER_IETF_L2VPN = 7;</code>
     */
    DEVICEDRIVER_IETF_L2VPN(7),
famelis's avatar
famelis committed
    /**
     * <code>DEVICEDRIVER_GNMI_OPENCONFIG = 8;</code>
     */
    DEVICEDRIVER_GNMI_OPENCONFIG(8),
    /**
     * <code>DEVICEDRIVER_FLEXSCALE = 9;</code>
     */
    DEVICEDRIVER_FLEXSCALE(9),
    /**
     * <code>DEVICEDRIVER_IETF_ACTN = 10;</code>
     */
    DEVICEDRIVER_IETF_ACTN(10),
    UNRECOGNIZED(-1),
    ;

    /**
     * <pre>
     * also used for emulated
     * </pre>
     *
     * <code>DEVICEDRIVER_UNDEFINED = 0;</code>
     */
    public static final int DEVICEDRIVER_UNDEFINED_VALUE = 0;
    /**
     * <code>DEVICEDRIVER_OPENCONFIG = 1;</code>
     */
    public static final int DEVICEDRIVER_OPENCONFIG_VALUE = 1;
    /**
     * <code>DEVICEDRIVER_TRANSPORT_API = 2;</code>
     */
    public static final int DEVICEDRIVER_TRANSPORT_API_VALUE = 2;
    /**
     * <code>DEVICEDRIVER_P4 = 3;</code>
     */
    public static final int DEVICEDRIVER_P4_VALUE = 3;
    /**
     * <code>DEVICEDRIVER_IETF_NETWORK_TOPOLOGY = 4;</code>
     */
    public static final int DEVICEDRIVER_IETF_NETWORK_TOPOLOGY_VALUE = 4;
    /**
     * <code>DEVICEDRIVER_ONF_TR_532 = 5;</code>
    public static final int DEVICEDRIVER_ONF_TR_532_VALUE = 5;
    /**
     * <code>DEVICEDRIVER_XR = 6;</code>
     */
    public static final int DEVICEDRIVER_XR_VALUE = 6;
    /**
     * <code>DEVICEDRIVER_IETF_L2VPN = 7;</code>
     */
    public static final int DEVICEDRIVER_IETF_L2VPN_VALUE = 7;
famelis's avatar
famelis committed
    /**
     * <code>DEVICEDRIVER_GNMI_OPENCONFIG = 8;</code>
     */
    public static final int DEVICEDRIVER_GNMI_OPENCONFIG_VALUE = 8;
    /**
     * <code>DEVICEDRIVER_FLEXSCALE = 9;</code>
     */
    public static final int DEVICEDRIVER_FLEXSCALE_VALUE = 9;
    /**
     * <code>DEVICEDRIVER_IETF_ACTN = 10;</code>
     */
    public static final int DEVICEDRIVER_IETF_ACTN_VALUE = 10;


    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static DeviceDriverEnum valueOf(int value) {
      return forNumber(value);
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static DeviceDriverEnum forNumber(int value) {
      switch (value) {
        case 0: return DEVICEDRIVER_UNDEFINED;
        case 1: return DEVICEDRIVER_OPENCONFIG;
        case 2: return DEVICEDRIVER_TRANSPORT_API;
        case 3: return DEVICEDRIVER_P4;
        case 4: return DEVICEDRIVER_IETF_NETWORK_TOPOLOGY;
        case 5: return DEVICEDRIVER_ONF_TR_532;
        case 6: return DEVICEDRIVER_XR;
        case 7: return DEVICEDRIVER_IETF_L2VPN;
famelis's avatar
famelis committed
        case 8: return DEVICEDRIVER_GNMI_OPENCONFIG;
        case 9: return DEVICEDRIVER_FLEXSCALE;
        case 10: return DEVICEDRIVER_IETF_ACTN;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<DeviceDriverEnum>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        DeviceDriverEnum> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<DeviceDriverEnum>() {
            public DeviceDriverEnum findValueByNumber(int number) {
              return DeviceDriverEnum.forNumber(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return context.ContextOuterClass.getDescriptor().getEnumTypes().get(1);
    }

    private static final DeviceDriverEnum[] VALUES = values();

    public static DeviceDriverEnum valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }

    private final int value;

    private DeviceDriverEnum(int value) {
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:context.DeviceDriverEnum)
  }

  /**
   * Protobuf enum {@code context.DeviceOperationalStatusEnum}
   */
  public enum DeviceOperationalStatusEnum
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <code>DEVICEOPERATIONALSTATUS_UNDEFINED = 0;</code>
     */
    DEVICEOPERATIONALSTATUS_UNDEFINED(0),
    /**
     * <code>DEVICEOPERATIONALSTATUS_DISABLED = 1;</code>
     */
    DEVICEOPERATIONALSTATUS_DISABLED(1),
    /**
     * <code>DEVICEOPERATIONALSTATUS_ENABLED = 2;</code>
     */
    DEVICEOPERATIONALSTATUS_ENABLED(2),
    UNRECOGNIZED(-1),
    ;

    /**
     * <code>DEVICEOPERATIONALSTATUS_UNDEFINED = 0;</code>
     */
    public static final int DEVICEOPERATIONALSTATUS_UNDEFINED_VALUE = 0;
    /**
     * <code>DEVICEOPERATIONALSTATUS_DISABLED = 1;</code>
     */
    public static final int DEVICEOPERATIONALSTATUS_DISABLED_VALUE = 1;
    /**
     * <code>DEVICEOPERATIONALSTATUS_ENABLED = 2;</code>
     */
    public static final int DEVICEOPERATIONALSTATUS_ENABLED_VALUE = 2;


    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static DeviceOperationalStatusEnum valueOf(int value) {
      return forNumber(value);
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static DeviceOperationalStatusEnum forNumber(int value) {
      switch (value) {
        case 0: return DEVICEOPERATIONALSTATUS_UNDEFINED;
        case 1: return DEVICEOPERATIONALSTATUS_DISABLED;
        case 2: return DEVICEOPERATIONALSTATUS_ENABLED;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<DeviceOperationalStatusEnum>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        DeviceOperationalStatusEnum> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<DeviceOperationalStatusEnum>() {
            public DeviceOperationalStatusEnum findValueByNumber(int number) {
              return DeviceOperationalStatusEnum.forNumber(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return context.ContextOuterClass.getDescriptor().getEnumTypes().get(2);
    }

    private static final DeviceOperationalStatusEnum[] VALUES = values();

    public static DeviceOperationalStatusEnum valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }

    private final int value;

    private DeviceOperationalStatusEnum(int value) {
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:context.DeviceOperationalStatusEnum)
  }

  /**
   * Protobuf enum {@code context.ServiceTypeEnum}
   */
  public enum ServiceTypeEnum
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <code>SERVICETYPE_UNKNOWN = 0;</code>
     */
    SERVICETYPE_UNKNOWN(0),
    /**
     * <code>SERVICETYPE_L3NM = 1;</code>
     */
    SERVICETYPE_L3NM(1),
    /**
     * <code>SERVICETYPE_L2NM = 2;</code>
     */
    SERVICETYPE_L2NM(2),
    /**
     * <code>SERVICETYPE_TAPI_CONNECTIVITY_SERVICE = 3;</code>
     */
    SERVICETYPE_TAPI_CONNECTIVITY_SERVICE(3),
famelis's avatar
famelis committed
    /**
     * <code>SERVICETYPE_TE = 4;</code>
     */
    SERVICETYPE_TE(4),
    /**
     * <code>SERVICETYPE_E2E = 5;</code>
     */
    SERVICETYPE_E2E(5),
    UNRECOGNIZED(-1),
    ;

    /**
     * <code>SERVICETYPE_UNKNOWN = 0;</code>
     */
    public static final int SERVICETYPE_UNKNOWN_VALUE = 0;
    /**
     * <code>SERVICETYPE_L3NM = 1;</code>
     */
    public static final int SERVICETYPE_L3NM_VALUE = 1;
    /**
     * <code>SERVICETYPE_L2NM = 2;</code>
     */
    public static final int SERVICETYPE_L2NM_VALUE = 2;
    /**
     * <code>SERVICETYPE_TAPI_CONNECTIVITY_SERVICE = 3;</code>
     */
    public static final int SERVICETYPE_TAPI_CONNECTIVITY_SERVICE_VALUE = 3;
famelis's avatar
famelis committed
    /**
     * <code>SERVICETYPE_TE = 4;</code>
     */
    public static final int SERVICETYPE_TE_VALUE = 4;
    /**
     * <code>SERVICETYPE_E2E = 5;</code>
     */
    public static final int SERVICETYPE_E2E_VALUE = 5;


    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static ServiceTypeEnum valueOf(int value) {
      return forNumber(value);
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static ServiceTypeEnum forNumber(int value) {
      switch (value) {
        case 0: return SERVICETYPE_UNKNOWN;
        case 1: return SERVICETYPE_L3NM;
        case 2: return SERVICETYPE_L2NM;
        case 3: return SERVICETYPE_TAPI_CONNECTIVITY_SERVICE;
famelis's avatar
famelis committed
        case 4: return SERVICETYPE_TE;
        case 5: return SERVICETYPE_E2E;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<ServiceTypeEnum>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        ServiceTypeEnum> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<ServiceTypeEnum>() {
            public ServiceTypeEnum findValueByNumber(int number) {
              return ServiceTypeEnum.forNumber(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return context.ContextOuterClass.getDescriptor().getEnumTypes().get(3);
    }

    private static final ServiceTypeEnum[] VALUES = values();

    public static ServiceTypeEnum valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }

    private final int value;

    private ServiceTypeEnum(int value) {
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:context.ServiceTypeEnum)
  }

  /**
   * Protobuf enum {@code context.ServiceStatusEnum}
   */
  public enum ServiceStatusEnum
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <code>SERVICESTATUS_UNDEFINED = 0;</code>
     */
    SERVICESTATUS_UNDEFINED(0),
    /**
     * <code>SERVICESTATUS_PLANNED = 1;</code>
     */
    SERVICESTATUS_PLANNED(1),
    /**
     * <code>SERVICESTATUS_ACTIVE = 2;</code>
     */
    SERVICESTATUS_ACTIVE(2),
    /**
famelis's avatar
famelis committed
     * <code>SERVICESTATUS_UPDATING = 3;</code>
famelis's avatar
famelis committed
    SERVICESTATUS_UPDATING(3),
famelis's avatar
famelis committed
     * <code>SERVICESTATUS_PENDING_REMOVAL = 4;</code>
famelis's avatar
famelis committed
    SERVICESTATUS_PENDING_REMOVAL(4),
    /**
     * <code>SERVICESTATUS_SLA_VIOLATED = 5;</code>
     */
    SERVICESTATUS_SLA_VIOLATED(5),
    UNRECOGNIZED(-1),
    ;

    /**
     * <code>SERVICESTATUS_UNDEFINED = 0;</code>
     */
    public static final int SERVICESTATUS_UNDEFINED_VALUE = 0;
    /**
     * <code>SERVICESTATUS_PLANNED = 1;</code>
     */
    public static final int SERVICESTATUS_PLANNED_VALUE = 1;
    /**
     * <code>SERVICESTATUS_ACTIVE = 2;</code>
     */
    public static final int SERVICESTATUS_ACTIVE_VALUE = 2;
    /**
famelis's avatar
famelis committed
     * <code>SERVICESTATUS_UPDATING = 3;</code>
famelis's avatar
famelis committed
    public static final int SERVICESTATUS_UPDATING_VALUE = 3;
famelis's avatar
famelis committed
     * <code>SERVICESTATUS_PENDING_REMOVAL = 4;</code>
famelis's avatar
famelis committed
    public static final int SERVICESTATUS_PENDING_REMOVAL_VALUE = 4;
famelis's avatar
famelis committed
     * <code>SERVICESTATUS_SLA_VIOLATED = 5;</code>
famelis's avatar
famelis committed
    public static final int SERVICESTATUS_SLA_VIOLATED_VALUE = 5;


    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static ServiceStatusEnum valueOf(int value) {
      return forNumber(value);
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static ServiceStatusEnum forNumber(int value) {
      switch (value) {
        case 0: return SERVICESTATUS_UNDEFINED;
        case 1: return SERVICESTATUS_PLANNED;
        case 2: return SERVICESTATUS_ACTIVE;
famelis's avatar
famelis committed
        case 3: return SERVICESTATUS_UPDATING;
        case 4: return SERVICESTATUS_PENDING_REMOVAL;
        case 5: return SERVICESTATUS_SLA_VIOLATED;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<ServiceStatusEnum>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        ServiceStatusEnum> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<ServiceStatusEnum>() {
            public ServiceStatusEnum findValueByNumber(int number) {
              return ServiceStatusEnum.forNumber(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return context.ContextOuterClass.getDescriptor().getEnumTypes().get(4);
    }

    private static final ServiceStatusEnum[] VALUES = values();

    public static ServiceStatusEnum valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }

    private final int value;

    private ServiceStatusEnum(int value) {
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:context.ServiceStatusEnum)
  }

  /**
   * Protobuf enum {@code context.SliceStatusEnum}
   */
  public enum SliceStatusEnum
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <code>SLICESTATUS_UNDEFINED = 0;</code>
     */
    SLICESTATUS_UNDEFINED(0),
    /**
     * <code>SLICESTATUS_PLANNED = 1;</code>
     */
    SLICESTATUS_PLANNED(1),
    /**
     * <code>SLICESTATUS_INIT = 2;</code>
     */
    SLICESTATUS_INIT(2),
    /**
     * <code>SLICESTATUS_ACTIVE = 3;</code>
     */
    SLICESTATUS_ACTIVE(3),
    /**
     * <code>SLICESTATUS_DEINIT = 4;</code>
     */
    SLICESTATUS_DEINIT(4),
    /**
     * <code>SLICESTATUS_SLA_VIOLATED = 5;</code>
     */
    SLICESTATUS_SLA_VIOLATED(5),
    UNRECOGNIZED(-1),
    ;

    /**
     * <code>SLICESTATUS_UNDEFINED = 0;</code>
     */
    public static final int SLICESTATUS_UNDEFINED_VALUE = 0;
    /**
     * <code>SLICESTATUS_PLANNED = 1;</code>
     */
    public static final int SLICESTATUS_PLANNED_VALUE = 1;
    /**
     * <code>SLICESTATUS_INIT = 2;</code>
     */
    public static final int SLICESTATUS_INIT_VALUE = 2;
    /**
     * <code>SLICESTATUS_ACTIVE = 3;</code>
     */
    public static final int SLICESTATUS_ACTIVE_VALUE = 3;
    /**
     * <code>SLICESTATUS_DEINIT = 4;</code>
     */
    public static final int SLICESTATUS_DEINIT_VALUE = 4;
    /**
     * <code>SLICESTATUS_SLA_VIOLATED = 5;</code>
     */
    public static final int SLICESTATUS_SLA_VIOLATED_VALUE = 5;


    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static SliceStatusEnum valueOf(int value) {
      return forNumber(value);
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static SliceStatusEnum forNumber(int value) {
      switch (value) {
        case 0: return SLICESTATUS_UNDEFINED;
        case 1: return SLICESTATUS_PLANNED;
        case 2: return SLICESTATUS_INIT;
        case 3: return SLICESTATUS_ACTIVE;
        case 4: return SLICESTATUS_DEINIT;
        case 5: return SLICESTATUS_SLA_VIOLATED;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<SliceStatusEnum>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        SliceStatusEnum> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<SliceStatusEnum>() {
            public SliceStatusEnum findValueByNumber(int number) {
              return SliceStatusEnum.forNumber(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return context.ContextOuterClass.getDescriptor().getEnumTypes().get(5);
    }

    private static final SliceStatusEnum[] VALUES = values();

    public static SliceStatusEnum valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }

    private final int value;

    private SliceStatusEnum(int value) {
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:context.SliceStatusEnum)
  }

  /**
   * <pre>
   * ----- Configuration -------------------------------------------------------------------------------------------------
   * </pre>
   *
   * Protobuf enum {@code context.ConfigActionEnum}
   */
  public enum ConfigActionEnum
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <code>CONFIGACTION_UNDEFINED = 0;</code>
     */
    CONFIGACTION_UNDEFINED(0),
    /**
     * <code>CONFIGACTION_SET = 1;</code>
     */
    CONFIGACTION_SET(1),
    /**
     * <code>CONFIGACTION_DELETE = 2;</code>
     */
    CONFIGACTION_DELETE(2),
    UNRECOGNIZED(-1),
    ;

    /**
     * <code>CONFIGACTION_UNDEFINED = 0;</code>
     */
    public static final int CONFIGACTION_UNDEFINED_VALUE = 0;
    /**
     * <code>CONFIGACTION_SET = 1;</code>
     */
    public static final int CONFIGACTION_SET_VALUE = 1;
    /**
     * <code>CONFIGACTION_DELETE = 2;</code>
     */
    public static final int CONFIGACTION_DELETE_VALUE = 2;


    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static ConfigActionEnum valueOf(int value) {
      return forNumber(value);
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static ConfigActionEnum forNumber(int value) {
      switch (value) {
        case 0: return CONFIGACTION_UNDEFINED;
        case 1: return CONFIGACTION_SET;
        case 2: return CONFIGACTION_DELETE;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<ConfigActionEnum>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        ConfigActionEnum> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<ConfigActionEnum>() {
            public ConfigActionEnum findValueByNumber(int number) {
              return ConfigActionEnum.forNumber(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return context.ContextOuterClass.getDescriptor().getEnumTypes().get(6);
    }

    private static final ConfigActionEnum[] VALUES = values();

    public static ConfigActionEnum valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }

    private final int value;

    private ConfigActionEnum(int value) {
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:context.ConfigActionEnum)
  }

famelis's avatar
famelis committed
  /**
   * <pre>
   * ----- Constraint ----------------------------------------------------------------------------------------------------
   * </pre>
   *
   * Protobuf enum {@code context.ConstraintActionEnum}
   */
  public enum ConstraintActionEnum
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <code>CONSTRAINTACTION_UNDEFINED = 0;</code>
     */
    CONSTRAINTACTION_UNDEFINED(0),
    /**
     * <code>CONSTRAINTACTION_SET = 1;</code>
     */
    CONSTRAINTACTION_SET(1),
    /**
     * <code>CONSTRAINTACTION_DELETE = 2;</code>
     */
    CONSTRAINTACTION_DELETE(2),
    UNRECOGNIZED(-1),
    ;

    /**
     * <code>CONSTRAINTACTION_UNDEFINED = 0;</code>
     */
    public static final int CONSTRAINTACTION_UNDEFINED_VALUE = 0;
    /**
     * <code>CONSTRAINTACTION_SET = 1;</code>
     */
    public static final int CONSTRAINTACTION_SET_VALUE = 1;
    /**
     * <code>CONSTRAINTACTION_DELETE = 2;</code>
     */
    public static final int CONSTRAINTACTION_DELETE_VALUE = 2;


    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static ConstraintActionEnum valueOf(int value) {
      return forNumber(value);
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static ConstraintActionEnum forNumber(int value) {
      switch (value) {
        case 0: return CONSTRAINTACTION_UNDEFINED;
        case 1: return CONSTRAINTACTION_SET;
        case 2: return CONSTRAINTACTION_DELETE;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<ConstraintActionEnum>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        ConstraintActionEnum> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<ConstraintActionEnum>() {
            public ConstraintActionEnum findValueByNumber(int number) {
              return ConstraintActionEnum.forNumber(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return context.ContextOuterClass.getDescriptor().getEnumTypes().get(7);
    }

    private static final ConstraintActionEnum[] VALUES = values();

    public static ConstraintActionEnum valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }

    private final int value;

    private ConstraintActionEnum(int value) {
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:context.ConstraintActionEnum)
  }

  /**
   * Protobuf enum {@code context.IsolationLevelEnum}
   */
  public enum IsolationLevelEnum
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <code>NO_ISOLATION = 0;</code>
     */
    NO_ISOLATION(0),
    /**
     * <code>PHYSICAL_ISOLATION = 1;</code>
     */
    PHYSICAL_ISOLATION(1),
    /**
     * <code>LOGICAL_ISOLATION = 2;</code>
     */
    LOGICAL_ISOLATION(2),
    /**
     * <code>PROCESS_ISOLATION = 3;</code>
     */
    PROCESS_ISOLATION(3),
    /**
     * <code>PHYSICAL_MEMORY_ISOLATION = 4;</code>
     */
    PHYSICAL_MEMORY_ISOLATION(4),
    /**
     * <code>PHYSICAL_NETWORK_ISOLATION = 5;</code>
     */
    PHYSICAL_NETWORK_ISOLATION(5),
    /**
     * <code>VIRTUAL_RESOURCE_ISOLATION = 6;</code>
     */
    VIRTUAL_RESOURCE_ISOLATION(6),
    /**
     * <code>NETWORK_FUNCTIONS_ISOLATION = 7;</code>
     */
    NETWORK_FUNCTIONS_ISOLATION(7),
    /**
     * <code>SERVICE_ISOLATION = 8;</code>
     */
    SERVICE_ISOLATION(8),
    UNRECOGNIZED(-1),
    ;

    /**
     * <code>NO_ISOLATION = 0;</code>
     */
    public static final int NO_ISOLATION_VALUE = 0;
    /**
     * <code>PHYSICAL_ISOLATION = 1;</code>
     */
    public static final int PHYSICAL_ISOLATION_VALUE = 1;
    /**
     * <code>LOGICAL_ISOLATION = 2;</code>
     */
    public static final int LOGICAL_ISOLATION_VALUE = 2;
    /**
     * <code>PROCESS_ISOLATION = 3;</code>
     */
    public static final int PROCESS_ISOLATION_VALUE = 3;
    /**
     * <code>PHYSICAL_MEMORY_ISOLATION = 4;</code>
     */
    public static final int PHYSICAL_MEMORY_ISOLATION_VALUE = 4;
    /**
     * <code>PHYSICAL_NETWORK_ISOLATION = 5;</code>
     */
    public static final int PHYSICAL_NETWORK_ISOLATION_VALUE = 5;
    /**
     * <code>VIRTUAL_RESOURCE_ISOLATION = 6;</code>
     */
    public static final int VIRTUAL_RESOURCE_ISOLATION_VALUE = 6;
    /**
     * <code>NETWORK_FUNCTIONS_ISOLATION = 7;</code>
     */
    public static final int NETWORK_FUNCTIONS_ISOLATION_VALUE = 7;
    /**
     * <code>SERVICE_ISOLATION = 8;</code>
     */
    public static final int SERVICE_ISOLATION_VALUE = 8;


    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static IsolationLevelEnum valueOf(int value) {
      return forNumber(value);
    }

    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static IsolationLevelEnum forNumber(int value) {
      switch (value) {
        case 0: return NO_ISOLATION;
        case 1: return PHYSICAL_ISOLATION;
        case 2: return LOGICAL_ISOLATION;
        case 3: return PROCESS_ISOLATION;
        case 4: return PHYSICAL_MEMORY_ISOLATION;
        case 5: return PHYSICAL_NETWORK_ISOLATION;
        case 6: return VIRTUAL_RESOURCE_ISOLATION;
        case 7: return NETWORK_FUNCTIONS_ISOLATION;
        case 8: return SERVICE_ISOLATION;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<IsolationLevelEnum>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        IsolationLevelEnum> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<IsolationLevelEnum>() {
            public IsolationLevelEnum findValueByNumber(int number) {
              return IsolationLevelEnum.forNumber(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.getDescriptor().getEnumTypes().get(8);
    }

    private static final IsolationLevelEnum[] VALUES = values();

    public static IsolationLevelEnum valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }

    private final int value;

    private IsolationLevelEnum(int value) {
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:context.IsolationLevelEnum)
  }

1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200
  public interface EmptyOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Empty)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   * ----- Generic -------------------------------------------------------------------------------------------------------
   * </pre>
   *
   * Protobuf type {@code context.Empty}
   */
  public static final class Empty extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.Empty)
      EmptyOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Empty.newBuilder() to construct.
    private Empty(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private Empty() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Empty();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Empty(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_Empty_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_Empty_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.Empty.class, context.ContextOuterClass.Empty.Builder.class);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.Empty)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.Empty other = (context.ContextOuterClass.Empty) obj;

      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.Empty parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Empty parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Empty parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Empty parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Empty parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Empty parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Empty parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Empty parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Empty parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Empty parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Empty parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Empty parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.Empty prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     * ----- Generic -------------------------------------------------------------------------------------------------------
     * </pre>
     *
     * Protobuf type {@code context.Empty}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.Empty)
        context.ContextOuterClass.EmptyOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_Empty_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_Empty_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.Empty.class, context.ContextOuterClass.Empty.Builder.class);
      }

      // Construct using context.ContextOuterClass.Empty.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_Empty_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.Empty getDefaultInstanceForType() {
        return context.ContextOuterClass.Empty.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.Empty build() {
        context.ContextOuterClass.Empty result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.Empty buildPartial() {
        context.ContextOuterClass.Empty result = new context.ContextOuterClass.Empty(this);
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.Empty) {
          return mergeFrom((context.ContextOuterClass.Empty)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.Empty other) {
        if (other == context.ContextOuterClass.Empty.getDefaultInstance()) return this;
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.Empty parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.Empty) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.Empty)
    }

    // @@protoc_insertion_point(class_scope:context.Empty)
    private static final context.ContextOuterClass.Empty DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.Empty();
    }

    public static context.ContextOuterClass.Empty getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<Empty>
        PARSER = new com.google.protobuf.AbstractParser<Empty>() {
      @java.lang.Override
      public Empty parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Empty(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<Empty> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<Empty> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.Empty getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface UuidOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Uuid)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>string uuid = 1;</code>
     * @return The uuid.
     */
    java.lang.String getUuid();
    /**
     * <code>string uuid = 1;</code>
     * @return The bytes for uuid.
     */
    com.google.protobuf.ByteString
        getUuidBytes();
  }
  /**
   * Protobuf type {@code context.Uuid}
   */
  public static final class Uuid extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.Uuid)
      UuidOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Uuid.newBuilder() to construct.
    private Uuid(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private Uuid() {
      uuid_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Uuid();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Uuid(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              uuid_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_Uuid_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_Uuid_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.Uuid.class, context.ContextOuterClass.Uuid.Builder.class);
    }

    public static final int UUID_FIELD_NUMBER = 1;
    private volatile java.lang.Object uuid_;
    /**
     * <code>string uuid = 1;</code>
     * @return The uuid.
     */
    @java.lang.Override
    public java.lang.String getUuid() {
      java.lang.Object ref = uuid_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        uuid_ = s;
        return s;
      }
    }
    /**
     * <code>string uuid = 1;</code>
     * @return The bytes for uuid.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getUuidBytes() {
      java.lang.Object ref = uuid_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        uuid_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getUuidBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, uuid_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getUuidBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, uuid_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.Uuid)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.Uuid other = (context.ContextOuterClass.Uuid) obj;

      if (!getUuid()
          .equals(other.getUuid())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + UUID_FIELD_NUMBER;
      hash = (53 * hash) + getUuid().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.Uuid parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Uuid parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Uuid parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Uuid parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Uuid parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Uuid parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Uuid parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Uuid parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Uuid parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Uuid parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Uuid parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Uuid parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.Uuid prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.Uuid}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.Uuid)
        context.ContextOuterClass.UuidOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_Uuid_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_Uuid_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.Uuid.class, context.ContextOuterClass.Uuid.Builder.class);
      }

      // Construct using context.ContextOuterClass.Uuid.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        uuid_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_Uuid_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.Uuid getDefaultInstanceForType() {
        return context.ContextOuterClass.Uuid.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.Uuid build() {
        context.ContextOuterClass.Uuid result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.Uuid buildPartial() {
        context.ContextOuterClass.Uuid result = new context.ContextOuterClass.Uuid(this);
        result.uuid_ = uuid_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.Uuid) {
          return mergeFrom((context.ContextOuterClass.Uuid)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.Uuid other) {
        if (other == context.ContextOuterClass.Uuid.getDefaultInstance()) return this;
        if (!other.getUuid().isEmpty()) {
          uuid_ = other.uuid_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.Uuid parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.Uuid) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private java.lang.Object uuid_ = "";
      /**
       * <code>string uuid = 1;</code>
       * @return The uuid.
       */
      public java.lang.String getUuid() {
        java.lang.Object ref = uuid_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          uuid_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string uuid = 1;</code>
       * @return The bytes for uuid.
       */
      public com.google.protobuf.ByteString
          getUuidBytes() {
        java.lang.Object ref = uuid_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          uuid_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string uuid = 1;</code>
       * @param value The uuid to set.
       * @return This builder for chaining.
       */
      public Builder setUuid(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        uuid_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string uuid = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearUuid() {
        
        uuid_ = getDefaultInstance().getUuid();
        onChanged();
        return this;
      }
      /**
       * <code>string uuid = 1;</code>
       * @param value The bytes for uuid to set.
       * @return This builder for chaining.
       */
      public Builder setUuidBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        uuid_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.Uuid)
    }

    // @@protoc_insertion_point(class_scope:context.Uuid)
    private static final context.ContextOuterClass.Uuid DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.Uuid();
    }

    public static context.ContextOuterClass.Uuid getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<Uuid>
        PARSER = new com.google.protobuf.AbstractParser<Uuid>() {
      @java.lang.Override
      public Uuid parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Uuid(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<Uuid> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<Uuid> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.Uuid getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TimestampOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Timestamp)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>double timestamp = 1;</code>
     * @return The timestamp.
     */
    double getTimestamp();
  }
  /**
   * Protobuf type {@code context.Timestamp}
  public static final class Timestamp extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.Timestamp)
      TimestampOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Timestamp.newBuilder() to construct.
    private Timestamp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private Timestamp() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Timestamp();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Timestamp(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 9: {

              timestamp_ = input.readDouble();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_Timestamp_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_Timestamp_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.Timestamp.class, context.ContextOuterClass.Timestamp.Builder.class);
    }

    public static final int TIMESTAMP_FIELD_NUMBER = 1;
    private double timestamp_;
    /**
     * <code>double timestamp = 1;</code>
     * @return The timestamp.
     */
    @java.lang.Override
    public double getTimestamp() {
      return timestamp_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (timestamp_ != 0D) {
        output.writeDouble(1, timestamp_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (timestamp_ != 0D) {
        size += com.google.protobuf.CodedOutputStream
          .computeDoubleSize(1, timestamp_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.Timestamp)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.Timestamp other = (context.ContextOuterClass.Timestamp) obj;

      if (java.lang.Double.doubleToLongBits(getTimestamp())
          != java.lang.Double.doubleToLongBits(
              other.getTimestamp())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          java.lang.Double.doubleToLongBits(getTimestamp()));
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.Timestamp parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Timestamp parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Timestamp parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Timestamp parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Timestamp parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Timestamp parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Timestamp parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Timestamp parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Timestamp parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Timestamp parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Timestamp parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Timestamp parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.Timestamp prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.Timestamp}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.Timestamp)
        context.ContextOuterClass.TimestampOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_Timestamp_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_Timestamp_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.Timestamp.class, context.ContextOuterClass.Timestamp.Builder.class);
      // Construct using context.ContextOuterClass.Timestamp.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        timestamp_ = 0D;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_Timestamp_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.Timestamp getDefaultInstanceForType() {
        return context.ContextOuterClass.Timestamp.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.Timestamp build() {
        context.ContextOuterClass.Timestamp result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.Timestamp buildPartial() {
        context.ContextOuterClass.Timestamp result = new context.ContextOuterClass.Timestamp(this);
        result.timestamp_ = timestamp_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.Timestamp) {
          return mergeFrom((context.ContextOuterClass.Timestamp)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.Timestamp other) {
        if (other == context.ContextOuterClass.Timestamp.getDefaultInstance()) return this;
        if (other.getTimestamp() != 0D) {
          setTimestamp(other.getTimestamp());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.Timestamp parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.Timestamp) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private double timestamp_ ;
      /**
       * <code>double timestamp = 1;</code>
       * @return The timestamp.
       */
      @java.lang.Override
      public double getTimestamp() {
        return timestamp_;
      }
      /**
       * <code>double timestamp = 1;</code>
       * @param value The timestamp to set.
       * @return This builder for chaining.
       */
      public Builder setTimestamp(double value) {
        
        timestamp_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>double timestamp = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTimestamp() {
        
        timestamp_ = 0D;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.Timestamp)
    // @@protoc_insertion_point(class_scope:context.Timestamp)
    private static final context.ContextOuterClass.Timestamp DEFAULT_INSTANCE;
      DEFAULT_INSTANCE = new context.ContextOuterClass.Timestamp();
    public static context.ContextOuterClass.Timestamp getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<Timestamp>
        PARSER = new com.google.protobuf.AbstractParser<Timestamp>() {
      @java.lang.Override
      public Timestamp parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Timestamp(input, extensionRegistry);
    public static com.google.protobuf.Parser<Timestamp> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<Timestamp> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.Timestamp getDefaultInstanceForType() {
  public interface EventOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Event)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.Timestamp timestamp = 1;</code>
     * @return Whether the timestamp field is set.
    boolean hasTimestamp();
     * <code>.context.Timestamp timestamp = 1;</code>
     * @return The timestamp.
    context.ContextOuterClass.Timestamp getTimestamp();
     * <code>.context.Timestamp timestamp = 1;</code>
    context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder();

    /**
     * <code>.context.EventTypeEnum event_type = 2;</code>
     * @return The enum numeric value on the wire for eventType.
     */
    int getEventTypeValue();
    /**
     * <code>.context.EventTypeEnum event_type = 2;</code>
     * @return The eventType.
     */
    context.ContextOuterClass.EventTypeEnum getEventType();
   * Protobuf type {@code context.Event}
  public static final class Event extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.Event)
      EventOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Event.newBuilder() to construct.
    private Event(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private Event() {
      eventType_ = 0;
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Event();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Event(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.Timestamp.Builder subBuilder = null;
              if (timestamp_ != null) {
                subBuilder = timestamp_.toBuilder();
              timestamp_ = input.readMessage(context.ContextOuterClass.Timestamp.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(timestamp_);
                timestamp_ = subBuilder.buildPartial();
            case 16: {
              int rawValue = input.readEnum();

              eventType_ = rawValue;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_Event_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_Event_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.Event.class, context.ContextOuterClass.Event.Builder.class);
    public static final int TIMESTAMP_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Timestamp timestamp_;
     * <code>.context.Timestamp timestamp = 1;</code>
     * @return Whether the timestamp field is set.
     */
    @java.lang.Override
    public boolean hasTimestamp() {
      return timestamp_ != null;
     * <code>.context.Timestamp timestamp = 1;</code>
     * @return The timestamp.
     */
    @java.lang.Override
    public context.ContextOuterClass.Timestamp getTimestamp() {
      return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_;
     * <code>.context.Timestamp timestamp = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() {
      return getTimestamp();
    }

    public static final int EVENT_TYPE_FIELD_NUMBER = 2;
    private int eventType_;
    /**
     * <code>.context.EventTypeEnum event_type = 2;</code>
     * @return The enum numeric value on the wire for eventType.
     */
    @java.lang.Override public int getEventTypeValue() {
      return eventType_;
    }
    /**
     * <code>.context.EventTypeEnum event_type = 2;</code>
     * @return The eventType.
     */
    @java.lang.Override public context.ContextOuterClass.EventTypeEnum getEventType() {
      @SuppressWarnings("deprecation")
      context.ContextOuterClass.EventTypeEnum result = context.ContextOuterClass.EventTypeEnum.valueOf(eventType_);
      return result == null ? context.ContextOuterClass.EventTypeEnum.UNRECOGNIZED : result;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (timestamp_ != null) {
        output.writeMessage(1, getTimestamp());
      }
      if (eventType_ != context.ContextOuterClass.EventTypeEnum.EVENTTYPE_UNDEFINED.getNumber()) {
        output.writeEnum(2, eventType_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (timestamp_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getTimestamp());
      }
      if (eventType_ != context.ContextOuterClass.EventTypeEnum.EVENTTYPE_UNDEFINED.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(2, eventType_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.Event)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.Event other = (context.ContextOuterClass.Event) obj;
      if (hasTimestamp() != other.hasTimestamp()) return false;
      if (hasTimestamp()) {
        if (!getTimestamp()
            .equals(other.getTimestamp())) return false;
      if (eventType_ != other.eventType_) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasTimestamp()) {
        hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
        hash = (53 * hash) + getTimestamp().hashCode();
      hash = (37 * hash) + EVENT_TYPE_FIELD_NUMBER;
      hash = (53 * hash) + eventType_;
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.Event parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Event parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Event parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Event parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Event parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Event parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Event parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Event parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Event parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Event parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Event parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Event parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.Event prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.Event}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.Event)
        context.ContextOuterClass.EventOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_Event_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_Event_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.Event.class, context.ContextOuterClass.Event.Builder.class);
      // Construct using context.ContextOuterClass.Event.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (timestampBuilder_ == null) {
          timestamp_ = null;
          timestamp_ = null;
          timestampBuilder_ = null;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_Event_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.Event getDefaultInstanceForType() {
        return context.ContextOuterClass.Event.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.Event build() {
        context.ContextOuterClass.Event result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.Event buildPartial() {
        context.ContextOuterClass.Event result = new context.ContextOuterClass.Event(this);
        if (timestampBuilder_ == null) {
          result.timestamp_ = timestamp_;
          result.timestamp_ = timestampBuilder_.build();
        result.eventType_ = eventType_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.Event) {
          return mergeFrom((context.ContextOuterClass.Event)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.Event other) {
        if (other == context.ContextOuterClass.Event.getDefaultInstance()) return this;
        if (other.hasTimestamp()) {
          mergeTimestamp(other.getTimestamp());
        }
        if (other.eventType_ != 0) {
          setEventTypeValue(other.getEventTypeValue());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.Event parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.Event) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private context.ContextOuterClass.Timestamp timestamp_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> timestampBuilder_;
       * <code>.context.Timestamp timestamp = 1;</code>
       * @return Whether the timestamp field is set.
      public boolean hasTimestamp() {
        return timestampBuilder_ != null || timestamp_ != null;
       * <code>.context.Timestamp timestamp = 1;</code>
       * @return The timestamp.
      public context.ContextOuterClass.Timestamp getTimestamp() {
        if (timestampBuilder_ == null) {
          return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_;
          return timestampBuilder_.getMessage();
       * <code>.context.Timestamp timestamp = 1;</code>
      public Builder setTimestamp(context.ContextOuterClass.Timestamp value) {
        if (timestampBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          timestamp_ = value;
          onChanged();
        } else {
          timestampBuilder_.setMessage(value);
       * <code>.context.Timestamp timestamp = 1;</code>
      public Builder setTimestamp(
          context.ContextOuterClass.Timestamp.Builder builderForValue) {
        if (timestampBuilder_ == null) {
          timestamp_ = builderForValue.build();
          onChanged();
        } else {
          timestampBuilder_.setMessage(builderForValue.build());
       * <code>.context.Timestamp timestamp = 1;</code>
      public Builder mergeTimestamp(context.ContextOuterClass.Timestamp value) {
        if (timestampBuilder_ == null) {
          if (timestamp_ != null) {
            timestamp_ =
              context.ContextOuterClass.Timestamp.newBuilder(timestamp_).mergeFrom(value).buildPartial();
            timestamp_ = value;
          }
          onChanged();
        } else {
          timestampBuilder_.mergeFrom(value);
       * <code>.context.Timestamp timestamp = 1;</code>
      public Builder clearTimestamp() {
        if (timestampBuilder_ == null) {
          timestamp_ = null;
          onChanged();
        } else {
          timestamp_ = null;
          timestampBuilder_ = null;
       * <code>.context.Timestamp timestamp = 1;</code>
      public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() {
        return getTimestampFieldBuilder().getBuilder();
       * <code>.context.Timestamp timestamp = 1;</code>
      public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() {
        if (timestampBuilder_ != null) {
          return timestampBuilder_.getMessageOrBuilder();
          return timestamp_ == null ?
              context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_;
       * <code>.context.Timestamp timestamp = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> 
          getTimestampFieldBuilder() {
        if (timestampBuilder_ == null) {
          timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>(
                  getTimestamp(),
                  getParentForChildren(),
                  isClean());
          timestamp_ = null;
        return timestampBuilder_;
      }

      private int eventType_ = 0;
      /**
       * <code>.context.EventTypeEnum event_type = 2;</code>
       * @return The enum numeric value on the wire for eventType.
       */
      @java.lang.Override public int getEventTypeValue() {
        return eventType_;
      }
      /**
       * <code>.context.EventTypeEnum event_type = 2;</code>
       * @param value The enum numeric value on the wire for eventType to set.
       * @return This builder for chaining.
       */
      public Builder setEventTypeValue(int value) {
        
        eventType_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>.context.EventTypeEnum event_type = 2;</code>
       * @return The eventType.
       */
      @java.lang.Override
      public context.ContextOuterClass.EventTypeEnum getEventType() {
        @SuppressWarnings("deprecation")
        context.ContextOuterClass.EventTypeEnum result = context.ContextOuterClass.EventTypeEnum.valueOf(eventType_);
        return result == null ? context.ContextOuterClass.EventTypeEnum.UNRECOGNIZED : result;
      }
      /**
       * <code>.context.EventTypeEnum event_type = 2;</code>
       * @param value The eventType to set.
       * @return This builder for chaining.
       */
      public Builder setEventType(context.ContextOuterClass.EventTypeEnum value) {
        if (value == null) {
          throw new NullPointerException();
        }
        
        eventType_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * <code>.context.EventTypeEnum event_type = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearEventType() {
        
        eventType_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.Event)
    // @@protoc_insertion_point(class_scope:context.Event)
    private static final context.ContextOuterClass.Event DEFAULT_INSTANCE;
      DEFAULT_INSTANCE = new context.ContextOuterClass.Event();
    public static context.ContextOuterClass.Event getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<Event>
        PARSER = new com.google.protobuf.AbstractParser<Event>() {
      @java.lang.Override
      public Event parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Event(input, extensionRegistry);
    public static com.google.protobuf.Parser<Event> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<Event> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.Event getDefaultInstanceForType() {
  public interface ContextIdOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ContextId)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.Uuid context_uuid = 1;</code>
     * @return Whether the contextUuid field is set.
    boolean hasContextUuid();
     * <code>.context.Uuid context_uuid = 1;</code>
     * @return The contextUuid.
    context.ContextOuterClass.Uuid getContextUuid();
     * <code>.context.Uuid context_uuid = 1;</code>
    context.ContextOuterClass.UuidOrBuilder getContextUuidOrBuilder();
   * <pre>
   * ----- Context -------------------------------------------------------------------------------------------------------
   * </pre>
   *
   * Protobuf type {@code context.ContextId}
  public static final class ContextId extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.ContextId)
      ContextIdOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ContextId.newBuilder() to construct.
    private ContextId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ContextId() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ContextId();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ContextId(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.Uuid.Builder subBuilder = null;
              if (contextUuid_ != null) {
                subBuilder = contextUuid_.toBuilder();
              contextUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(contextUuid_);
                contextUuid_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_ContextId_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_ContextId_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.ContextId.class, context.ContextOuterClass.ContextId.Builder.class);
    public static final int CONTEXT_UUID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Uuid contextUuid_;
     * <code>.context.Uuid context_uuid = 1;</code>
     * @return Whether the contextUuid field is set.
     */
    @java.lang.Override
    public boolean hasContextUuid() {
      return contextUuid_ != null;
     * <code>.context.Uuid context_uuid = 1;</code>
     * @return The contextUuid.
     */
    @java.lang.Override
    public context.ContextOuterClass.Uuid getContextUuid() {
      return contextUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : contextUuid_;
     * <code>.context.Uuid context_uuid = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.UuidOrBuilder getContextUuidOrBuilder() {
      return getContextUuid();
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (contextUuid_ != null) {
        output.writeMessage(1, getContextUuid());
      }
      unknownFields.writeTo(output);
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (contextUuid_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getContextUuid());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.ContextId)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.ContextId other = (context.ContextOuterClass.ContextId) obj;
      if (hasContextUuid() != other.hasContextUuid()) return false;
      if (hasContextUuid()) {
        if (!getContextUuid()
            .equals(other.getContextUuid())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasContextUuid()) {
        hash = (37 * hash) + CONTEXT_UUID_FIELD_NUMBER;
        hash = (53 * hash) + getContextUuid().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.ContextId parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextId parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextId parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextId parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextId parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextId parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextId parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextId parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextId parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextId parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextId parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextId parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.ContextId prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     * ----- Context -------------------------------------------------------------------------------------------------------
     * </pre>
     *
     * Protobuf type {@code context.ContextId}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.ContextId)
        context.ContextOuterClass.ContextIdOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_ContextId_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_ContextId_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.ContextId.class, context.ContextOuterClass.ContextId.Builder.class);
      // Construct using context.ContextOuterClass.ContextId.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (contextUuidBuilder_ == null) {
          contextUuid_ = null;
          contextUuid_ = null;
          contextUuidBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_ContextId_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextId getDefaultInstanceForType() {
        return context.ContextOuterClass.ContextId.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextId build() {
        context.ContextOuterClass.ContextId result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextId buildPartial() {
        context.ContextOuterClass.ContextId result = new context.ContextOuterClass.ContextId(this);
        if (contextUuidBuilder_ == null) {
          result.contextUuid_ = contextUuid_;
          result.contextUuid_ = contextUuidBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.ContextId) {
          return mergeFrom((context.ContextOuterClass.ContextId)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.ContextId other) {
        if (other == context.ContextOuterClass.ContextId.getDefaultInstance()) return this;
        if (other.hasContextUuid()) {
          mergeContextUuid(other.getContextUuid());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.ContextId parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.ContextId) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private context.ContextOuterClass.Uuid contextUuid_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> contextUuidBuilder_;
       * <code>.context.Uuid context_uuid = 1;</code>
       * @return Whether the contextUuid field is set.
      public boolean hasContextUuid() {
        return contextUuidBuilder_ != null || contextUuid_ != null;
       * <code>.context.Uuid context_uuid = 1;</code>
       * @return The contextUuid.
      public context.ContextOuterClass.Uuid getContextUuid() {
        if (contextUuidBuilder_ == null) {
          return contextUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : contextUuid_;
          return contextUuidBuilder_.getMessage();
       * <code>.context.Uuid context_uuid = 1;</code>
      public Builder setContextUuid(context.ContextOuterClass.Uuid value) {
        if (contextUuidBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          contextUuid_ = value;
          onChanged();
        } else {
          contextUuidBuilder_.setMessage(value);
       * <code>.context.Uuid context_uuid = 1;</code>
      public Builder setContextUuid(
          context.ContextOuterClass.Uuid.Builder builderForValue) {
        if (contextUuidBuilder_ == null) {
          contextUuid_ = builderForValue.build();
          onChanged();
        } else {
          contextUuidBuilder_.setMessage(builderForValue.build());
       * <code>.context.Uuid context_uuid = 1;</code>
      public Builder mergeContextUuid(context.ContextOuterClass.Uuid value) {
        if (contextUuidBuilder_ == null) {
          if (contextUuid_ != null) {
            contextUuid_ =
              context.ContextOuterClass.Uuid.newBuilder(contextUuid_).mergeFrom(value).buildPartial();
            contextUuid_ = value;
          }
          onChanged();
        } else {
          contextUuidBuilder_.mergeFrom(value);
       * <code>.context.Uuid context_uuid = 1;</code>
      public Builder clearContextUuid() {
        if (contextUuidBuilder_ == null) {
          contextUuid_ = null;
          onChanged();
        } else {
          contextUuid_ = null;
          contextUuidBuilder_ = null;
       * <code>.context.Uuid context_uuid = 1;</code>
      public context.ContextOuterClass.Uuid.Builder getContextUuidBuilder() {
        return getContextUuidFieldBuilder().getBuilder();
       * <code>.context.Uuid context_uuid = 1;</code>
      public context.ContextOuterClass.UuidOrBuilder getContextUuidOrBuilder() {
        if (contextUuidBuilder_ != null) {
          return contextUuidBuilder_.getMessageOrBuilder();
          return contextUuid_ == null ?
              context.ContextOuterClass.Uuid.getDefaultInstance() : contextUuid_;
       * <code>.context.Uuid context_uuid = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> 
          getContextUuidFieldBuilder() {
        if (contextUuidBuilder_ == null) {
          contextUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>(
                  getContextUuid(),
                  getParentForChildren(),
                  isClean());
          contextUuid_ = null;
        return contextUuidBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      // @@protoc_insertion_point(builder_scope:context.ContextId)
    }

    // @@protoc_insertion_point(class_scope:context.ContextId)
    private static final context.ContextOuterClass.ContextId DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.ContextId();
    }

    public static context.ContextOuterClass.ContextId getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ContextId>
        PARSER = new com.google.protobuf.AbstractParser<ContextId>() {
      @java.lang.Override
      public ContextId parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ContextId(input, extensionRegistry);
    };

    public static com.google.protobuf.Parser<ContextId> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ContextId> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.ContextId getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ContextOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Context)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.ContextId context_id = 1;</code>
     * @return Whether the contextId field is set.
     */
    boolean hasContextId();
    /**
     * <code>.context.ContextId context_id = 1;</code>
     * @return The contextId.
     */
    context.ContextOuterClass.ContextId getContextId();
    /**
     * <code>.context.ContextId context_id = 1;</code>
     */
    context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder();

    /**
     * <code>string name = 2;</code>
     * @return The name.
     */
    java.lang.String getName();
    /**
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    java.util.List<context.ContextOuterClass.TopologyId> 
        getTopologyIdsList();
    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    context.ContextOuterClass.TopologyId getTopologyIds(int index);
    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    int getTopologyIdsCount();
    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> 
        getTopologyIdsOrBuilderList();
    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder(
        int index);

    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
    java.util.List<context.ContextOuterClass.ServiceId> 
        getServiceIdsList();
    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
     */
    context.ContextOuterClass.ServiceId getServiceIds(int index);
    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
     */
    int getServiceIdsCount();
    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
     */
    java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> 
        getServiceIdsOrBuilderList();
    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
     */
    context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder(
        int index);

    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    java.util.List<context.ContextOuterClass.SliceId> 
        getSliceIdsList();
    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    context.ContextOuterClass.SliceId getSliceIds(int index);
    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    int getSliceIdsCount();
    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> 
        getSliceIdsOrBuilderList();
    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder(
        int index);

    /**
     * <code>.context.TeraFlowController controller = 6;</code>
     * @return Whether the controller field is set.
     */
    boolean hasController();
    /**
     * <code>.context.TeraFlowController controller = 6;</code>
     * @return The controller.
     */
    context.ContextOuterClass.TeraFlowController getController();
    /**
     * <code>.context.TeraFlowController controller = 6;</code>
     */
    context.ContextOuterClass.TeraFlowControllerOrBuilder getControllerOrBuilder();
  }
  /**
   * Protobuf type {@code context.Context}
   */
  public static final class Context extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.Context)
      ContextOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Context.newBuilder() to construct.
    private Context(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private Context() {
      name_ = "";
      topologyIds_ = java.util.Collections.emptyList();
      serviceIds_ = java.util.Collections.emptyList();
      sliceIds_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Context();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Context(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.ContextId.Builder subBuilder = null;
              if (contextId_ != null) {
                subBuilder = contextId_.toBuilder();
              }
              contextId_ = input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(contextId_);
                contextId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                topologyIds_ = new java.util.ArrayList<context.ContextOuterClass.TopologyId>();
                mutable_bitField0_ |= 0x00000001;
              }
              topologyIds_.add(
                  input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry));
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>();
                mutable_bitField0_ |= 0x00000002;
              }
              serviceIds_.add(
                  input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry));
              break;
            }
            case 42: {
              if (!((mutable_bitField0_ & 0x00000004) != 0)) {
                sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>();
                mutable_bitField0_ |= 0x00000004;
              }
              sliceIds_.add(
                  input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry));
              break;
            }
            case 50: {
              context.ContextOuterClass.TeraFlowController.Builder subBuilder = null;
              if (controller_ != null) {
                subBuilder = controller_.toBuilder();
              }
              controller_ = input.readMessage(context.ContextOuterClass.TeraFlowController.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(controller_);
                controller_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          topologyIds_ = java.util.Collections.unmodifiableList(topologyIds_);
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_);
        }
        if (((mutable_bitField0_ & 0x00000004) != 0)) {
          sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_Context_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_Context_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.Context.class, context.ContextOuterClass.Context.Builder.class);
    }

    public static final int CONTEXT_ID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.ContextId contextId_;
    /**
     * <code>.context.ContextId context_id = 1;</code>
     * @return Whether the contextId field is set.
     */
    @java.lang.Override
    public boolean hasContextId() {
      return contextId_ != null;
    }
    /**
     * <code>.context.ContextId context_id = 1;</code>
     * @return The contextId.
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextId getContextId() {
      return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
    }
    /**
     * <code>.context.ContextId context_id = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() {
      return getContextId();
    }

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
    /**
     * <code>string name = 2;</code>
     * @return The name.
     */
    @java.lang.Override
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int TOPOLOGY_IDS_FIELD_NUMBER = 3;
    private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_;
    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() {
      return topologyIds_;
    }
    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> 
        getTopologyIdsOrBuilderList() {
      return topologyIds_;
    }
    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    @java.lang.Override
    public int getTopologyIdsCount() {
      return topologyIds_.size();
    }
    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyId getTopologyIds(int index) {
      return topologyIds_.get(index);
    }
    /**
     * <code>repeated .context.TopologyId topology_ids = 3;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder(
        int index) {
      return topologyIds_.get(index);
    }

    public static final int SERVICE_IDS_FIELD_NUMBER = 4;
    private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_;
    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() {
      return serviceIds_;
    }
    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> 
        getServiceIdsOrBuilderList() {
      return serviceIds_;
    }
    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
     */
    @java.lang.Override
    public int getServiceIdsCount() {
      return serviceIds_.size();
    }
    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ServiceId getServiceIds(int index) {
      return serviceIds_.get(index);
    }
    /**
     * <code>repeated .context.ServiceId service_ids = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder(
        int index) {
      return serviceIds_.get(index);
    }

    public static final int SLICE_IDS_FIELD_NUMBER = 5;
    private java.util.List<context.ContextOuterClass.SliceId> sliceIds_;
    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() {
      return sliceIds_;
    }
    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> 
        getSliceIdsOrBuilderList() {
      return sliceIds_;
    }
    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    @java.lang.Override
    public int getSliceIdsCount() {
      return sliceIds_.size();
    }
    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.SliceId getSliceIds(int index) {
      return sliceIds_.get(index);
    }
    /**
     * <code>repeated .context.SliceId slice_ids = 5;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder(
        int index) {
      return sliceIds_.get(index);
    }

    public static final int CONTROLLER_FIELD_NUMBER = 6;
    private context.ContextOuterClass.TeraFlowController controller_;
    /**
     * <code>.context.TeraFlowController controller = 6;</code>
     * @return Whether the controller field is set.
     */
    @java.lang.Override
    public boolean hasController() {
      return controller_ != null;
    }
    /**
     * <code>.context.TeraFlowController controller = 6;</code>
     * @return The controller.
     */
    @java.lang.Override
    public context.ContextOuterClass.TeraFlowController getController() {
      return controller_ == null ? context.ContextOuterClass.TeraFlowController.getDefaultInstance() : controller_;
    }
    /**
     * <code>.context.TeraFlowController controller = 6;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TeraFlowControllerOrBuilder getControllerOrBuilder() {
      return getController();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (contextId_ != null) {
        output.writeMessage(1, getContextId());
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      for (int i = 0; i < topologyIds_.size(); i++) {
        output.writeMessage(3, topologyIds_.get(i));
      }
      for (int i = 0; i < serviceIds_.size(); i++) {
        output.writeMessage(4, serviceIds_.get(i));
      }
      for (int i = 0; i < sliceIds_.size(); i++) {
        output.writeMessage(5, sliceIds_.get(i));
      }
      if (controller_ != null) {
        output.writeMessage(6, getController());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (contextId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getContextId());
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      for (int i = 0; i < topologyIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, topologyIds_.get(i));
      }
      for (int i = 0; i < serviceIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, serviceIds_.get(i));
      }
      for (int i = 0; i < sliceIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, sliceIds_.get(i));
      }
      if (controller_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, getController());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.Context)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.Context other = (context.ContextOuterClass.Context) obj;

      if (hasContextId() != other.hasContextId()) return false;
      if (hasContextId()) {
        if (!getContextId()
            .equals(other.getContextId())) return false;
      }
      if (!getName()
          .equals(other.getName())) return false;
      if (!getTopologyIdsList()
          .equals(other.getTopologyIdsList())) return false;
      if (!getServiceIdsList()
          .equals(other.getServiceIdsList())) return false;
      if (!getSliceIdsList()
          .equals(other.getSliceIdsList())) return false;
      if (hasController() != other.hasController()) return false;
      if (hasController()) {
        if (!getController()
            .equals(other.getController())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasContextId()) {
        hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER;
        hash = (53 * hash) + getContextId().hashCode();
      }
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      if (getTopologyIdsCount() > 0) {
        hash = (37 * hash) + TOPOLOGY_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getTopologyIdsList().hashCode();
      }
      if (getServiceIdsCount() > 0) {
        hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getServiceIdsList().hashCode();
      }
      if (getSliceIdsCount() > 0) {
        hash = (37 * hash) + SLICE_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getSliceIdsList().hashCode();
      }
      if (hasController()) {
        hash = (37 * hash) + CONTROLLER_FIELD_NUMBER;
        hash = (53 * hash) + getController().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.Context parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Context parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Context parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Context parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Context parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Context parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Context parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Context parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Context parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Context parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Context parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Context parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.Context prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.Context}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.Context)
        context.ContextOuterClass.ContextOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_Context_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_Context_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.Context.class, context.ContextOuterClass.Context.Builder.class);
      }

      // Construct using context.ContextOuterClass.Context.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getTopologyIdsFieldBuilder();
          getServiceIdsFieldBuilder();
          getSliceIdsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (contextIdBuilder_ == null) {
          contextId_ = null;
        } else {
          contextId_ = null;
          contextIdBuilder_ = null;
        }
        if (topologyIdsBuilder_ == null) {
          topologyIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          topologyIdsBuilder_.clear();
        }
        if (serviceIdsBuilder_ == null) {
          serviceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          serviceIdsBuilder_.clear();
        }
        if (sliceIdsBuilder_ == null) {
          sliceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
        } else {
          sliceIdsBuilder_.clear();
        }
        if (controllerBuilder_ == null) {
          controller_ = null;
        } else {
          controller_ = null;
          controllerBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_Context_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.Context getDefaultInstanceForType() {
        return context.ContextOuterClass.Context.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.Context build() {
        context.ContextOuterClass.Context result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.Context buildPartial() {
        context.ContextOuterClass.Context result = new context.ContextOuterClass.Context(this);
        int from_bitField0_ = bitField0_;
        if (contextIdBuilder_ == null) {
          result.contextId_ = contextId_;
        } else {
          result.contextId_ = contextIdBuilder_.build();
        }
        result.name_ = name_;
        if (topologyIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            topologyIds_ = java.util.Collections.unmodifiableList(topologyIds_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.topologyIds_ = topologyIds_;
        } else {
          result.topologyIds_ = topologyIdsBuilder_.build();
        }
        if (serviceIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) != 0)) {
            serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.serviceIds_ = serviceIds_;
        } else {
          result.serviceIds_ = serviceIdsBuilder_.build();
        }
        if (sliceIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000004) != 0)) {
            sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_);
            bitField0_ = (bitField0_ & ~0x00000004);
          }
          result.sliceIds_ = sliceIds_;
        } else {
          result.sliceIds_ = sliceIdsBuilder_.build();
        }
        if (controllerBuilder_ == null) {
          result.controller_ = controller_;
        } else {
          result.controller_ = controllerBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.Context) {
          return mergeFrom((context.ContextOuterClass.Context)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.Context other) {
        if (other == context.ContextOuterClass.Context.getDefaultInstance()) return this;
        if (other.hasContextId()) {
          mergeContextId(other.getContextId());
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (topologyIdsBuilder_ == null) {
          if (!other.topologyIds_.isEmpty()) {
            if (topologyIds_.isEmpty()) {
              topologyIds_ = other.topologyIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureTopologyIdsIsMutable();
              topologyIds_.addAll(other.topologyIds_);
            }
            onChanged();
          }
        } else {
          if (!other.topologyIds_.isEmpty()) {
            if (topologyIdsBuilder_.isEmpty()) {
              topologyIdsBuilder_.dispose();
              topologyIdsBuilder_ = null;
              topologyIds_ = other.topologyIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
              topologyIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getTopologyIdsFieldBuilder() : null;
            } else {
              topologyIdsBuilder_.addAllMessages(other.topologyIds_);
            }
          }
        }
        if (serviceIdsBuilder_ == null) {
          if (!other.serviceIds_.isEmpty()) {
            if (serviceIds_.isEmpty()) {
              serviceIds_ = other.serviceIds_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureServiceIdsIsMutable();
              serviceIds_.addAll(other.serviceIds_);
            }
            onChanged();
          }
        } else {
          if (!other.serviceIds_.isEmpty()) {
            if (serviceIdsBuilder_.isEmpty()) {
              serviceIdsBuilder_.dispose();
              serviceIdsBuilder_ = null;
              serviceIds_ = other.serviceIds_;
              bitField0_ = (bitField0_ & ~0x00000002);
              serviceIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getServiceIdsFieldBuilder() : null;
            } else {
              serviceIdsBuilder_.addAllMessages(other.serviceIds_);
            }
          }
        }
        if (sliceIdsBuilder_ == null) {
          if (!other.sliceIds_.isEmpty()) {
            if (sliceIds_.isEmpty()) {
              sliceIds_ = other.sliceIds_;
              bitField0_ = (bitField0_ & ~0x00000004);
            } else {
              ensureSliceIdsIsMutable();
              sliceIds_.addAll(other.sliceIds_);
            }
            onChanged();
          }
        } else {
          if (!other.sliceIds_.isEmpty()) {
            if (sliceIdsBuilder_.isEmpty()) {
              sliceIdsBuilder_.dispose();
              sliceIdsBuilder_ = null;
              sliceIds_ = other.sliceIds_;
              bitField0_ = (bitField0_ & ~0x00000004);
              sliceIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getSliceIdsFieldBuilder() : null;
            } else {
              sliceIdsBuilder_.addAllMessages(other.sliceIds_);
            }
          }
        }
        if (other.hasController()) {
          mergeController(other.getController());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.Context parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.Context) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private context.ContextOuterClass.ContextId contextId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> contextIdBuilder_;
      /**
       * <code>.context.ContextId context_id = 1;</code>
       * @return Whether the contextId field is set.
       */
      public boolean hasContextId() {
        return contextIdBuilder_ != null || contextId_ != null;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       * @return The contextId.
       */
      public context.ContextOuterClass.ContextId getContextId() {
        if (contextIdBuilder_ == null) {
          return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
        } else {
          return contextIdBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public Builder setContextId(context.ContextOuterClass.ContextId value) {
        if (contextIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          contextId_ = value;
          onChanged();
        } else {
          contextIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public Builder setContextId(
          context.ContextOuterClass.ContextId.Builder builderForValue) {
        if (contextIdBuilder_ == null) {
          contextId_ = builderForValue.build();
          onChanged();
        } else {
          contextIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public Builder mergeContextId(context.ContextOuterClass.ContextId value) {
        if (contextIdBuilder_ == null) {
          if (contextId_ != null) {
            contextId_ =
              context.ContextOuterClass.ContextId.newBuilder(contextId_).mergeFrom(value).buildPartial();
          } else {
            contextId_ = value;
          }
          onChanged();
        } else {
          contextIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public Builder clearContextId() {
        if (contextIdBuilder_ == null) {
          contextId_ = null;
          onChanged();
        } else {
          contextId_ = null;
          contextIdBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public context.ContextOuterClass.ContextId.Builder getContextIdBuilder() {
        
        onChanged();
        return getContextIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() {
        if (contextIdBuilder_ != null) {
          return contextIdBuilder_.getMessageOrBuilder();
        } else {
          return contextId_ == null ?
              context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
        }
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> 
          getContextIdFieldBuilder() {
        if (contextIdBuilder_ == null) {
          contextIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder>(
                  getContextId(),
                  getParentForChildren(),
                  isClean());
          contextId_ = null;
        }
        return contextIdBuilder_;
      }

      private java.lang.Object name_ = "";
      /**
       * <code>string name = 2;</code>
       * @return The name.
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @return The bytes for name.
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @param value The name to set.
       * @return This builder for chaining.
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @param value The bytes for name to set.
       * @return This builder for chaining.
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_ =
        java.util.Collections.emptyList();
      private void ensureTopologyIdsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          topologyIds_ = new java.util.ArrayList<context.ContextOuterClass.TopologyId>(topologyIds_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdsBuilder_;

      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() {
        if (topologyIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(topologyIds_);
        } else {
          return topologyIdsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public int getTopologyIdsCount() {
        if (topologyIdsBuilder_ == null) {
          return topologyIds_.size();
        } else {
          return topologyIdsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public context.ContextOuterClass.TopologyId getTopologyIds(int index) {
        if (topologyIdsBuilder_ == null) {
          return topologyIds_.get(index);
        } else {
          return topologyIdsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public Builder setTopologyIds(
          int index, context.ContextOuterClass.TopologyId value) {
        if (topologyIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopologyIdsIsMutable();
          topologyIds_.set(index, value);
          onChanged();
        } else {
          topologyIdsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public Builder setTopologyIds(
          int index, context.ContextOuterClass.TopologyId.Builder builderForValue) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          topologyIds_.set(index, builderForValue.build());
          onChanged();
        } else {
          topologyIdsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public Builder addTopologyIds(context.ContextOuterClass.TopologyId value) {
        if (topologyIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopologyIdsIsMutable();
          topologyIds_.add(value);
          onChanged();
        } else {
          topologyIdsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public Builder addTopologyIds(
          int index, context.ContextOuterClass.TopologyId value) {
        if (topologyIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopologyIdsIsMutable();
          topologyIds_.add(index, value);
          onChanged();
        } else {
          topologyIdsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public Builder addTopologyIds(
          context.ContextOuterClass.TopologyId.Builder builderForValue) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          topologyIds_.add(builderForValue.build());
          onChanged();
        } else {
          topologyIdsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public Builder addTopologyIds(
          int index, context.ContextOuterClass.TopologyId.Builder builderForValue) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          topologyIds_.add(index, builderForValue.build());
          onChanged();
        } else {
          topologyIdsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public Builder addAllTopologyIds(
          java.lang.Iterable<? extends context.ContextOuterClass.TopologyId> values) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, topologyIds_);
          onChanged();
        } else {
          topologyIdsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public Builder clearTopologyIds() {
        if (topologyIdsBuilder_ == null) {
          topologyIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          topologyIdsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public Builder removeTopologyIds(int index) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          topologyIds_.remove(index);
          onChanged();
        } else {
          topologyIdsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public context.ContextOuterClass.TopologyId.Builder getTopologyIdsBuilder(
          int index) {
        return getTopologyIdsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder(
          int index) {
        if (topologyIdsBuilder_ == null) {
          return topologyIds_.get(index);  } else {
          return topologyIdsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> 
           getTopologyIdsOrBuilderList() {
        if (topologyIdsBuilder_ != null) {
          return topologyIdsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(topologyIds_);
        }
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder() {
        return getTopologyIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.TopologyId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder(
          int index) {
        return getTopologyIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.TopologyId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.TopologyId topology_ids = 3;</code>
       */
      public java.util.List<context.ContextOuterClass.TopologyId.Builder> 
           getTopologyIdsBuilderList() {
        return getTopologyIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> 
          getTopologyIdsFieldBuilder() {
        if (topologyIdsBuilder_ == null) {
          topologyIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>(
                  topologyIds_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          topologyIds_ = null;
        }
        return topologyIdsBuilder_;
      }

      private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_ =
        java.util.Collections.emptyList();
      private void ensureServiceIdsIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(serviceIds_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdsBuilder_;

      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() {
        if (serviceIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(serviceIds_);
        } else {
          return serviceIdsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public int getServiceIdsCount() {
        if (serviceIdsBuilder_ == null) {
          return serviceIds_.size();
        } else {
          return serviceIdsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public context.ContextOuterClass.ServiceId getServiceIds(int index) {
        if (serviceIdsBuilder_ == null) {
          return serviceIds_.get(index);
        } else {
          return serviceIdsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public Builder setServiceIds(
          int index, context.ContextOuterClass.ServiceId value) {
        if (serviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureServiceIdsIsMutable();
          serviceIds_.set(index, value);
          onChanged();
        } else {
          serviceIdsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public Builder setServiceIds(
          int index, context.ContextOuterClass.ServiceId.Builder builderForValue) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          serviceIds_.set(index, builderForValue.build());
          onChanged();
        } else {
          serviceIdsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public Builder addServiceIds(context.ContextOuterClass.ServiceId value) {
        if (serviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureServiceIdsIsMutable();
          serviceIds_.add(value);
          onChanged();
        } else {
          serviceIdsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public Builder addServiceIds(
          int index, context.ContextOuterClass.ServiceId value) {
        if (serviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureServiceIdsIsMutable();
          serviceIds_.add(index, value);
          onChanged();
        } else {
          serviceIdsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public Builder addServiceIds(
          context.ContextOuterClass.ServiceId.Builder builderForValue) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          serviceIds_.add(builderForValue.build());
          onChanged();
        } else {
          serviceIdsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public Builder addServiceIds(
          int index, context.ContextOuterClass.ServiceId.Builder builderForValue) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          serviceIds_.add(index, builderForValue.build());
          onChanged();
        } else {
          serviceIdsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public Builder addAllServiceIds(
          java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, serviceIds_);
          onChanged();
        } else {
          serviceIdsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public Builder clearServiceIds() {
        if (serviceIdsBuilder_ == null) {
          serviceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          serviceIdsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public Builder removeServiceIds(int index) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          serviceIds_.remove(index);
          onChanged();
        } else {
          serviceIdsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public context.ContextOuterClass.ServiceId.Builder getServiceIdsBuilder(
          int index) {
        return getServiceIdsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder(
          int index) {
        if (serviceIdsBuilder_ == null) {
          return serviceIds_.get(index);  } else {
          return serviceIdsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> 
           getServiceIdsOrBuilderList() {
        if (serviceIdsBuilder_ != null) {
          return serviceIdsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(serviceIds_);
        }
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder() {
        return getServiceIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.ServiceId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder(
          int index) {
        return getServiceIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.ServiceId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.ServiceId service_ids = 4;</code>
       */
      public java.util.List<context.ContextOuterClass.ServiceId.Builder> 
           getServiceIdsBuilderList() {
        return getServiceIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> 
          getServiceIdsFieldBuilder() {
        if (serviceIdsBuilder_ == null) {
          serviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>(
                  serviceIds_,
                  ((bitField0_ & 0x00000002) != 0),
                  getParentForChildren(),
                  isClean());
          serviceIds_ = null;
        }
        return serviceIdsBuilder_;
      }

      private java.util.List<context.ContextOuterClass.SliceId> sliceIds_ =
        java.util.Collections.emptyList();
      private void ensureSliceIdsIsMutable() {
        if (!((bitField0_ & 0x00000004) != 0)) {
          sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceIds_);
          bitField0_ |= 0x00000004;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdsBuilder_;

      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() {
        if (sliceIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(sliceIds_);
        } else {
          return sliceIdsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public int getSliceIdsCount() {
        if (sliceIdsBuilder_ == null) {
          return sliceIds_.size();
        } else {
          return sliceIdsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public context.ContextOuterClass.SliceId getSliceIds(int index) {
        if (sliceIdsBuilder_ == null) {
          return sliceIds_.get(index);
        } else {
          return sliceIdsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public Builder setSliceIds(
          int index, context.ContextOuterClass.SliceId value) {
        if (sliceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSliceIdsIsMutable();
          sliceIds_.set(index, value);
          onChanged();
        } else {
          sliceIdsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public Builder setSliceIds(
          int index, context.ContextOuterClass.SliceId.Builder builderForValue) {
        if (sliceIdsBuilder_ == null) {
          ensureSliceIdsIsMutable();
          sliceIds_.set(index, builderForValue.build());
          onChanged();
        } else {
          sliceIdsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public Builder addSliceIds(context.ContextOuterClass.SliceId value) {
        if (sliceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSliceIdsIsMutable();
          sliceIds_.add(value);
          onChanged();
        } else {
          sliceIdsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public Builder addSliceIds(
          int index, context.ContextOuterClass.SliceId value) {
        if (sliceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSliceIdsIsMutable();
          sliceIds_.add(index, value);
          onChanged();
        } else {
          sliceIdsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public Builder addSliceIds(
          context.ContextOuterClass.SliceId.Builder builderForValue) {
        if (sliceIdsBuilder_ == null) {
          ensureSliceIdsIsMutable();
          sliceIds_.add(builderForValue.build());
          onChanged();
        } else {
          sliceIdsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public Builder addSliceIds(
          int index, context.ContextOuterClass.SliceId.Builder builderForValue) {
        if (sliceIdsBuilder_ == null) {
          ensureSliceIdsIsMutable();
          sliceIds_.add(index, builderForValue.build());
          onChanged();
        } else {
          sliceIdsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public Builder addAllSliceIds(
          java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) {
        if (sliceIdsBuilder_ == null) {
          ensureSliceIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, sliceIds_);
          onChanged();
        } else {
          sliceIdsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public Builder clearSliceIds() {
        if (sliceIdsBuilder_ == null) {
          sliceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
        } else {
          sliceIdsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public Builder removeSliceIds(int index) {
        if (sliceIdsBuilder_ == null) {
          ensureSliceIdsIsMutable();
          sliceIds_.remove(index);
          onChanged();
        } else {
          sliceIdsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public context.ContextOuterClass.SliceId.Builder getSliceIdsBuilder(
          int index) {
        return getSliceIdsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder(
          int index) {
        if (sliceIdsBuilder_ == null) {
          return sliceIds_.get(index);  } else {
          return sliceIdsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> 
           getSliceIdsOrBuilderList() {
        if (sliceIdsBuilder_ != null) {
          return sliceIdsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(sliceIds_);
        }
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder() {
        return getSliceIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.SliceId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder(
          int index) {
        return getSliceIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.SliceId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.SliceId slice_ids = 5;</code>
       */
      public java.util.List<context.ContextOuterClass.SliceId.Builder> 
           getSliceIdsBuilderList() {
        return getSliceIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> 
          getSliceIdsFieldBuilder() {
        if (sliceIdsBuilder_ == null) {
          sliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>(
                  sliceIds_,
                  ((bitField0_ & 0x00000004) != 0),
                  getParentForChildren(),
                  isClean());
          sliceIds_ = null;
        }
        return sliceIdsBuilder_;
      }

      private context.ContextOuterClass.TeraFlowController controller_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.TeraFlowController, context.ContextOuterClass.TeraFlowController.Builder, context.ContextOuterClass.TeraFlowControllerOrBuilder> controllerBuilder_;
      /**
       * <code>.context.TeraFlowController controller = 6;</code>
       * @return Whether the controller field is set.
       */
      public boolean hasController() {
        return controllerBuilder_ != null || controller_ != null;
      }
      /**
       * <code>.context.TeraFlowController controller = 6;</code>
       * @return The controller.
       */
      public context.ContextOuterClass.TeraFlowController getController() {
        if (controllerBuilder_ == null) {
          return controller_ == null ? context.ContextOuterClass.TeraFlowController.getDefaultInstance() : controller_;
        } else {
          return controllerBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.TeraFlowController controller = 6;</code>
       */
      public Builder setController(context.ContextOuterClass.TeraFlowController value) {
        if (controllerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          controller_ = value;
          onChanged();
        } else {
          controllerBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.TeraFlowController controller = 6;</code>
       */
      public Builder setController(
          context.ContextOuterClass.TeraFlowController.Builder builderForValue) {
        if (controllerBuilder_ == null) {
          controller_ = builderForValue.build();
          onChanged();
        } else {
          controllerBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.TeraFlowController controller = 6;</code>
       */
      public Builder mergeController(context.ContextOuterClass.TeraFlowController value) {
        if (controllerBuilder_ == null) {
          if (controller_ != null) {
            controller_ =
              context.ContextOuterClass.TeraFlowController.newBuilder(controller_).mergeFrom(value).buildPartial();
          } else {
            controller_ = value;
          }
          onChanged();
        } else {
          controllerBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.TeraFlowController controller = 6;</code>
       */
      public Builder clearController() {
        if (controllerBuilder_ == null) {
          controller_ = null;
          onChanged();
        } else {
          controller_ = null;
          controllerBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.TeraFlowController controller = 6;</code>
       */
      public context.ContextOuterClass.TeraFlowController.Builder getControllerBuilder() {
        
        onChanged();
        return getControllerFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.TeraFlowController controller = 6;</code>
       */
      public context.ContextOuterClass.TeraFlowControllerOrBuilder getControllerOrBuilder() {
        if (controllerBuilder_ != null) {
          return controllerBuilder_.getMessageOrBuilder();
        } else {
          return controller_ == null ?
              context.ContextOuterClass.TeraFlowController.getDefaultInstance() : controller_;
        }
      }
      /**
       * <code>.context.TeraFlowController controller = 6;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.TeraFlowController, context.ContextOuterClass.TeraFlowController.Builder, context.ContextOuterClass.TeraFlowControllerOrBuilder> 
          getControllerFieldBuilder() {
        if (controllerBuilder_ == null) {
          controllerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.TeraFlowController, context.ContextOuterClass.TeraFlowController.Builder, context.ContextOuterClass.TeraFlowControllerOrBuilder>(
                  getController(),
                  getParentForChildren(),
                  isClean());
          controller_ = null;
        }
        return controllerBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.Context)
    }

    // @@protoc_insertion_point(class_scope:context.Context)
    private static final context.ContextOuterClass.Context DEFAULT_INSTANCE;
6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 6274 6275 6276 6277 6278 6279 6280 6281 6282 6283 6284 6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 6295 6296 6297 6298 6299 6300 6301 6302 6303 6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 6339 6340 6341 6342 6343 6344 6345 6346 6347 6348 6349 6350 6351 6352 6353 6354 6355 6356 6357 6358 6359 6360 6361 6362 6363 6364 6365 6366 6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385 6386 6387 6388 6389 6390 6391 6392 6393 6394 6395 6396 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 6407 6408 6409 6410 6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 6448 6449 6450 6451 6452 6453 6454 6455 6456 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471 6472 6473 6474 6475 6476 6477 6478 6479 6480 6481 6482 6483 6484 6485 6486 6487 6488 6489 6490 6491 6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523 6524 6525 6526 6527 6528 6529 6530 6531 6532 6533 6534 6535 6536 6537 6538 6539 6540 6541 6542 6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600 6601 6602 6603 6604 6605 6606 6607 6608 6609 6610 6611 6612 6613 6614 6615 6616 6617 6618 6619 6620 6621 6622 6623 6624 6625 6626 6627 6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638 6639 6640 6641 6642 6643 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 6670 6671 6672 6673 6674 6675 6676 6677 6678 6679 6680 6681 6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 6702 6703 6704 6705 6706 6707 6708 6709 6710 6711 6712 6713 6714 6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725 6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749 6750 6751 6752 6753 6754 6755 6756 6757 6758 6759 6760 6761 6762 6763 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794 6795 6796 6797 6798 6799 6800 6801 6802 6803 6804 6805 6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 6822 6823 6824 6825 6826 6827 6828 6829 6830 6831 6832 6833 6834 6835 6836 6837 6838 6839 6840 6841 6842 6843 6844 6845 6846 6847 6848 6849 6850 6851 6852 6853 6854 6855 6856 6857 6858 6859 6860 6861 6862 6863 6864 6865 6866 6867 6868 6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882 6883 6884 6885 6886 6887 6888 6889 6890 6891 6892 6893 6894 6895 6896 6897 6898 6899 6900 6901 6902 6903 6904 6905 6906 6907 6908 6909 6910 6911 6912 6913 6914 6915 6916 6917 6918 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931 6932 6933 6934 6935 6936 6937 6938 6939 6940 6941 6942 6943 6944 6945 6946 6947 6948 6949 6950 6951 6952 6953 6954 6955 6956 6957 6958 6959 6960 6961 6962 6963 6964 6965 6966 6967 6968 6969 6970 6971 6972 6973 6974 6975 6976 6977 6978 6979 6980 6981 6982 6983 6984 6985 6986 6987 6988 6989 6990 6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020 7021 7022 7023 7024 7025 7026 7027 7028 7029 7030 7031 7032 7033 7034 7035 7036 7037 7038 7039 7040 7041 7042 7043 7044 7045 7046 7047 7048 7049 7050 7051 7052 7053 7054 7055 7056 7057 7058 7059 7060 7061 7062 7063 7064 7065 7066 7067 7068 7069 7070 7071 7072 7073 7074 7075 7076 7077 7078 7079 7080 7081 7082 7083 7084 7085 7086 7087 7088 7089 7090 7091 7092 7093 7094 7095 7096 7097 7098 7099 7100 7101 7102 7103 7104 7105 7106 7107 7108 7109 7110 7111 7112 7113 7114 7115 7116 7117 7118 7119 7120 7121 7122 7123 7124 7125 7126 7127 7128 7129 7130 7131 7132 7133 7134 7135 7136 7137 7138 7139 7140 7141 7142 7143 7144 7145 7146 7147 7148 7149 7150 7151 7152 7153 7154 7155 7156 7157 7158 7159 7160 7161 7162 7163 7164 7165 7166 7167 7168 7169 7170 7171 7172 7173 7174 7175 7176 7177 7178 7179 7180 7181 7182 7183 7184 7185 7186 7187 7188 7189 7190 7191 7192 7193 7194 7195 7196 7197 7198 7199 7200 7201 7202 7203 7204 7205 7206 7207 7208 7209 7210 7211 7212 7213 7214 7215 7216 7217 7218 7219 7220 7221 7222 7223 7224 7225 7226 7227 7228 7229 7230 7231 7232 7233 7234 7235 7236 7237 7238 7239 7240 7241 7242 7243 7244 7245 7246 7247 7248 7249 7250 7251 7252 7253 7254 7255 7256 7257 7258 7259 7260 7261 7262 7263 7264 7265 7266 7267 7268 7269 7270 7271 7272 7273 7274 7275 7276 7277 7278 7279 7280 7281 7282 7283 7284 7285 7286 7287 7288 7289 7290 7291 7292 7293 7294 7295 7296 7297 7298 7299 7300 7301 7302 7303 7304 7305 7306 7307 7308 7309 7310 7311 7312 7313 7314 7315 7316 7317 7318 7319 7320 7321 7322 7323 7324 7325 7326 7327 7328 7329 7330 7331 7332 7333 7334 7335 7336 7337 7338 7339 7340 7341 7342 7343 7344 7345 7346 7347 7348 7349 7350 7351 7352 7353 7354 7355 7356 7357 7358 7359 7360 7361 7362 7363 7364 7365 7366 7367 7368 7369 7370 7371 7372 7373 7374 7375 7376 7377 7378 7379 7380 7381 7382 7383 7384 7385 7386 7387 7388 7389 7390 7391 7392 7393 7394 7395 7396 7397 7398 7399 7400 7401 7402 7403 7404 7405 7406 7407 7408 7409 7410 7411 7412 7413 7414 7415 7416 7417 7418 7419 7420 7421 7422 7423 7424 7425 7426 7427 7428 7429 7430 7431 7432 7433 7434 7435 7436 7437 7438 7439 7440 7441 7442 7443 7444 7445 7446 7447 7448 7449 7450 7451 7452 7453 7454 7455 7456 7457 7458 7459 7460 7461 7462 7463 7464 7465 7466 7467 7468 7469 7470 7471 7472 7473 7474 7475 7476 7477 7478 7479 7480 7481 7482 7483 7484 7485 7486 7487 7488 7489 7490 7491 7492 7493 7494 7495 7496 7497 7498 7499 7500 7501 7502 7503 7504 7505 7506 7507 7508 7509 7510 7511 7512 7513 7514 7515 7516 7517 7518 7519 7520 7521 7522 7523 7524 7525 7526 7527 7528 7529 7530 7531 7532 7533 7534 7535 7536 7537 7538 7539 7540 7541 7542 7543 7544 7545 7546 7547 7548 7549 7550 7551 7552 7553 7554 7555 7556 7557 7558 7559 7560 7561 7562 7563 7564 7565 7566 7567 7568 7569 7570 7571 7572 7573 7574 7575 7576 7577 7578 7579 7580 7581 7582 7583 7584 7585 7586 7587 7588 7589 7590 7591 7592 7593 7594 7595 7596 7597 7598 7599 7600 7601 7602 7603 7604 7605 7606 7607 7608 7609 7610 7611 7612 7613 7614 7615 7616 7617 7618 7619 7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630 7631 7632 7633 7634 7635 7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648 7649 7650 7651 7652 7653 7654 7655 7656 7657 7658 7659 7660 7661 7662 7663 7664 7665 7666 7667 7668 7669 7670 7671 7672 7673 7674 7675 7676 7677 7678 7679 7680 7681 7682 7683 7684 7685 7686 7687 7688 7689 7690 7691 7692 7693 7694 7695 7696 7697 7698 7699 7700 7701 7702 7703 7704 7705 7706 7707 7708 7709 7710 7711 7712 7713 7714 7715 7716 7717 7718 7719 7720 7721 7722 7723 7724 7725 7726 7727 7728 7729 7730 7731 7732 7733 7734 7735 7736 7737 7738 7739 7740 7741 7742 7743 7744 7745 7746 7747 7748 7749 7750 7751 7752 7753 7754 7755 7756 7757 7758 7759 7760 7761 7762 7763 7764 7765 7766 7767 7768 7769 7770 7771 7772 7773 7774 7775 7776 7777 7778 7779 7780 7781 7782 7783 7784 7785 7786 7787 7788 7789 7790 7791 7792 7793 7794 7795 7796 7797 7798 7799 7800 7801 7802 7803 7804 7805 7806 7807 7808 7809 7810 7811 7812 7813 7814 7815 7816 7817 7818 7819 7820 7821 7822 7823 7824 7825 7826 7827 7828 7829 7830 7831 7832 7833 7834 7835 7836 7837 7838 7839 7840 7841 7842 7843 7844 7845 7846 7847 7848 7849 7850 7851 7852 7853 7854 7855 7856 7857 7858 7859 7860 7861 7862 7863 7864 7865 7866 7867 7868 7869 7870 7871 7872 7873 7874 7875 7876 7877 7878 7879 7880 7881 7882 7883 7884 7885 7886 7887 7888 7889 7890 7891 7892 7893 7894 7895 7896 7897 7898 7899 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913 7914 7915 7916 7917 7918 7919 7920 7921 7922 7923 7924 7925 7926 7927 7928 7929 7930 7931 7932 7933 7934 7935 7936 7937 7938 7939 7940 7941 7942 7943 7944 7945 7946 7947 7948 7949 7950 7951 7952 7953 7954 7955 7956 7957 7958 7959 7960 7961 7962 7963 7964 7965 7966 7967 7968 7969 7970 7971 7972 7973 7974 7975 7976 7977 7978 7979 7980 7981 7982 7983 7984 7985 7986 7987 7988 7989 7990 7991 7992 7993 7994 7995 7996 7997 7998 7999 8000 8001 8002 8003 8004 8005 8006 8007 8008 8009 8010 8011 8012 8013 8014 8015 8016 8017 8018 8019 8020 8021 8022 8023 8024 8025 8026 8027 8028 8029 8030 8031 8032 8033 8034 8035 8036 8037 8038 8039 8040 8041 8042 8043 8044 8045 8046 8047 8048 8049 8050 8051 8052 8053 8054 8055 8056 8057 8058 8059 8060 8061 8062 8063 8064 8065 8066 8067 8068 8069 8070 8071 8072 8073 8074 8075 8076 8077 8078 8079 8080 8081 8082 8083 8084 8085 8086 8087 8088 8089 8090 8091 8092 8093 8094 8095 8096 8097 8098 8099 8100 8101 8102 8103 8104 8105 8106 8107 8108 8109 8110 8111 8112 8113 8114 8115 8116 8117 8118 8119 8120 8121 8122 8123 8124 8125 8126 8127 8128 8129 8130 8131 8132 8133 8134 8135 8136 8137 8138 8139 8140 8141 8142 8143 8144 8145 8146 8147 8148 8149 8150 8151 8152 8153 8154 8155 8156 8157 8158 8159 8160 8161 8162 8163 8164 8165 8166 8167 8168 8169 8170 8171 8172 8173 8174 8175 8176 8177 8178 8179 8180 8181 8182 8183 8184 8185 8186 8187 8188 8189 8190 8191 8192 8193 8194 8195 8196 8197 8198 8199 8200
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.Context();
    }

    public static context.ContextOuterClass.Context getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<Context>
        PARSER = new com.google.protobuf.AbstractParser<Context>() {
      @java.lang.Override
      public Context parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Context(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<Context> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<Context> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.Context getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ContextIdListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ContextIdList)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    java.util.List<context.ContextOuterClass.ContextId> 
        getContextIdsList();
    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    context.ContextOuterClass.ContextId getContextIds(int index);
    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    int getContextIdsCount();
    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    java.util.List<? extends context.ContextOuterClass.ContextIdOrBuilder> 
        getContextIdsOrBuilderList();
    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    context.ContextOuterClass.ContextIdOrBuilder getContextIdsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code context.ContextIdList}
   */
  public static final class ContextIdList extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.ContextIdList)
      ContextIdListOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ContextIdList.newBuilder() to construct.
    private ContextIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ContextIdList() {
      contextIds_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ContextIdList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ContextIdList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                contextIds_ = new java.util.ArrayList<context.ContextOuterClass.ContextId>();
                mutable_bitField0_ |= 0x00000001;
              }
              contextIds_.add(
                  input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          contextIds_ = java.util.Collections.unmodifiableList(contextIds_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_ContextIdList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_ContextIdList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.ContextIdList.class, context.ContextOuterClass.ContextIdList.Builder.class);
    }

    public static final int CONTEXT_IDS_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.ContextId> contextIds_;
    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.ContextId> getContextIdsList() {
      return contextIds_;
    }
    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.ContextIdOrBuilder> 
        getContextIdsOrBuilderList() {
      return contextIds_;
    }
    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    @java.lang.Override
    public int getContextIdsCount() {
      return contextIds_.size();
    }
    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextId getContextIds(int index) {
      return contextIds_.get(index);
    }
    /**
     * <code>repeated .context.ContextId context_ids = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextIdOrBuilder getContextIdsOrBuilder(
        int index) {
      return contextIds_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < contextIds_.size(); i++) {
        output.writeMessage(1, contextIds_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < contextIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, contextIds_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.ContextIdList)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.ContextIdList other = (context.ContextOuterClass.ContextIdList) obj;

      if (!getContextIdsList()
          .equals(other.getContextIdsList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getContextIdsCount() > 0) {
        hash = (37 * hash) + CONTEXT_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getContextIdsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.ContextIdList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextIdList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextIdList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextIdList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextIdList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextIdList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextIdList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextIdList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextIdList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextIdList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextIdList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextIdList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.ContextIdList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.ContextIdList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.ContextIdList)
        context.ContextOuterClass.ContextIdListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_ContextIdList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_ContextIdList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.ContextIdList.class, context.ContextOuterClass.ContextIdList.Builder.class);
      }

      // Construct using context.ContextOuterClass.ContextIdList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getContextIdsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (contextIdsBuilder_ == null) {
          contextIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          contextIdsBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_ContextIdList_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextIdList getDefaultInstanceForType() {
        return context.ContextOuterClass.ContextIdList.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextIdList build() {
        context.ContextOuterClass.ContextIdList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextIdList buildPartial() {
        context.ContextOuterClass.ContextIdList result = new context.ContextOuterClass.ContextIdList(this);
        int from_bitField0_ = bitField0_;
        if (contextIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            contextIds_ = java.util.Collections.unmodifiableList(contextIds_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.contextIds_ = contextIds_;
        } else {
          result.contextIds_ = contextIdsBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.ContextIdList) {
          return mergeFrom((context.ContextOuterClass.ContextIdList)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.ContextIdList other) {
        if (other == context.ContextOuterClass.ContextIdList.getDefaultInstance()) return this;
        if (contextIdsBuilder_ == null) {
          if (!other.contextIds_.isEmpty()) {
            if (contextIds_.isEmpty()) {
              contextIds_ = other.contextIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureContextIdsIsMutable();
              contextIds_.addAll(other.contextIds_);
            }
            onChanged();
          }
        } else {
          if (!other.contextIds_.isEmpty()) {
            if (contextIdsBuilder_.isEmpty()) {
              contextIdsBuilder_.dispose();
              contextIdsBuilder_ = null;
              contextIds_ = other.contextIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
              contextIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getContextIdsFieldBuilder() : null;
            } else {
              contextIdsBuilder_.addAllMessages(other.contextIds_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.ContextIdList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.ContextIdList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<context.ContextOuterClass.ContextId> contextIds_ =
        java.util.Collections.emptyList();
      private void ensureContextIdsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          contextIds_ = new java.util.ArrayList<context.ContextOuterClass.ContextId>(contextIds_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> contextIdsBuilder_;

      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.ContextId> getContextIdsList() {
        if (contextIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(contextIds_);
        } else {
          return contextIdsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public int getContextIdsCount() {
        if (contextIdsBuilder_ == null) {
          return contextIds_.size();
        } else {
          return contextIdsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public context.ContextOuterClass.ContextId getContextIds(int index) {
        if (contextIdsBuilder_ == null) {
          return contextIds_.get(index);
        } else {
          return contextIdsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public Builder setContextIds(
          int index, context.ContextOuterClass.ContextId value) {
        if (contextIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureContextIdsIsMutable();
          contextIds_.set(index, value);
          onChanged();
        } else {
          contextIdsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public Builder setContextIds(
          int index, context.ContextOuterClass.ContextId.Builder builderForValue) {
        if (contextIdsBuilder_ == null) {
          ensureContextIdsIsMutable();
          contextIds_.set(index, builderForValue.build());
          onChanged();
        } else {
          contextIdsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public Builder addContextIds(context.ContextOuterClass.ContextId value) {
        if (contextIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureContextIdsIsMutable();
          contextIds_.add(value);
          onChanged();
        } else {
          contextIdsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public Builder addContextIds(
          int index, context.ContextOuterClass.ContextId value) {
        if (contextIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureContextIdsIsMutable();
          contextIds_.add(index, value);
          onChanged();
        } else {
          contextIdsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public Builder addContextIds(
          context.ContextOuterClass.ContextId.Builder builderForValue) {
        if (contextIdsBuilder_ == null) {
          ensureContextIdsIsMutable();
          contextIds_.add(builderForValue.build());
          onChanged();
        } else {
          contextIdsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public Builder addContextIds(
          int index, context.ContextOuterClass.ContextId.Builder builderForValue) {
        if (contextIdsBuilder_ == null) {
          ensureContextIdsIsMutable();
          contextIds_.add(index, builderForValue.build());
          onChanged();
        } else {
          contextIdsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public Builder addAllContextIds(
          java.lang.Iterable<? extends context.ContextOuterClass.ContextId> values) {
        if (contextIdsBuilder_ == null) {
          ensureContextIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, contextIds_);
          onChanged();
        } else {
          contextIdsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public Builder clearContextIds() {
        if (contextIdsBuilder_ == null) {
          contextIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          contextIdsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public Builder removeContextIds(int index) {
        if (contextIdsBuilder_ == null) {
          ensureContextIdsIsMutable();
          contextIds_.remove(index);
          onChanged();
        } else {
          contextIdsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public context.ContextOuterClass.ContextId.Builder getContextIdsBuilder(
          int index) {
        return getContextIdsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public context.ContextOuterClass.ContextIdOrBuilder getContextIdsOrBuilder(
          int index) {
        if (contextIdsBuilder_ == null) {
          return contextIds_.get(index);  } else {
          return contextIdsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.ContextIdOrBuilder> 
           getContextIdsOrBuilderList() {
        if (contextIdsBuilder_ != null) {
          return contextIdsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(contextIds_);
        }
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public context.ContextOuterClass.ContextId.Builder addContextIdsBuilder() {
        return getContextIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.ContextId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public context.ContextOuterClass.ContextId.Builder addContextIdsBuilder(
          int index) {
        return getContextIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.ContextId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.ContextId context_ids = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.ContextId.Builder> 
           getContextIdsBuilderList() {
        return getContextIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> 
          getContextIdsFieldBuilder() {
        if (contextIdsBuilder_ == null) {
          contextIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder>(
                  contextIds_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          contextIds_ = null;
        }
        return contextIdsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.ContextIdList)
    }

    // @@protoc_insertion_point(class_scope:context.ContextIdList)
    private static final context.ContextOuterClass.ContextIdList DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.ContextIdList();
    }

    public static context.ContextOuterClass.ContextIdList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ContextIdList>
        PARSER = new com.google.protobuf.AbstractParser<ContextIdList>() {
      @java.lang.Override
      public ContextIdList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ContextIdList(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<ContextIdList> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ContextIdList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.ContextIdList getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ContextListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ContextList)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    java.util.List<context.ContextOuterClass.Context> 
        getContextsList();
    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    context.ContextOuterClass.Context getContexts(int index);
    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    int getContextsCount();
    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    java.util.List<? extends context.ContextOuterClass.ContextOrBuilder> 
        getContextsOrBuilderList();
    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    context.ContextOuterClass.ContextOrBuilder getContextsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code context.ContextList}
   */
  public static final class ContextList extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.ContextList)
      ContextListOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ContextList.newBuilder() to construct.
    private ContextList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ContextList() {
      contexts_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ContextList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ContextList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                contexts_ = new java.util.ArrayList<context.ContextOuterClass.Context>();
                mutable_bitField0_ |= 0x00000001;
              }
              contexts_.add(
                  input.readMessage(context.ContextOuterClass.Context.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          contexts_ = java.util.Collections.unmodifiableList(contexts_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_ContextList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_ContextList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.ContextList.class, context.ContextOuterClass.ContextList.Builder.class);
    }

    public static final int CONTEXTS_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.Context> contexts_;
    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.Context> getContextsList() {
      return contexts_;
    }
    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.ContextOrBuilder> 
        getContextsOrBuilderList() {
      return contexts_;
    }
    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    @java.lang.Override
    public int getContextsCount() {
      return contexts_.size();
    }
    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.Context getContexts(int index) {
      return contexts_.get(index);
    }
    /**
     * <code>repeated .context.Context contexts = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextOrBuilder getContextsOrBuilder(
        int index) {
      return contexts_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < contexts_.size(); i++) {
        output.writeMessage(1, contexts_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < contexts_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, contexts_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.ContextList)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.ContextList other = (context.ContextOuterClass.ContextList) obj;

      if (!getContextsList()
          .equals(other.getContextsList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getContextsCount() > 0) {
        hash = (37 * hash) + CONTEXTS_FIELD_NUMBER;
        hash = (53 * hash) + getContextsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.ContextList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.ContextList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.ContextList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.ContextList)
        context.ContextOuterClass.ContextListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_ContextList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_ContextList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.ContextList.class, context.ContextOuterClass.ContextList.Builder.class);
      }

      // Construct using context.ContextOuterClass.ContextList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getContextsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (contextsBuilder_ == null) {
          contexts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          contextsBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_ContextList_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextList getDefaultInstanceForType() {
        return context.ContextOuterClass.ContextList.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextList build() {
        context.ContextOuterClass.ContextList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextList buildPartial() {
        context.ContextOuterClass.ContextList result = new context.ContextOuterClass.ContextList(this);
        int from_bitField0_ = bitField0_;
        if (contextsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            contexts_ = java.util.Collections.unmodifiableList(contexts_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.contexts_ = contexts_;
        } else {
          result.contexts_ = contextsBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.ContextList) {
          return mergeFrom((context.ContextOuterClass.ContextList)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.ContextList other) {
        if (other == context.ContextOuterClass.ContextList.getDefaultInstance()) return this;
        if (contextsBuilder_ == null) {
          if (!other.contexts_.isEmpty()) {
            if (contexts_.isEmpty()) {
              contexts_ = other.contexts_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureContextsIsMutable();
              contexts_.addAll(other.contexts_);
            }
            onChanged();
          }
        } else {
          if (!other.contexts_.isEmpty()) {
            if (contextsBuilder_.isEmpty()) {
              contextsBuilder_.dispose();
              contextsBuilder_ = null;
              contexts_ = other.contexts_;
              bitField0_ = (bitField0_ & ~0x00000001);
              contextsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getContextsFieldBuilder() : null;
            } else {
              contextsBuilder_.addAllMessages(other.contexts_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.ContextList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.ContextList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<context.ContextOuterClass.Context> contexts_ =
        java.util.Collections.emptyList();
      private void ensureContextsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          contexts_ = new java.util.ArrayList<context.ContextOuterClass.Context>(contexts_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Context, context.ContextOuterClass.Context.Builder, context.ContextOuterClass.ContextOrBuilder> contextsBuilder_;

      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.Context> getContextsList() {
        if (contextsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(contexts_);
        } else {
          return contextsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public int getContextsCount() {
        if (contextsBuilder_ == null) {
          return contexts_.size();
        } else {
          return contextsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public context.ContextOuterClass.Context getContexts(int index) {
        if (contextsBuilder_ == null) {
          return contexts_.get(index);
        } else {
          return contextsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public Builder setContexts(
          int index, context.ContextOuterClass.Context value) {
        if (contextsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureContextsIsMutable();
          contexts_.set(index, value);
          onChanged();
        } else {
          contextsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public Builder setContexts(
          int index, context.ContextOuterClass.Context.Builder builderForValue) {
        if (contextsBuilder_ == null) {
          ensureContextsIsMutable();
          contexts_.set(index, builderForValue.build());
          onChanged();
        } else {
          contextsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public Builder addContexts(context.ContextOuterClass.Context value) {
        if (contextsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureContextsIsMutable();
          contexts_.add(value);
          onChanged();
        } else {
          contextsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public Builder addContexts(
          int index, context.ContextOuterClass.Context value) {
        if (contextsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureContextsIsMutable();
          contexts_.add(index, value);
          onChanged();
        } else {
          contextsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public Builder addContexts(
          context.ContextOuterClass.Context.Builder builderForValue) {
        if (contextsBuilder_ == null) {
          ensureContextsIsMutable();
          contexts_.add(builderForValue.build());
          onChanged();
        } else {
          contextsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public Builder addContexts(
          int index, context.ContextOuterClass.Context.Builder builderForValue) {
        if (contextsBuilder_ == null) {
          ensureContextsIsMutable();
          contexts_.add(index, builderForValue.build());
          onChanged();
        } else {
          contextsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public Builder addAllContexts(
          java.lang.Iterable<? extends context.ContextOuterClass.Context> values) {
        if (contextsBuilder_ == null) {
          ensureContextsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, contexts_);
          onChanged();
        } else {
          contextsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public Builder clearContexts() {
        if (contextsBuilder_ == null) {
          contexts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          contextsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public Builder removeContexts(int index) {
        if (contextsBuilder_ == null) {
          ensureContextsIsMutable();
          contexts_.remove(index);
          onChanged();
        } else {
          contextsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public context.ContextOuterClass.Context.Builder getContextsBuilder(
          int index) {
        return getContextsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public context.ContextOuterClass.ContextOrBuilder getContextsOrBuilder(
          int index) {
        if (contextsBuilder_ == null) {
          return contexts_.get(index);  } else {
          return contextsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.ContextOrBuilder> 
           getContextsOrBuilderList() {
        if (contextsBuilder_ != null) {
          return contextsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(contexts_);
        }
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public context.ContextOuterClass.Context.Builder addContextsBuilder() {
        return getContextsFieldBuilder().addBuilder(
            context.ContextOuterClass.Context.getDefaultInstance());
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public context.ContextOuterClass.Context.Builder addContextsBuilder(
          int index) {
        return getContextsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.Context.getDefaultInstance());
      }
      /**
       * <code>repeated .context.Context contexts = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.Context.Builder> 
           getContextsBuilderList() {
        return getContextsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Context, context.ContextOuterClass.Context.Builder, context.ContextOuterClass.ContextOrBuilder> 
          getContextsFieldBuilder() {
        if (contextsBuilder_ == null) {
          contextsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.Context, context.ContextOuterClass.Context.Builder, context.ContextOuterClass.ContextOrBuilder>(
                  contexts_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          contexts_ = null;
        }
        return contextsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.ContextList)
    }

    // @@protoc_insertion_point(class_scope:context.ContextList)
    private static final context.ContextOuterClass.ContextList DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.ContextList();
    }

    public static context.ContextOuterClass.ContextList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ContextList>
        PARSER = new com.google.protobuf.AbstractParser<ContextList>() {
      @java.lang.Override
      public ContextList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ContextList(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<ContextList> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ContextList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.ContextList getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ContextEventOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ContextEvent)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
     */
    boolean hasEvent();
    /**
     * <code>.context.Event event = 1;</code>
     * @return The event.
     */
    context.ContextOuterClass.Event getEvent();
    /**
     * <code>.context.Event event = 1;</code>
     */
    context.ContextOuterClass.EventOrBuilder getEventOrBuilder();

    /**
     * <code>.context.ContextId context_id = 2;</code>
     * @return Whether the contextId field is set.
     */
    boolean hasContextId();
    /**
     * <code>.context.ContextId context_id = 2;</code>
     * @return The contextId.
     */
    context.ContextOuterClass.ContextId getContextId();
    /**
     * <code>.context.ContextId context_id = 2;</code>
     */
    context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder();
  }
  /**
   * Protobuf type {@code context.ContextEvent}
   */
  public static final class ContextEvent extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.ContextEvent)
      ContextEventOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ContextEvent.newBuilder() to construct.
    private ContextEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ContextEvent() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ContextEvent();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ContextEvent(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.Event.Builder subBuilder = null;
              if (event_ != null) {
                subBuilder = event_.toBuilder();
              }
              event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(event_);
                event_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              context.ContextOuterClass.ContextId.Builder subBuilder = null;
              if (contextId_ != null) {
                subBuilder = contextId_.toBuilder();
              }
              contextId_ = input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(contextId_);
                contextId_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_ContextEvent_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_ContextEvent_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.ContextEvent.class, context.ContextOuterClass.ContextEvent.Builder.class);
    }

    public static final int EVENT_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Event event_;
    /**
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
     */
    @java.lang.Override
    public boolean hasEvent() {
      return event_ != null;
    }
    /**
     * <code>.context.Event event = 1;</code>
     * @return The event.
     */
    @java.lang.Override
    public context.ContextOuterClass.Event getEvent() {
      return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
    }
    /**
     * <code>.context.Event event = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
      return getEvent();
    }

    public static final int CONTEXT_ID_FIELD_NUMBER = 2;
    private context.ContextOuterClass.ContextId contextId_;
    /**
     * <code>.context.ContextId context_id = 2;</code>
     * @return Whether the contextId field is set.
     */
    @java.lang.Override
    public boolean hasContextId() {
      return contextId_ != null;
    }
    /**
     * <code>.context.ContextId context_id = 2;</code>
     * @return The contextId.
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextId getContextId() {
      return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
    }
    /**
     * <code>.context.ContextId context_id = 2;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() {
      return getContextId();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (event_ != null) {
        output.writeMessage(1, getEvent());
      }
      if (contextId_ != null) {
        output.writeMessage(2, getContextId());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (event_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getEvent());
      }
      if (contextId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getContextId());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.ContextEvent)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.ContextEvent other = (context.ContextOuterClass.ContextEvent) obj;

      if (hasEvent() != other.hasEvent()) return false;
      if (hasEvent()) {
        if (!getEvent()
            .equals(other.getEvent())) return false;
      }
      if (hasContextId() != other.hasContextId()) return false;
      if (hasContextId()) {
        if (!getContextId()
            .equals(other.getContextId())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasEvent()) {
        hash = (37 * hash) + EVENT_FIELD_NUMBER;
        hash = (53 * hash) + getEvent().hashCode();
      }
      if (hasContextId()) {
        hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER;
        hash = (53 * hash) + getContextId().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.ContextEvent parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextEvent parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextEvent parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextEvent parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextEvent parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ContextEvent parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextEvent parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextEvent parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextEvent parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextEvent parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ContextEvent parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ContextEvent parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.ContextEvent prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.ContextEvent}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.ContextEvent)
        context.ContextOuterClass.ContextEventOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_ContextEvent_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
8201 8202 8203 8204 8205 8206 8207 8208 8209 8210 8211 8212 8213 8214 8215 8216 8217 8218 8219 8220 8221 8222 8223 8224 8225 8226 8227 8228 8229 8230 8231 8232 8233 8234 8235 8236 8237 8238 8239 8240 8241 8242 8243 8244 8245 8246 8247 8248 8249 8250 8251 8252 8253 8254 8255 8256 8257 8258 8259 8260 8261 8262 8263 8264 8265 8266 8267 8268 8269 8270 8271 8272 8273 8274 8275 8276 8277 8278 8279 8280 8281 8282 8283 8284 8285 8286 8287 8288 8289 8290 8291 8292 8293 8294 8295 8296 8297 8298 8299 8300 8301 8302 8303 8304 8305 8306 8307 8308 8309 8310 8311 8312 8313 8314 8315 8316 8317 8318 8319 8320 8321 8322 8323 8324 8325 8326 8327 8328 8329 8330 8331 8332 8333 8334 8335 8336 8337 8338 8339 8340 8341 8342 8343 8344 8345 8346 8347 8348 8349 8350 8351 8352 8353 8354 8355 8356 8357 8358 8359 8360 8361 8362 8363 8364 8365 8366 8367 8368 8369 8370 8371 8372 8373 8374 8375 8376 8377 8378 8379 8380 8381 8382 8383 8384 8385 8386 8387 8388 8389 8390 8391 8392 8393 8394 8395 8396 8397 8398 8399 8400 8401 8402 8403 8404 8405 8406 8407 8408 8409 8410 8411 8412 8413 8414 8415 8416 8417 8418 8419 8420 8421 8422 8423 8424 8425 8426 8427 8428 8429 8430 8431 8432 8433 8434 8435 8436 8437 8438 8439 8440 8441 8442 8443 8444 8445 8446 8447 8448 8449 8450 8451 8452 8453 8454 8455 8456 8457 8458 8459 8460 8461 8462 8463 8464 8465 8466 8467 8468 8469 8470 8471 8472 8473 8474 8475 8476 8477 8478 8479 8480 8481 8482 8483 8484 8485 8486 8487 8488 8489 8490 8491 8492 8493 8494 8495 8496 8497 8498 8499 8500 8501 8502 8503 8504 8505 8506 8507 8508 8509 8510 8511 8512 8513 8514 8515 8516 8517 8518 8519 8520 8521 8522 8523 8524 8525 8526 8527 8528 8529 8530 8531 8532 8533 8534 8535 8536 8537 8538 8539 8540 8541 8542 8543 8544 8545 8546 8547 8548 8549 8550 8551 8552 8553 8554 8555 8556 8557 8558 8559 8560 8561 8562 8563 8564 8565 8566 8567 8568 8569 8570 8571 8572 8573 8574 8575 8576 8577 8578 8579 8580 8581 8582 8583 8584 8585 8586 8587 8588 8589 8590 8591 8592 8593 8594 8595 8596 8597 8598 8599 8600 8601 8602 8603 8604 8605 8606 8607 8608 8609 8610 8611 8612 8613 8614 8615 8616 8617 8618 8619 8620 8621 8622 8623 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 8634 8635 8636 8637 8638 8639 8640 8641 8642 8643 8644 8645 8646 8647 8648 8649 8650 8651 8652 8653 8654 8655 8656 8657 8658 8659 8660 8661 8662 8663 8664 8665 8666 8667 8668 8669 8670 8671 8672 8673 8674 8675 8676 8677 8678 8679 8680 8681 8682 8683 8684 8685 8686 8687 8688 8689 8690 8691 8692 8693 8694 8695 8696 8697 8698 8699 8700 8701 8702 8703 8704 8705 8706 8707 8708 8709 8710 8711 8712 8713 8714 8715 8716 8717 8718 8719 8720 8721 8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 8733 8734 8735 8736 8737 8738 8739 8740 8741 8742 8743 8744 8745 8746 8747 8748 8749 8750 8751 8752 8753 8754 8755 8756 8757 8758 8759 8760 8761 8762 8763 8764 8765 8766 8767 8768 8769 8770 8771 8772 8773 8774 8775 8776 8777 8778 8779 8780 8781 8782 8783 8784 8785 8786 8787 8788 8789 8790 8791 8792 8793 8794 8795 8796 8797 8798 8799 8800 8801 8802 8803 8804 8805 8806 8807 8808 8809 8810 8811 8812 8813 8814 8815 8816 8817 8818 8819 8820 8821 8822 8823 8824 8825 8826 8827 8828 8829 8830 8831 8832 8833 8834 8835 8836 8837 8838 8839 8840 8841 8842 8843 8844 8845 8846 8847 8848 8849 8850 8851 8852 8853 8854 8855 8856 8857 8858 8859 8860 8861 8862 8863 8864 8865 8866 8867 8868 8869 8870 8871 8872 8873 8874 8875 8876 8877 8878 8879 8880 8881 8882 8883 8884 8885 8886 8887 8888 8889 8890 8891 8892 8893 8894 8895 8896 8897 8898 8899 8900 8901 8902 8903 8904 8905 8906 8907 8908 8909 8910 8911 8912 8913 8914 8915 8916 8917 8918 8919 8920 8921 8922 8923 8924 8925 8926 8927 8928 8929 8930 8931 8932 8933 8934 8935 8936 8937 8938 8939 8940 8941 8942 8943 8944 8945 8946 8947 8948 8949 8950 8951 8952 8953 8954 8955 8956 8957 8958 8959 8960 8961 8962 8963 8964 8965 8966 8967 8968 8969 8970 8971 8972 8973 8974 8975 8976 8977 8978 8979 8980 8981 8982 8983 8984 8985 8986 8987 8988 8989 8990 8991 8992 8993 8994 8995 8996 8997 8998 8999 9000 9001 9002 9003 9004 9005 9006 9007 9008 9009 9010 9011 9012 9013 9014 9015 9016 9017 9018 9019 9020 9021 9022 9023 9024 9025 9026 9027 9028 9029 9030 9031 9032 9033 9034 9035 9036 9037 9038 9039 9040 9041 9042 9043 9044 9045 9046 9047 9048 9049 9050 9051 9052 9053 9054 9055 9056 9057 9058 9059 9060 9061 9062 9063 9064 9065 9066 9067 9068 9069 9070 9071 9072 9073 9074 9075 9076 9077 9078 9079 9080 9081 9082 9083 9084 9085 9086 9087 9088 9089 9090 9091 9092 9093 9094 9095 9096 9097 9098 9099 9100 9101 9102 9103 9104 9105 9106 9107 9108 9109 9110 9111 9112 9113 9114 9115 9116 9117 9118 9119 9120 9121 9122 9123 9124 9125 9126 9127 9128 9129 9130 9131 9132 9133 9134 9135 9136 9137 9138 9139 9140 9141 9142 9143 9144 9145 9146 9147 9148 9149 9150 9151 9152 9153 9154 9155 9156 9157 9158 9159 9160 9161 9162 9163 9164 9165 9166 9167 9168 9169 9170 9171 9172 9173 9174 9175 9176 9177 9178 9179 9180 9181 9182 9183 9184 9185 9186 9187 9188 9189 9190 9191 9192 9193 9194 9195 9196 9197 9198 9199 9200 9201 9202 9203 9204 9205 9206 9207 9208 9209 9210 9211 9212 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 9223 9224 9225 9226 9227 9228 9229 9230 9231 9232 9233 9234 9235 9236 9237 9238 9239 9240 9241 9242 9243 9244 9245 9246 9247 9248 9249 9250 9251 9252 9253 9254 9255 9256 9257 9258 9259 9260 9261 9262 9263 9264 9265 9266 9267 9268 9269 9270 9271 9272 9273 9274 9275 9276 9277 9278 9279 9280 9281 9282 9283 9284 9285 9286 9287 9288 9289 9290 9291 9292 9293 9294 9295 9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 9342 9343 9344 9345 9346 9347 9348 9349 9350 9351 9352 9353 9354 9355 9356 9357 9358 9359 9360 9361 9362 9363 9364 9365 9366 9367 9368 9369 9370 9371 9372 9373 9374 9375 9376 9377 9378 9379 9380 9381 9382 9383 9384 9385 9386 9387 9388 9389 9390 9391 9392 9393 9394 9395 9396 9397 9398 9399 9400 9401 9402 9403 9404 9405 9406 9407 9408 9409 9410 9411 9412 9413 9414 9415 9416 9417 9418 9419 9420 9421 9422 9423 9424 9425 9426 9427 9428 9429 9430 9431 9432 9433 9434 9435 9436 9437 9438 9439 9440 9441 9442 9443 9444 9445 9446 9447 9448 9449 9450 9451 9452 9453 9454 9455 9456 9457 9458 9459 9460 9461 9462 9463 9464 9465 9466 9467 9468 9469 9470 9471 9472 9473 9474 9475 9476 9477 9478 9479 9480 9481 9482 9483 9484 9485 9486 9487 9488 9489 9490 9491 9492 9493 9494 9495 9496 9497
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_ContextEvent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.ContextEvent.class, context.ContextOuterClass.ContextEvent.Builder.class);
      }

      // Construct using context.ContextOuterClass.ContextEvent.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (eventBuilder_ == null) {
          event_ = null;
        } else {
          event_ = null;
          eventBuilder_ = null;
        }
        if (contextIdBuilder_ == null) {
          contextId_ = null;
        } else {
          contextId_ = null;
          contextIdBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_ContextEvent_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextEvent getDefaultInstanceForType() {
        return context.ContextOuterClass.ContextEvent.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextEvent build() {
        context.ContextOuterClass.ContextEvent result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.ContextEvent buildPartial() {
        context.ContextOuterClass.ContextEvent result = new context.ContextOuterClass.ContextEvent(this);
        if (eventBuilder_ == null) {
          result.event_ = event_;
        } else {
          result.event_ = eventBuilder_.build();
        }
        if (contextIdBuilder_ == null) {
          result.contextId_ = contextId_;
        } else {
          result.contextId_ = contextIdBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.ContextEvent) {
          return mergeFrom((context.ContextOuterClass.ContextEvent)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.ContextEvent other) {
        if (other == context.ContextOuterClass.ContextEvent.getDefaultInstance()) return this;
        if (other.hasEvent()) {
          mergeEvent(other.getEvent());
        }
        if (other.hasContextId()) {
          mergeContextId(other.getContextId());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.ContextEvent parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.ContextEvent) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private context.ContextOuterClass.Event event_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_;
      /**
       * <code>.context.Event event = 1;</code>
       * @return Whether the event field is set.
       */
      public boolean hasEvent() {
        return eventBuilder_ != null || event_ != null;
      }
      /**
       * <code>.context.Event event = 1;</code>
       * @return The event.
       */
      public context.ContextOuterClass.Event getEvent() {
        if (eventBuilder_ == null) {
          return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
        } else {
          return eventBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public Builder setEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          event_ = value;
          onChanged();
        } else {
          eventBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public Builder setEvent(
          context.ContextOuterClass.Event.Builder builderForValue) {
        if (eventBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
          eventBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public Builder mergeEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (event_ != null) {
            event_ =
              context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial();
          } else {
            event_ = value;
          }
          onChanged();
        } else {
          eventBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public Builder clearEvent() {
        if (eventBuilder_ == null) {
          event_ = null;
          onChanged();
        } else {
          event_ = null;
          eventBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public context.ContextOuterClass.Event.Builder getEventBuilder() {
        
        onChanged();
        return getEventFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
        if (eventBuilder_ != null) {
          return eventBuilder_.getMessageOrBuilder();
        } else {
          return event_ == null ?
              context.ContextOuterClass.Event.getDefaultInstance() : event_;
        }
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> 
          getEventFieldBuilder() {
        if (eventBuilder_ == null) {
          eventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder>(
                  getEvent(),
                  getParentForChildren(),
                  isClean());
          event_ = null;
        }
        return eventBuilder_;
      }

      private context.ContextOuterClass.ContextId contextId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> contextIdBuilder_;
      /**
       * <code>.context.ContextId context_id = 2;</code>
       * @return Whether the contextId field is set.
       */
      public boolean hasContextId() {
        return contextIdBuilder_ != null || contextId_ != null;
      }
      /**
       * <code>.context.ContextId context_id = 2;</code>
       * @return The contextId.
       */
      public context.ContextOuterClass.ContextId getContextId() {
        if (contextIdBuilder_ == null) {
          return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
        } else {
          return contextIdBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.ContextId context_id = 2;</code>
       */
      public Builder setContextId(context.ContextOuterClass.ContextId value) {
        if (contextIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          contextId_ = value;
          onChanged();
        } else {
          contextIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 2;</code>
       */
      public Builder setContextId(
          context.ContextOuterClass.ContextId.Builder builderForValue) {
        if (contextIdBuilder_ == null) {
          contextId_ = builderForValue.build();
          onChanged();
        } else {
          contextIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 2;</code>
       */
      public Builder mergeContextId(context.ContextOuterClass.ContextId value) {
        if (contextIdBuilder_ == null) {
          if (contextId_ != null) {
            contextId_ =
              context.ContextOuterClass.ContextId.newBuilder(contextId_).mergeFrom(value).buildPartial();
          } else {
            contextId_ = value;
          }
          onChanged();
        } else {
          contextIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 2;</code>
       */
      public Builder clearContextId() {
        if (contextIdBuilder_ == null) {
          contextId_ = null;
          onChanged();
        } else {
          contextId_ = null;
          contextIdBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 2;</code>
       */
      public context.ContextOuterClass.ContextId.Builder getContextIdBuilder() {
        
        onChanged();
        return getContextIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.ContextId context_id = 2;</code>
       */
      public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() {
        if (contextIdBuilder_ != null) {
          return contextIdBuilder_.getMessageOrBuilder();
        } else {
          return contextId_ == null ?
              context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
        }
      }
      /**
       * <code>.context.ContextId context_id = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> 
          getContextIdFieldBuilder() {
        if (contextIdBuilder_ == null) {
          contextIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder>(
                  getContextId(),
                  getParentForChildren(),
                  isClean());
          contextId_ = null;
        }
        return contextIdBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.ContextEvent)
    }

    // @@protoc_insertion_point(class_scope:context.ContextEvent)
    private static final context.ContextOuterClass.ContextEvent DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.ContextEvent();
    }

    public static context.ContextOuterClass.ContextEvent getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ContextEvent>
        PARSER = new com.google.protobuf.AbstractParser<ContextEvent>() {
      @java.lang.Override
      public ContextEvent parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ContextEvent(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<ContextEvent> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ContextEvent> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.ContextEvent getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopologyIdOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.TopologyId)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.ContextId context_id = 1;</code>
     * @return Whether the contextId field is set.
     */
    boolean hasContextId();
    /**
     * <code>.context.ContextId context_id = 1;</code>
     * @return The contextId.
     */
    context.ContextOuterClass.ContextId getContextId();
    /**
     * <code>.context.ContextId context_id = 1;</code>
     */
    context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder();

    /**
     * <code>.context.Uuid topology_uuid = 2;</code>
     * @return Whether the topologyUuid field is set.
     */
    boolean hasTopologyUuid();
    /**
     * <code>.context.Uuid topology_uuid = 2;</code>
     * @return The topologyUuid.
     */
    context.ContextOuterClass.Uuid getTopologyUuid();
    /**
     * <code>.context.Uuid topology_uuid = 2;</code>
     */
    context.ContextOuterClass.UuidOrBuilder getTopologyUuidOrBuilder();
  }
  /**
   * <pre>
   * ----- Topology ------------------------------------------------------------------------------------------------------
   * </pre>
   *
   * Protobuf type {@code context.TopologyId}
   */
  public static final class TopologyId extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.TopologyId)
      TopologyIdOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopologyId.newBuilder() to construct.
    private TopologyId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private TopologyId() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopologyId();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopologyId(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.ContextId.Builder subBuilder = null;
              if (contextId_ != null) {
                subBuilder = contextId_.toBuilder();
              }
              contextId_ = input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(contextId_);
                contextId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              context.ContextOuterClass.Uuid.Builder subBuilder = null;
              if (topologyUuid_ != null) {
                subBuilder = topologyUuid_.toBuilder();
              }
              topologyUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(topologyUuid_);
                topologyUuid_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_TopologyId_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_TopologyId_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.TopologyId.class, context.ContextOuterClass.TopologyId.Builder.class);
    }

    public static final int CONTEXT_ID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.ContextId contextId_;
    /**
     * <code>.context.ContextId context_id = 1;</code>
     * @return Whether the contextId field is set.
     */
    @java.lang.Override
    public boolean hasContextId() {
      return contextId_ != null;
    }
    /**
     * <code>.context.ContextId context_id = 1;</code>
     * @return The contextId.
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextId getContextId() {
      return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
    }
    /**
     * <code>.context.ContextId context_id = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() {
      return getContextId();
    }

    public static final int TOPOLOGY_UUID_FIELD_NUMBER = 2;
    private context.ContextOuterClass.Uuid topologyUuid_;
    /**
     * <code>.context.Uuid topology_uuid = 2;</code>
     * @return Whether the topologyUuid field is set.
     */
    @java.lang.Override
    public boolean hasTopologyUuid() {
      return topologyUuid_ != null;
    }
    /**
     * <code>.context.Uuid topology_uuid = 2;</code>
     * @return The topologyUuid.
     */
    @java.lang.Override
    public context.ContextOuterClass.Uuid getTopologyUuid() {
      return topologyUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : topologyUuid_;
    }
    /**
     * <code>.context.Uuid topology_uuid = 2;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.UuidOrBuilder getTopologyUuidOrBuilder() {
      return getTopologyUuid();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (contextId_ != null) {
        output.writeMessage(1, getContextId());
      }
      if (topologyUuid_ != null) {
        output.writeMessage(2, getTopologyUuid());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (contextId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getContextId());
      }
      if (topologyUuid_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getTopologyUuid());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.TopologyId)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.TopologyId other = (context.ContextOuterClass.TopologyId) obj;

      if (hasContextId() != other.hasContextId()) return false;
      if (hasContextId()) {
        if (!getContextId()
            .equals(other.getContextId())) return false;
      }
      if (hasTopologyUuid() != other.hasTopologyUuid()) return false;
      if (hasTopologyUuid()) {
        if (!getTopologyUuid()
            .equals(other.getTopologyUuid())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasContextId()) {
        hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER;
        hash = (53 * hash) + getContextId().hashCode();
      }
      if (hasTopologyUuid()) {
        hash = (37 * hash) + TOPOLOGY_UUID_FIELD_NUMBER;
        hash = (53 * hash) + getTopologyUuid().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.TopologyId parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyId parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyId parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyId parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyId parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyId parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyId parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyId parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyId parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyId parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyId parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyId parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.TopologyId prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     * ----- Topology ------------------------------------------------------------------------------------------------------
     * </pre>
     *
     * Protobuf type {@code context.TopologyId}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.TopologyId)
        context.ContextOuterClass.TopologyIdOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_TopologyId_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_TopologyId_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.TopologyId.class, context.ContextOuterClass.TopologyId.Builder.class);
      }

      // Construct using context.ContextOuterClass.TopologyId.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (contextIdBuilder_ == null) {
          contextId_ = null;
        } else {
          contextId_ = null;
          contextIdBuilder_ = null;
        }
        if (topologyUuidBuilder_ == null) {
          topologyUuid_ = null;
        } else {
          topologyUuid_ = null;
          topologyUuidBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_TopologyId_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.TopologyId getDefaultInstanceForType() {
        return context.ContextOuterClass.TopologyId.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.TopologyId build() {
        context.ContextOuterClass.TopologyId result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.TopologyId buildPartial() {
        context.ContextOuterClass.TopologyId result = new context.ContextOuterClass.TopologyId(this);
        if (contextIdBuilder_ == null) {
          result.contextId_ = contextId_;
        } else {
          result.contextId_ = contextIdBuilder_.build();
        }
        if (topologyUuidBuilder_ == null) {
          result.topologyUuid_ = topologyUuid_;
        } else {
          result.topologyUuid_ = topologyUuidBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.TopologyId) {
          return mergeFrom((context.ContextOuterClass.TopologyId)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.TopologyId other) {
        if (other == context.ContextOuterClass.TopologyId.getDefaultInstance()) return this;
        if (other.hasContextId()) {
          mergeContextId(other.getContextId());
        }
        if (other.hasTopologyUuid()) {
          mergeTopologyUuid(other.getTopologyUuid());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.TopologyId parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.TopologyId) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private context.ContextOuterClass.ContextId contextId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> contextIdBuilder_;
      /**
       * <code>.context.ContextId context_id = 1;</code>
       * @return Whether the contextId field is set.
       */
      public boolean hasContextId() {
        return contextIdBuilder_ != null || contextId_ != null;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       * @return The contextId.
       */
      public context.ContextOuterClass.ContextId getContextId() {
        if (contextIdBuilder_ == null) {
          return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
        } else {
          return contextIdBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public Builder setContextId(context.ContextOuterClass.ContextId value) {
        if (contextIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          contextId_ = value;
          onChanged();
        } else {
          contextIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public Builder setContextId(
          context.ContextOuterClass.ContextId.Builder builderForValue) {
        if (contextIdBuilder_ == null) {
          contextId_ = builderForValue.build();
          onChanged();
        } else {
          contextIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public Builder mergeContextId(context.ContextOuterClass.ContextId value) {
        if (contextIdBuilder_ == null) {
          if (contextId_ != null) {
            contextId_ =
              context.ContextOuterClass.ContextId.newBuilder(contextId_).mergeFrom(value).buildPartial();
          } else {
            contextId_ = value;
          }
          onChanged();
        } else {
          contextIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public Builder clearContextId() {
        if (contextIdBuilder_ == null) {
          contextId_ = null;
          onChanged();
        } else {
          contextId_ = null;
          contextIdBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public context.ContextOuterClass.ContextId.Builder getContextIdBuilder() {
        
        onChanged();
        return getContextIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() {
        if (contextIdBuilder_ != null) {
          return contextIdBuilder_.getMessageOrBuilder();
        } else {
          return contextId_ == null ?
              context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
        }
      }
      /**
       * <code>.context.ContextId context_id = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> 
          getContextIdFieldBuilder() {
        if (contextIdBuilder_ == null) {
          contextIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder>(
                  getContextId(),
                  getParentForChildren(),
                  isClean());
          contextId_ = null;
        }
        return contextIdBuilder_;
      }

      private context.ContextOuterClass.Uuid topologyUuid_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> topologyUuidBuilder_;
      /**
       * <code>.context.Uuid topology_uuid = 2;</code>
       * @return Whether the topologyUuid field is set.
       */
      public boolean hasTopologyUuid() {
        return topologyUuidBuilder_ != null || topologyUuid_ != null;
      }
      /**
       * <code>.context.Uuid topology_uuid = 2;</code>
       * @return The topologyUuid.
       */
      public context.ContextOuterClass.Uuid getTopologyUuid() {
        if (topologyUuidBuilder_ == null) {
          return topologyUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : topologyUuid_;
        } else {
          return topologyUuidBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.Uuid topology_uuid = 2;</code>
       */
      public Builder setTopologyUuid(context.ContextOuterClass.Uuid value) {
        if (topologyUuidBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          topologyUuid_ = value;
          onChanged();
        } else {
          topologyUuidBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.Uuid topology_uuid = 2;</code>
       */
      public Builder setTopologyUuid(
          context.ContextOuterClass.Uuid.Builder builderForValue) {
        if (topologyUuidBuilder_ == null) {
          topologyUuid_ = builderForValue.build();
          onChanged();
        } else {
          topologyUuidBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.Uuid topology_uuid = 2;</code>
       */
      public Builder mergeTopologyUuid(context.ContextOuterClass.Uuid value) {
        if (topologyUuidBuilder_ == null) {
          if (topologyUuid_ != null) {
            topologyUuid_ =
              context.ContextOuterClass.Uuid.newBuilder(topologyUuid_).mergeFrom(value).buildPartial();
          } else {
            topologyUuid_ = value;
          }
          onChanged();
        } else {
          topologyUuidBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.Uuid topology_uuid = 2;</code>
       */
      public Builder clearTopologyUuid() {
        if (topologyUuidBuilder_ == null) {
          topologyUuid_ = null;
          onChanged();
        } else {
          topologyUuid_ = null;
          topologyUuidBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.Uuid topology_uuid = 2;</code>
       */
      public context.ContextOuterClass.Uuid.Builder getTopologyUuidBuilder() {
        
        onChanged();
        return getTopologyUuidFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.Uuid topology_uuid = 2;</code>
       */
      public context.ContextOuterClass.UuidOrBuilder getTopologyUuidOrBuilder() {
        if (topologyUuidBuilder_ != null) {
          return topologyUuidBuilder_.getMessageOrBuilder();
        } else {
          return topologyUuid_ == null ?
              context.ContextOuterClass.Uuid.getDefaultInstance() : topologyUuid_;
        }
      }
      /**
       * <code>.context.Uuid topology_uuid = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> 
          getTopologyUuidFieldBuilder() {
        if (topologyUuidBuilder_ == null) {
          topologyUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>(
                  getTopologyUuid(),
                  getParentForChildren(),
                  isClean());
          topologyUuid_ = null;
        }
        return topologyUuidBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.TopologyId)
    }

    // @@protoc_insertion_point(class_scope:context.TopologyId)
    private static final context.ContextOuterClass.TopologyId DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyId();
    }

    public static context.ContextOuterClass.TopologyId getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<TopologyId>
        PARSER = new com.google.protobuf.AbstractParser<TopologyId>() {
      @java.lang.Override
      public TopologyId parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new TopologyId(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<TopologyId> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<TopologyId> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.TopologyId getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopologyOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Topology)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.TopologyId topology_id = 1;</code>
     * @return Whether the topologyId field is set.
     */
    boolean hasTopologyId();
    /**
     * <code>.context.TopologyId topology_id = 1;</code>
     * @return The topologyId.
     */
    context.ContextOuterClass.TopologyId getTopologyId();
    /**
     * <code>.context.TopologyId topology_id = 1;</code>
     */
    context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder();

    /**
     * <code>string name = 2;</code>
     * @return The name.
     */
    java.lang.String getName();
    /**
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    java.util.List<context.ContextOuterClass.DeviceId> 
        getDeviceIdsList();
    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    context.ContextOuterClass.DeviceId getDeviceIds(int index);
    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    int getDeviceIdsCount();
    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> 
        getDeviceIdsOrBuilderList();
    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder(
        int index);

    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    java.util.List<context.ContextOuterClass.LinkId> 
        getLinkIdsList();
    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    context.ContextOuterClass.LinkId getLinkIds(int index);
    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    int getLinkIdsCount();
    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> 
        getLinkIdsOrBuilderList();
    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code context.Topology}
   */
  public static final class Topology extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.Topology)
      TopologyOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Topology.newBuilder() to construct.
    private Topology(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private Topology() {
      name_ = "";
      deviceIds_ = java.util.Collections.emptyList();
      linkIds_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Topology();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Topology(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.TopologyId.Builder subBuilder = null;
              if (topologyId_ != null) {
                subBuilder = topologyId_.toBuilder();
              }
              topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(topologyId_);
                topologyId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>();
                mutable_bitField0_ |= 0x00000001;
              }
              deviceIds_.add(
                  input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry));
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>();
                mutable_bitField0_ |= 0x00000002;
              }
              linkIds_.add(
                  input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_);
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          linkIds_ = java.util.Collections.unmodifiableList(linkIds_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_Topology_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_Topology_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.Topology.class, context.ContextOuterClass.Topology.Builder.class);
    }

    public static final int TOPOLOGY_ID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.TopologyId topologyId_;
    /**
     * <code>.context.TopologyId topology_id = 1;</code>
     * @return Whether the topologyId field is set.
     */
    @java.lang.Override
    public boolean hasTopologyId() {
      return topologyId_ != null;
    }
    /**
     * <code>.context.TopologyId topology_id = 1;</code>
     * @return The topologyId.
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyId getTopologyId() {
      return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_;
    }
    /**
     * <code>.context.TopologyId topology_id = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() {
      return getTopologyId();
    }

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
    /**
     * <code>string name = 2;</code>
     * @return The name.
     */
    @java.lang.Override
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int DEVICE_IDS_FIELD_NUMBER = 3;
    private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_;
    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() {
      return deviceIds_;
    }
    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> 
        getDeviceIdsOrBuilderList() {
      return deviceIds_;
    }
    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    @java.lang.Override
    public int getDeviceIdsCount() {
      return deviceIds_.size();
    }
    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceId getDeviceIds(int index) {
      return deviceIds_.get(index);
    }
    /**
     * <code>repeated .context.DeviceId device_ids = 3;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder(
        int index) {
      return deviceIds_.get(index);
    }

    public static final int LINK_IDS_FIELD_NUMBER = 4;
    private java.util.List<context.ContextOuterClass.LinkId> linkIds_;
    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() {
      return linkIds_;
    }
    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> 
        getLinkIdsOrBuilderList() {
      return linkIds_;
    }
    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    @java.lang.Override
    public int getLinkIdsCount() {
      return linkIds_.size();
    }
    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.LinkId getLinkIds(int index) {
      return linkIds_.get(index);
    }
    /**
     * <code>repeated .context.LinkId link_ids = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder(
        int index) {
      return linkIds_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (topologyId_ != null) {
        output.writeMessage(1, getTopologyId());
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      for (int i = 0; i < deviceIds_.size(); i++) {
        output.writeMessage(3, deviceIds_.get(i));
      }
      for (int i = 0; i < linkIds_.size(); i++) {
        output.writeMessage(4, linkIds_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (topologyId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getTopologyId());
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      for (int i = 0; i < deviceIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, deviceIds_.get(i));
      }
      for (int i = 0; i < linkIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, linkIds_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.Topology)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.Topology other = (context.ContextOuterClass.Topology) obj;

      if (hasTopologyId() != other.hasTopologyId()) return false;
      if (hasTopologyId()) {
        if (!getTopologyId()
            .equals(other.getTopologyId())) return false;
      }
      if (!getName()
          .equals(other.getName())) return false;
      if (!getDeviceIdsList()
          .equals(other.getDeviceIdsList())) return false;
      if (!getLinkIdsList()
          .equals(other.getLinkIdsList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasTopologyId()) {
        hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER;
        hash = (53 * hash) + getTopologyId().hashCode();
      }
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      if (getDeviceIdsCount() > 0) {
        hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getDeviceIdsList().hashCode();
      }
      if (getLinkIdsCount() > 0) {
        hash = (37 * hash) + LINK_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getLinkIdsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.Topology parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Topology parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Topology parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Topology parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Topology parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Topology parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Topology parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Topology parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Topology parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Topology parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Topology parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Topology parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.Topology prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.Topology}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.Topology)
        context.ContextOuterClass.TopologyOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_Topology_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_Topology_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.Topology.class, context.ContextOuterClass.Topology.Builder.class);
      }

      // Construct using context.ContextOuterClass.Topology.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getDeviceIdsFieldBuilder();
          getLinkIdsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (topologyIdBuilder_ == null) {
          topologyId_ = null;
        } else {
          topologyId_ = null;
          topologyIdBuilder_ = null;
        }
        if (deviceIdsBuilder_ == null) {
          deviceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          deviceIdsBuilder_.clear();
        }
        if (linkIdsBuilder_ == null) {
          linkIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          linkIdsBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_Topology_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.Topology getDefaultInstanceForType() {
        return context.ContextOuterClass.Topology.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.Topology build() {
        context.ContextOuterClass.Topology result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.Topology buildPartial() {
        context.ContextOuterClass.Topology result = new context.ContextOuterClass.Topology(this);
        int from_bitField0_ = bitField0_;
        if (topologyIdBuilder_ == null) {
          result.topologyId_ = topologyId_;
        } else {
          result.topologyId_ = topologyIdBuilder_.build();
        }
        result.name_ = name_;
        if (deviceIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.deviceIds_ = deviceIds_;
        } else {
          result.deviceIds_ = deviceIdsBuilder_.build();
        }
        if (linkIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) != 0)) {
            linkIds_ = java.util.Collections.unmodifiableList(linkIds_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.linkIds_ = linkIds_;
        } else {
          result.linkIds_ = linkIdsBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.Topology) {
          return mergeFrom((context.ContextOuterClass.Topology)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.Topology other) {
        if (other == context.ContextOuterClass.Topology.getDefaultInstance()) return this;
        if (other.hasTopologyId()) {
          mergeTopologyId(other.getTopologyId());
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (deviceIdsBuilder_ == null) {
          if (!other.deviceIds_.isEmpty()) {
            if (deviceIds_.isEmpty()) {
              deviceIds_ = other.deviceIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureDeviceIdsIsMutable();
              deviceIds_.addAll(other.deviceIds_);
            }
            onChanged();
          }
        } else {
          if (!other.deviceIds_.isEmpty()) {
            if (deviceIdsBuilder_.isEmpty()) {
              deviceIdsBuilder_.dispose();
              deviceIdsBuilder_ = null;
              deviceIds_ = other.deviceIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
              deviceIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getDeviceIdsFieldBuilder() : null;
            } else {
              deviceIdsBuilder_.addAllMessages(other.deviceIds_);
            }
          }
        }
        if (linkIdsBuilder_ == null) {
          if (!other.linkIds_.isEmpty()) {
            if (linkIds_.isEmpty()) {
              linkIds_ = other.linkIds_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureLinkIdsIsMutable();
              linkIds_.addAll(other.linkIds_);
            }
            onChanged();
          }
        } else {
          if (!other.linkIds_.isEmpty()) {
            if (linkIdsBuilder_.isEmpty()) {
              linkIdsBuilder_.dispose();
              linkIdsBuilder_ = null;
              linkIds_ = other.linkIds_;
              bitField0_ = (bitField0_ & ~0x00000002);
              linkIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getLinkIdsFieldBuilder() : null;
            } else {
              linkIdsBuilder_.addAllMessages(other.linkIds_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.Topology parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.Topology) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private context.ContextOuterClass.TopologyId topologyId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_;
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       * @return Whether the topologyId field is set.
       */
      public boolean hasTopologyId() {
        return topologyIdBuilder_ != null || topologyId_ != null;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       * @return The topologyId.
       */
      public context.ContextOuterClass.TopologyId getTopologyId() {
        if (topologyIdBuilder_ == null) {
          return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_;
        } else {
          return topologyIdBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public Builder setTopologyId(context.ContextOuterClass.TopologyId value) {
        if (topologyIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          topologyId_ = value;
          onChanged();
        } else {
          topologyIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public Builder setTopologyId(
          context.ContextOuterClass.TopologyId.Builder builderForValue) {
        if (topologyIdBuilder_ == null) {
          topologyId_ = builderForValue.build();
          onChanged();
        } else {
          topologyIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) {
        if (topologyIdBuilder_ == null) {
          if (topologyId_ != null) {
            topologyId_ =
              context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial();
          } else {
            topologyId_ = value;
          }
          onChanged();
        } else {
          topologyIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public Builder clearTopologyId() {
        if (topologyIdBuilder_ == null) {
          topologyId_ = null;
          onChanged();
        } else {
          topologyId_ = null;
          topologyIdBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() {
        
        onChanged();
        return getTopologyIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() {
        if (topologyIdBuilder_ != null) {
          return topologyIdBuilder_.getMessageOrBuilder();
        } else {
          return topologyId_ == null ?
              context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_;
        }
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> 
          getTopologyIdFieldBuilder() {
        if (topologyIdBuilder_ == null) {
          topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>(
                  getTopologyId(),
                  getParentForChildren(),
                  isClean());
          topologyId_ = null;
        }
        return topologyIdBuilder_;
      }

      private java.lang.Object name_ = "";
      /**
       * <code>string name = 2;</code>
       * @return The name.
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @return The bytes for name.
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @param value The name to set.
       * @return This builder for chaining.
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @param value The bytes for name to set.
       * @return This builder for chaining.
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_ =
        java.util.Collections.emptyList();
      private void ensureDeviceIdsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(deviceIds_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdsBuilder_;

      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() {
        if (deviceIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(deviceIds_);
        } else {
          return deviceIdsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public int getDeviceIdsCount() {
        if (deviceIdsBuilder_ == null) {
          return deviceIds_.size();
        } else {
          return deviceIdsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public context.ContextOuterClass.DeviceId getDeviceIds(int index) {
        if (deviceIdsBuilder_ == null) {
          return deviceIds_.get(index);
        } else {
          return deviceIdsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public Builder setDeviceIds(
          int index, context.ContextOuterClass.DeviceId value) {
        if (deviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDeviceIdsIsMutable();
          deviceIds_.set(index, value);
          onChanged();
        } else {
          deviceIdsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public Builder setDeviceIds(
          int index, context.ContextOuterClass.DeviceId.Builder builderForValue) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          deviceIds_.set(index, builderForValue.build());
          onChanged();
        } else {
          deviceIdsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public Builder addDeviceIds(context.ContextOuterClass.DeviceId value) {
        if (deviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDeviceIdsIsMutable();
          deviceIds_.add(value);
          onChanged();
        } else {
          deviceIdsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public Builder addDeviceIds(
          int index, context.ContextOuterClass.DeviceId value) {
        if (deviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDeviceIdsIsMutable();
          deviceIds_.add(index, value);
          onChanged();
        } else {
          deviceIdsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public Builder addDeviceIds(
          context.ContextOuterClass.DeviceId.Builder builderForValue) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          deviceIds_.add(builderForValue.build());
          onChanged();
        } else {
          deviceIdsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public Builder addDeviceIds(
          int index, context.ContextOuterClass.DeviceId.Builder builderForValue) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          deviceIds_.add(index, builderForValue.build());
          onChanged();
        } else {
          deviceIdsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public Builder addAllDeviceIds(
          java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, deviceIds_);
          onChanged();
        } else {
          deviceIdsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public Builder clearDeviceIds() {
        if (deviceIdsBuilder_ == null) {
          deviceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          deviceIdsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public Builder removeDeviceIds(int index) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          deviceIds_.remove(index);
          onChanged();
        } else {
          deviceIdsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public context.ContextOuterClass.DeviceId.Builder getDeviceIdsBuilder(
          int index) {
        return getDeviceIdsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder(
          int index) {
        if (deviceIdsBuilder_ == null) {
          return deviceIds_.get(index);  } else {
          return deviceIdsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> 
           getDeviceIdsOrBuilderList() {
        if (deviceIdsBuilder_ != null) {
          return deviceIdsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(deviceIds_);
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder() {
        return getDeviceIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.DeviceId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder(
          int index) {
        return getDeviceIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.DeviceId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 3;</code>
       */
      public java.util.List<context.ContextOuterClass.DeviceId.Builder> 
           getDeviceIdsBuilderList() {
        return getDeviceIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> 
          getDeviceIdsFieldBuilder() {
        if (deviceIdsBuilder_ == null) {
          deviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>(
                  deviceIds_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          deviceIds_ = null;
        }
        return deviceIdsBuilder_;
      }

      private java.util.List<context.ContextOuterClass.LinkId> linkIds_ =
        java.util.Collections.emptyList();
      private void ensureLinkIdsIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(linkIds_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdsBuilder_;

      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() {
        if (linkIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(linkIds_);
        } else {
          return linkIdsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public int getLinkIdsCount() {
        if (linkIdsBuilder_ == null) {
          return linkIds_.size();
        } else {
          return linkIdsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public context.ContextOuterClass.LinkId getLinkIds(int index) {
        if (linkIdsBuilder_ == null) {
          return linkIds_.get(index);
        } else {
          return linkIdsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public Builder setLinkIds(
          int index, context.ContextOuterClass.LinkId value) {
        if (linkIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLinkIdsIsMutable();
          linkIds_.set(index, value);
          onChanged();
        } else {
          linkIdsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public Builder setLinkIds(
          int index, context.ContextOuterClass.LinkId.Builder builderForValue) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          linkIds_.set(index, builderForValue.build());
          onChanged();
        } else {
          linkIdsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public Builder addLinkIds(context.ContextOuterClass.LinkId value) {
        if (linkIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLinkIdsIsMutable();
          linkIds_.add(value);
          onChanged();
        } else {
          linkIdsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public Builder addLinkIds(
          int index, context.ContextOuterClass.LinkId value) {
        if (linkIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLinkIdsIsMutable();
          linkIds_.add(index, value);
          onChanged();
        } else {
          linkIdsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public Builder addLinkIds(
          context.ContextOuterClass.LinkId.Builder builderForValue) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          linkIds_.add(builderForValue.build());
          onChanged();
        } else {
          linkIdsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public Builder addLinkIds(
          int index, context.ContextOuterClass.LinkId.Builder builderForValue) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          linkIds_.add(index, builderForValue.build());
          onChanged();
        } else {
          linkIdsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public Builder addAllLinkIds(
          java.lang.Iterable<? extends context.ContextOuterClass.LinkId> values) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, linkIds_);
          onChanged();
        } else {
          linkIdsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public Builder clearLinkIds() {
        if (linkIdsBuilder_ == null) {
          linkIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          linkIdsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public Builder removeLinkIds(int index) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          linkIds_.remove(index);
          onChanged();
        } else {
          linkIdsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public context.ContextOuterClass.LinkId.Builder getLinkIdsBuilder(
          int index) {
        return getLinkIdsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder(
          int index) {
        if (linkIdsBuilder_ == null) {
          return linkIds_.get(index);  } else {
          return linkIdsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> 
           getLinkIdsOrBuilderList() {
        if (linkIdsBuilder_ != null) {
          return linkIdsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(linkIds_);
        }
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder() {
        return getLinkIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.LinkId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder(
          int index) {
        return getLinkIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.LinkId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.LinkId link_ids = 4;</code>
       */
      public java.util.List<context.ContextOuterClass.LinkId.Builder> 
           getLinkIdsBuilderList() {
        return getLinkIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> 
          getLinkIdsFieldBuilder() {
        if (linkIdsBuilder_ == null) {
          linkIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>(
                  linkIds_,
                  ((bitField0_ & 0x00000002) != 0),
                  getParentForChildren(),
                  isClean());
          linkIds_ = null;
        }
        return linkIdsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.Topology)
    }

    // @@protoc_insertion_point(class_scope:context.Topology)
    private static final context.ContextOuterClass.Topology DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.Topology();
    }

    public static context.ContextOuterClass.Topology getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<Topology>
        PARSER = new com.google.protobuf.AbstractParser<Topology>() {
      @java.lang.Override
      public Topology parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Topology(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<Topology> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<Topology> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.Topology getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopologyDetailsOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.TopologyDetails)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.TopologyId topology_id = 1;</code>
     * @return Whether the topologyId field is set.
    boolean hasTopologyId();
     * <code>.context.TopologyId topology_id = 1;</code>
     * @return The topologyId.
    context.ContextOuterClass.TopologyId getTopologyId();
     * <code>.context.TopologyId topology_id = 1;</code>
    context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder();

     * <code>string name = 2;</code>
     * @return The name.
    java.lang.String getName();
     * <code>string name = 2;</code>
     * @return The bytes for name.
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    java.util.List<context.ContextOuterClass.Device> 
        getDevicesList();
    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    context.ContextOuterClass.Device getDevices(int index);
    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    int getDevicesCount();
    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> 
        getDevicesOrBuilderList();
    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder(
        int index);

    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    java.util.List<context.ContextOuterClass.Link> 
        getLinksList();
    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    context.ContextOuterClass.Link getLinks(int index);
    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    int getLinksCount();
    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> 
        getLinksOrBuilderList();
    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder(
   * Protobuf type {@code context.TopologyDetails}
  public static final class TopologyDetails extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.TopologyDetails)
      TopologyDetailsOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopologyDetails.newBuilder() to construct.
    private TopologyDetails(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private TopologyDetails() {
      name_ = "";
      devices_ = java.util.Collections.emptyList();
      links_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopologyDetails();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopologyDetails(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.TopologyId.Builder subBuilder = null;
              if (topologyId_ != null) {
                subBuilder = topologyId_.toBuilder();
              }
              topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(topologyId_);
                topologyId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>();
                mutable_bitField0_ |= 0x00000001;
              }
              devices_.add(
                  input.readMessage(context.ContextOuterClass.Device.parser(), extensionRegistry));
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                links_ = new java.util.ArrayList<context.ContextOuterClass.Link>();
                mutable_bitField0_ |= 0x00000002;
              }
              links_.add(
                  input.readMessage(context.ContextOuterClass.Link.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          devices_ = java.util.Collections.unmodifiableList(devices_);
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          links_ = java.util.Collections.unmodifiableList(links_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_TopologyDetails_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_TopologyDetails_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.TopologyDetails.class, context.ContextOuterClass.TopologyDetails.Builder.class);
    public static final int TOPOLOGY_ID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.TopologyId topologyId_;
     * <code>.context.TopologyId topology_id = 1;</code>
     * @return Whether the topologyId field is set.
     */
    @java.lang.Override
    public boolean hasTopologyId() {
      return topologyId_ != null;
     * <code>.context.TopologyId topology_id = 1;</code>
     * @return The topologyId.
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyId getTopologyId() {
      return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_;
     * <code>.context.TopologyId topology_id = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() {
      return getTopologyId();

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
     * <code>string name = 2;</code>
     * @return The name.
     */
    @java.lang.Override
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int DEVICES_FIELD_NUMBER = 3;
    private java.util.List<context.ContextOuterClass.Device> devices_;
    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.Device> getDevicesList() {
      return devices_;
    }
    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> 
        getDevicesOrBuilderList() {
      return devices_;
    }
    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    @java.lang.Override
    public int getDevicesCount() {
      return devices_.size();
    }
    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.Device getDevices(int index) {
      return devices_.get(index);
    }
    /**
     * <code>repeated .context.Device devices = 3;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder(
        int index) {
      return devices_.get(index);
    }

    public static final int LINKS_FIELD_NUMBER = 4;
    private java.util.List<context.ContextOuterClass.Link> links_;
    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.Link> getLinksList() {
      return links_;
    }
    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> 
        getLinksOrBuilderList() {
      return links_;
    }
    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    @java.lang.Override
    public int getLinksCount() {
      return links_.size();
    }
    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.Link getLinks(int index) {
      return links_.get(index);
    }
    /**
     * <code>repeated .context.Link links = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder(
        int index) {
      return links_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (topologyId_ != null) {
        output.writeMessage(1, getTopologyId());
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      for (int i = 0; i < devices_.size(); i++) {
        output.writeMessage(3, devices_.get(i));
      }
      for (int i = 0; i < links_.size(); i++) {
        output.writeMessage(4, links_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (topologyId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getTopologyId());
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      for (int i = 0; i < devices_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, devices_.get(i));
      }
      for (int i = 0; i < links_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, links_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.TopologyDetails)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.TopologyDetails other = (context.ContextOuterClass.TopologyDetails) obj;
      if (hasTopologyId() != other.hasTopologyId()) return false;
      if (hasTopologyId()) {
        if (!getTopologyId()
            .equals(other.getTopologyId())) return false;
      }
      if (!getName()
          .equals(other.getName())) return false;
      if (!getDevicesList()
          .equals(other.getDevicesList())) return false;
      if (!getLinksList()
          .equals(other.getLinksList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasTopologyId()) {
        hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER;
        hash = (53 * hash) + getTopologyId().hashCode();
      }
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      if (getDevicesCount() > 0) {
        hash = (37 * hash) + DEVICES_FIELD_NUMBER;
        hash = (53 * hash) + getDevicesList().hashCode();
      }
      if (getLinksCount() > 0) {
        hash = (37 * hash) + LINKS_FIELD_NUMBER;
        hash = (53 * hash) + getLinksList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.TopologyDetails parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyDetails parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyDetails parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyDetails parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyDetails parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyDetails parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyDetails parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyDetails parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyDetails parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyDetails parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyDetails parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyDetails parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.TopologyDetails prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.TopologyDetails}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.TopologyDetails)
        context.ContextOuterClass.TopologyDetailsOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_TopologyDetails_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_TopologyDetails_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.TopologyDetails.class, context.ContextOuterClass.TopologyDetails.Builder.class);
      // Construct using context.ContextOuterClass.TopologyDetails.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getDevicesFieldBuilder();
          getLinksFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (topologyIdBuilder_ == null) {
          topologyId_ = null;
        } else {
          topologyId_ = null;
          topologyIdBuilder_ = null;
        }
        name_ = "";

        if (devicesBuilder_ == null) {
          devices_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          devicesBuilder_.clear();
        }
        if (linksBuilder_ == null) {
          links_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          linksBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_TopologyDetails_descriptor;
      public context.ContextOuterClass.TopologyDetails getDefaultInstanceForType() {
        return context.ContextOuterClass.TopologyDetails.getDefaultInstance();
      public context.ContextOuterClass.TopologyDetails build() {
        context.ContextOuterClass.TopologyDetails result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.TopologyDetails buildPartial() {
        context.ContextOuterClass.TopologyDetails result = new context.ContextOuterClass.TopologyDetails(this);
        int from_bitField0_ = bitField0_;
        if (topologyIdBuilder_ == null) {
          result.topologyId_ = topologyId_;
        } else {
          result.topologyId_ = topologyIdBuilder_.build();
        }
        result.name_ = name_;
        if (devicesBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            devices_ = java.util.Collections.unmodifiableList(devices_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.devices_ = devices_;
          result.devices_ = devicesBuilder_.build();
        }
        if (linksBuilder_ == null) {
          if (((bitField0_ & 0x00000002) != 0)) {
            links_ = java.util.Collections.unmodifiableList(links_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.links_ = links_;
        } else {
          result.links_ = linksBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.TopologyDetails) {
          return mergeFrom((context.ContextOuterClass.TopologyDetails)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.TopologyDetails other) {
        if (other == context.ContextOuterClass.TopologyDetails.getDefaultInstance()) return this;
        if (other.hasTopologyId()) {
          mergeTopologyId(other.getTopologyId());
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (devicesBuilder_ == null) {
          if (!other.devices_.isEmpty()) {
            if (devices_.isEmpty()) {
              devices_ = other.devices_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureDevicesIsMutable();
              devices_.addAll(other.devices_);
          if (!other.devices_.isEmpty()) {
            if (devicesBuilder_.isEmpty()) {
              devicesBuilder_.dispose();
              devicesBuilder_ = null;
              devices_ = other.devices_;
              bitField0_ = (bitField0_ & ~0x00000001);
              devicesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getDevicesFieldBuilder() : null;
              devicesBuilder_.addAllMessages(other.devices_);
            }
          }
        }
        if (linksBuilder_ == null) {
          if (!other.links_.isEmpty()) {
            if (links_.isEmpty()) {
              links_ = other.links_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureLinksIsMutable();
              links_.addAll(other.links_);
            }
            onChanged();
          }
        } else {
          if (!other.links_.isEmpty()) {
            if (linksBuilder_.isEmpty()) {
              linksBuilder_.dispose();
              linksBuilder_ = null;
              links_ = other.links_;
              bitField0_ = (bitField0_ & ~0x00000002);
              linksBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getLinksFieldBuilder() : null;
            } else {
              linksBuilder_.addAllMessages(other.links_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.TopologyDetails parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.TopologyDetails) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private context.ContextOuterClass.TopologyId topologyId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_;
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       * @return Whether the topologyId field is set.
       */
      public boolean hasTopologyId() {
        return topologyIdBuilder_ != null || topologyId_ != null;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       * @return The topologyId.
       */
      public context.ContextOuterClass.TopologyId getTopologyId() {
        if (topologyIdBuilder_ == null) {
          return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_;
        } else {
          return topologyIdBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public Builder setTopologyId(context.ContextOuterClass.TopologyId value) {
        if (topologyIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          topologyId_ = value;
          onChanged();
        } else {
          topologyIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public Builder setTopologyId(
          context.ContextOuterClass.TopologyId.Builder builderForValue) {
        if (topologyIdBuilder_ == null) {
          topologyId_ = builderForValue.build();
          onChanged();
        } else {
          topologyIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) {
        if (topologyIdBuilder_ == null) {
          if (topologyId_ != null) {
            topologyId_ =
              context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial();
          } else {
            topologyId_ = value;
          }
          onChanged();
        } else {
          topologyIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public Builder clearTopologyId() {
        if (topologyIdBuilder_ == null) {
          topologyId_ = null;
          onChanged();
        } else {
          topologyId_ = null;
          topologyIdBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() {
        
        onChanged();
        return getTopologyIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() {
        if (topologyIdBuilder_ != null) {
          return topologyIdBuilder_.getMessageOrBuilder();
        } else {
          return topologyId_ == null ?
              context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_;
        }
      }
      /**
       * <code>.context.TopologyId topology_id = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> 
          getTopologyIdFieldBuilder() {
        if (topologyIdBuilder_ == null) {
          topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>(
                  getTopologyId(),
                  getParentForChildren(),
                  isClean());
          topologyId_ = null;
        }
        return topologyIdBuilder_;
      }

      private java.lang.Object name_ = "";
      /**
       * <code>string name = 2;</code>
       * @return The name.
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @return The bytes for name.
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @param value The name to set.
       * @return This builder for chaining.
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @param value The bytes for name to set.
       * @return This builder for chaining.
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private java.util.List<context.ContextOuterClass.Device> devices_ =
        java.util.Collections.emptyList();
      private void ensureDevicesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>(devices_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> devicesBuilder_;
       * <code>repeated .context.Device devices = 3;</code>
      public java.util.List<context.ContextOuterClass.Device> getDevicesList() {
        if (devicesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(devices_);
          return devicesBuilder_.getMessageList();
       * <code>repeated .context.Device devices = 3;</code>
      public int getDevicesCount() {
        if (devicesBuilder_ == null) {
          return devices_.size();
          return devicesBuilder_.getCount();
       * <code>repeated .context.Device devices = 3;</code>
      public context.ContextOuterClass.Device getDevices(int index) {
        if (devicesBuilder_ == null) {
          return devices_.get(index);
          return devicesBuilder_.getMessage(index);
       * <code>repeated .context.Device devices = 3;</code>
      public Builder setDevices(
          int index, context.ContextOuterClass.Device value) {
        if (devicesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDevicesIsMutable();
          devices_.set(index, value);
          onChanged();
        } else {
          devicesBuilder_.setMessage(index, value);
       * <code>repeated .context.Device devices = 3;</code>
      public Builder setDevices(
          int index, context.ContextOuterClass.Device.Builder builderForValue) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          devices_.set(index, builderForValue.build());
          onChanged();
        } else {
          devicesBuilder_.setMessage(index, builderForValue.build());
       * <code>repeated .context.Device devices = 3;</code>
      public Builder addDevices(context.ContextOuterClass.Device value) {
        if (devicesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDevicesIsMutable();
          devices_.add(value);
          onChanged();
        } else {
          devicesBuilder_.addMessage(value);
       * <code>repeated .context.Device devices = 3;</code>
      public Builder addDevices(
          int index, context.ContextOuterClass.Device value) {
        if (devicesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDevicesIsMutable();
          devices_.add(index, value);
          onChanged();
        } else {
          devicesBuilder_.addMessage(index, value);
       * <code>repeated .context.Device devices = 3;</code>
      public Builder addDevices(
          context.ContextOuterClass.Device.Builder builderForValue) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          devices_.add(builderForValue.build());
          onChanged();
        } else {
          devicesBuilder_.addMessage(builderForValue.build());
       * <code>repeated .context.Device devices = 3;</code>
      public Builder addDevices(
          int index, context.ContextOuterClass.Device.Builder builderForValue) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          devices_.add(index, builderForValue.build());
          onChanged();
        } else {
          devicesBuilder_.addMessage(index, builderForValue.build());
       * <code>repeated .context.Device devices = 3;</code>
      public Builder addAllDevices(
          java.lang.Iterable<? extends context.ContextOuterClass.Device> values) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, devices_);
          onChanged();
        } else {
          devicesBuilder_.addAllMessages(values);
       * <code>repeated .context.Device devices = 3;</code>
      public Builder clearDevices() {
        if (devicesBuilder_ == null) {
          devices_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          devicesBuilder_.clear();
       * <code>repeated .context.Device devices = 3;</code>
      public Builder removeDevices(int index) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          devices_.remove(index);
          onChanged();
        } else {
          devicesBuilder_.remove(index);
       * <code>repeated .context.Device devices = 3;</code>
      public context.ContextOuterClass.Device.Builder getDevicesBuilder(
          int index) {
        return getDevicesFieldBuilder().getBuilder(index);
       * <code>repeated .context.Device devices = 3;</code>
      public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder(
          int index) {
        if (devicesBuilder_ == null) {
          return devices_.get(index);  } else {
          return devicesBuilder_.getMessageOrBuilder(index);
       * <code>repeated .context.Device devices = 3;</code>
      public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> 
           getDevicesOrBuilderList() {
        if (devicesBuilder_ != null) {
          return devicesBuilder_.getMessageOrBuilderList();
          return java.util.Collections.unmodifiableList(devices_);
       * <code>repeated .context.Device devices = 3;</code>
      public context.ContextOuterClass.Device.Builder addDevicesBuilder() {
        return getDevicesFieldBuilder().addBuilder(
            context.ContextOuterClass.Device.getDefaultInstance());
       * <code>repeated .context.Device devices = 3;</code>
      public context.ContextOuterClass.Device.Builder addDevicesBuilder(
          int index) {
        return getDevicesFieldBuilder().addBuilder(
            index, context.ContextOuterClass.Device.getDefaultInstance());
       * <code>repeated .context.Device devices = 3;</code>
      public java.util.List<context.ContextOuterClass.Device.Builder> 
           getDevicesBuilderList() {
        return getDevicesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> 
          getDevicesFieldBuilder() {
        if (devicesBuilder_ == null) {
          devicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder>(
                  devices_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          devices_ = null;
        return devicesBuilder_;
      private java.util.List<context.ContextOuterClass.Link> links_ =
        java.util.Collections.emptyList();
      private void ensureLinksIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(links_);
          bitField0_ |= 0x00000002;
         }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> linksBuilder_;
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public java.util.List<context.ContextOuterClass.Link> getLinksList() {
        if (linksBuilder_ == null) {
          return java.util.Collections.unmodifiableList(links_);
        } else {
          return linksBuilder_.getMessageList();
        }
12244 12245 12246 12247 12248 12249 12250 12251 12252 12253 12254 12255 12256 12257 12258 12259 12260 12261 12262 12263 12264 12265 12266 12267 12268 12269 12270 12271 12272 12273 12274 12275 12276 12277 12278 12279 12280 12281 12282 12283 12284 12285 12286 12287 12288 12289 12290 12291 12292 12293 12294 12295 12296 12297 12298 12299 12300 12301 12302 12303 12304 12305 12306 12307 12308 12309 12310 12311 12312 12313 12314 12315 12316 12317 12318 12319 12320 12321 12322 12323 12324 12325 12326 12327 12328 12329 12330 12331 12332 12333 12334 12335 12336 12337 12338 12339 12340 12341 12342 12343 12344 12345 12346 12347 12348 12349 12350 12351 12352 12353 12354 12355 12356 12357 12358 12359 12360 12361 12362 12363 12364 12365 12366 12367 12368 12369 12370 12371 12372 12373 12374 12375 12376 12377 12378 12379 12380 12381 12382 12383 12384 12385 12386 12387 12388 12389 12390 12391 12392 12393 12394 12395 12396 12397 12398 12399 12400 12401 12402 12403 12404 12405 12406 12407 12408 12409 12410 12411 12412 12413 12414 12415 12416 12417 12418 12419 12420 12421 12422 12423 12424 12425 12426 12427 12428 12429 12430 12431 12432 12433 12434 12435 12436 12437 12438 12439 12440 12441 12442 12443 12444 12445 12446 12447 12448 12449 12450 12451 12452 12453 12454 12455 12456 12457 12458 12459 12460 12461 12462 12463 12464 12465 12466 12467 12468 12469 12470 12471 12472 12473 12474 12475 12476 12477 12478 12479 12480 12481 12482 12483 12484 12485 12486 12487 12488 12489 12490 12491 12492 12493 12494 12495 12496 12497 12498 12499 12500 12501 12502 12503 12504 12505 12506 12507 12508 12509 12510 12511 12512 12513 12514 12515 12516
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public int getLinksCount() {
        if (linksBuilder_ == null) {
          return links_.size();
        } else {
          return linksBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public context.ContextOuterClass.Link getLinks(int index) {
        if (linksBuilder_ == null) {
          return links_.get(index);
        } else {
          return linksBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public Builder setLinks(
          int index, context.ContextOuterClass.Link value) {
        if (linksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLinksIsMutable();
          links_.set(index, value);
          onChanged();
        } else {
          linksBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public Builder setLinks(
          int index, context.ContextOuterClass.Link.Builder builderForValue) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          links_.set(index, builderForValue.build());
          onChanged();
        } else {
          linksBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public Builder addLinks(context.ContextOuterClass.Link value) {
        if (linksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLinksIsMutable();
          links_.add(value);
          onChanged();
        } else {
          linksBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public Builder addLinks(
          int index, context.ContextOuterClass.Link value) {
        if (linksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLinksIsMutable();
          links_.add(index, value);
          onChanged();
        } else {
          linksBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public Builder addLinks(
          context.ContextOuterClass.Link.Builder builderForValue) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          links_.add(builderForValue.build());
          onChanged();
        } else {
          linksBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public Builder addLinks(
          int index, context.ContextOuterClass.Link.Builder builderForValue) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          links_.add(index, builderForValue.build());
          onChanged();
        } else {
          linksBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public Builder addAllLinks(
          java.lang.Iterable<? extends context.ContextOuterClass.Link> values) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, links_);
          onChanged();
        } else {
          linksBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public Builder clearLinks() {
        if (linksBuilder_ == null) {
          links_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          linksBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public Builder removeLinks(int index) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          links_.remove(index);
          onChanged();
        } else {
          linksBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public context.ContextOuterClass.Link.Builder getLinksBuilder(
          int index) {
        return getLinksFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder(
          int index) {
        if (linksBuilder_ == null) {
          return links_.get(index);  } else {
          return linksBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> 
           getLinksOrBuilderList() {
        if (linksBuilder_ != null) {
          return linksBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(links_);
        }
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public context.ContextOuterClass.Link.Builder addLinksBuilder() {
        return getLinksFieldBuilder().addBuilder(
            context.ContextOuterClass.Link.getDefaultInstance());
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public context.ContextOuterClass.Link.Builder addLinksBuilder(
          int index) {
        return getLinksFieldBuilder().addBuilder(
            index, context.ContextOuterClass.Link.getDefaultInstance());
      }
      /**
       * <code>repeated .context.Link links = 4;</code>
       */
      public java.util.List<context.ContextOuterClass.Link.Builder> 
           getLinksBuilderList() {
        return getLinksFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> 
          getLinksFieldBuilder() {
        if (linksBuilder_ == null) {
          linksBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder>(
                  links_,
                  ((bitField0_ & 0x00000002) != 0),
                  getParentForChildren(),
                  isClean());
          links_ = null;
        }
        return linksBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.TopologyDetails)
    }

    // @@protoc_insertion_point(class_scope:context.TopologyDetails)
    private static final context.ContextOuterClass.TopologyDetails DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyDetails();
    }

    public static context.ContextOuterClass.TopologyDetails getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<TopologyDetails>
        PARSER = new com.google.protobuf.AbstractParser<TopologyDetails>() {
      @java.lang.Override
      public TopologyDetails parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new TopologyDetails(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<TopologyDetails> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<TopologyDetails> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.TopologyDetails getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopologyIdListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.TopologyIdList)
      com.google.protobuf.MessageOrBuilder {
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
    java.util.List<context.ContextOuterClass.TopologyId> 
        getTopologyIdsList();
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
    context.ContextOuterClass.TopologyId getTopologyIds(int index);
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
    int getTopologyIdsCount();
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
    java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> 
        getTopologyIdsOrBuilderList();
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
    context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder(
   * Protobuf type {@code context.TopologyIdList}
  public static final class TopologyIdList extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.TopologyIdList)
      TopologyIdListOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopologyIdList.newBuilder() to construct.
    private TopologyIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private TopologyIdList() {
      topologyIds_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopologyIdList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopologyIdList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                topologyIds_ = new java.util.ArrayList<context.ContextOuterClass.TopologyId>();
                mutable_bitField0_ |= 0x00000001;
              }
              topologyIds_.add(
                  input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          topologyIds_ = java.util.Collections.unmodifiableList(topologyIds_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_TopologyIdList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_TopologyIdList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.TopologyIdList.class, context.ContextOuterClass.TopologyIdList.Builder.class);
    public static final int TOPOLOGY_IDS_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_;
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() {
      return topologyIds_;
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> 
        getTopologyIdsOrBuilderList() {
      return topologyIds_;
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
     */
    @java.lang.Override
    public int getTopologyIdsCount() {
      return topologyIds_.size();
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyId getTopologyIds(int index) {
      return topologyIds_.get(index);
     * <code>repeated .context.TopologyId topology_ids = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder(
        int index) {
      return topologyIds_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < topologyIds_.size(); i++) {
        output.writeMessage(1, topologyIds_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < topologyIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, topologyIds_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.TopologyIdList)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.TopologyIdList other = (context.ContextOuterClass.TopologyIdList) obj;
      if (!getTopologyIdsList()
          .equals(other.getTopologyIdsList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getTopologyIdsCount() > 0) {
        hash = (37 * hash) + TOPOLOGY_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getTopologyIdsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.TopologyIdList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyIdList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyIdList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyIdList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyIdList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyIdList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyIdList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyIdList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyIdList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyIdList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyIdList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyIdList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.TopologyIdList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.TopologyIdList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.TopologyIdList)
        context.ContextOuterClass.TopologyIdListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_TopologyIdList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_TopologyIdList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.TopologyIdList.class, context.ContextOuterClass.TopologyIdList.Builder.class);
      // Construct using context.ContextOuterClass.TopologyIdList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getTopologyIdsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (topologyIdsBuilder_ == null) {
          topologyIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          topologyIdsBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_TopologyIdList_descriptor;
      public context.ContextOuterClass.TopologyIdList getDefaultInstanceForType() {
        return context.ContextOuterClass.TopologyIdList.getDefaultInstance();
      public context.ContextOuterClass.TopologyIdList build() {
        context.ContextOuterClass.TopologyIdList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.TopologyIdList buildPartial() {
        context.ContextOuterClass.TopologyIdList result = new context.ContextOuterClass.TopologyIdList(this);
        int from_bitField0_ = bitField0_;
        if (topologyIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            topologyIds_ = java.util.Collections.unmodifiableList(topologyIds_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.topologyIds_ = topologyIds_;
          result.topologyIds_ = topologyIdsBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.TopologyIdList) {
          return mergeFrom((context.ContextOuterClass.TopologyIdList)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.TopologyIdList other) {
        if (other == context.ContextOuterClass.TopologyIdList.getDefaultInstance()) return this;
        if (topologyIdsBuilder_ == null) {
          if (!other.topologyIds_.isEmpty()) {
            if (topologyIds_.isEmpty()) {
              topologyIds_ = other.topologyIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureTopologyIdsIsMutable();
              topologyIds_.addAll(other.topologyIds_);
          if (!other.topologyIds_.isEmpty()) {
            if (topologyIdsBuilder_.isEmpty()) {
              topologyIdsBuilder_.dispose();
              topologyIdsBuilder_ = null;
              topologyIds_ = other.topologyIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
              topologyIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getTopologyIdsFieldBuilder() : null;
              topologyIdsBuilder_.addAllMessages(other.topologyIds_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.TopologyIdList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.TopologyIdList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_ =
        java.util.Collections.emptyList();
      private void ensureTopologyIdsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          topologyIds_ = new java.util.ArrayList<context.ContextOuterClass.TopologyId>(topologyIds_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdsBuilder_;
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() {
        if (topologyIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(topologyIds_);
          return topologyIdsBuilder_.getMessageList();
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public int getTopologyIdsCount() {
        if (topologyIdsBuilder_ == null) {
          return topologyIds_.size();
          return topologyIdsBuilder_.getCount();
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public context.ContextOuterClass.TopologyId getTopologyIds(int index) {
        if (topologyIdsBuilder_ == null) {
          return topologyIds_.get(index);
          return topologyIdsBuilder_.getMessage(index);
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public Builder setTopologyIds(
          int index, context.ContextOuterClass.TopologyId value) {
        if (topologyIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopologyIdsIsMutable();
          topologyIds_.set(index, value);
          onChanged();
        } else {
          topologyIdsBuilder_.setMessage(index, value);
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public Builder setTopologyIds(
          int index, context.ContextOuterClass.TopologyId.Builder builderForValue) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          topologyIds_.set(index, builderForValue.build());
          onChanged();
        } else {
          topologyIdsBuilder_.setMessage(index, builderForValue.build());
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public Builder addTopologyIds(context.ContextOuterClass.TopologyId value) {
        if (topologyIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopologyIdsIsMutable();
          topologyIds_.add(value);
          onChanged();
        } else {
          topologyIdsBuilder_.addMessage(value);
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public Builder addTopologyIds(
          int index, context.ContextOuterClass.TopologyId value) {
        if (topologyIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopologyIdsIsMutable();
          topologyIds_.add(index, value);
          onChanged();
        } else {
          topologyIdsBuilder_.addMessage(index, value);
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public Builder addTopologyIds(
          context.ContextOuterClass.TopologyId.Builder builderForValue) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          topologyIds_.add(builderForValue.build());
          onChanged();
        } else {
          topologyIdsBuilder_.addMessage(builderForValue.build());
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public Builder addTopologyIds(
          int index, context.ContextOuterClass.TopologyId.Builder builderForValue) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          topologyIds_.add(index, builderForValue.build());
          onChanged();
        } else {
          topologyIdsBuilder_.addMessage(index, builderForValue.build());
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public Builder addAllTopologyIds(
          java.lang.Iterable<? extends context.ContextOuterClass.TopologyId> values) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, topologyIds_);
          onChanged();
        } else {
          topologyIdsBuilder_.addAllMessages(values);
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public Builder clearTopologyIds() {
        if (topologyIdsBuilder_ == null) {
          topologyIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          topologyIdsBuilder_.clear();
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public Builder removeTopologyIds(int index) {
        if (topologyIdsBuilder_ == null) {
          ensureTopologyIdsIsMutable();
          topologyIds_.remove(index);
          onChanged();
        } else {
          topologyIdsBuilder_.remove(index);
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public context.ContextOuterClass.TopologyId.Builder getTopologyIdsBuilder(
          int index) {
        return getTopologyIdsFieldBuilder().getBuilder(index);
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder(
          int index) {
        if (topologyIdsBuilder_ == null) {
          return topologyIds_.get(index);  } else {
          return topologyIdsBuilder_.getMessageOrBuilder(index);
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> 
           getTopologyIdsOrBuilderList() {
        if (topologyIdsBuilder_ != null) {
          return topologyIdsBuilder_.getMessageOrBuilderList();
          return java.util.Collections.unmodifiableList(topologyIds_);
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder() {
        return getTopologyIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.TopologyId.getDefaultInstance());
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder(
          int index) {
        return getTopologyIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.TopologyId.getDefaultInstance());
       * <code>repeated .context.TopologyId topology_ids = 1;</code>
      public java.util.List<context.ContextOuterClass.TopologyId.Builder> 
           getTopologyIdsBuilderList() {
        return getTopologyIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> 
          getTopologyIdsFieldBuilder() {
        if (topologyIdsBuilder_ == null) {
          topologyIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>(
                  topologyIds_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          topologyIds_ = null;
        return topologyIdsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.TopologyIdList)
    // @@protoc_insertion_point(class_scope:context.TopologyIdList)
    private static final context.ContextOuterClass.TopologyIdList DEFAULT_INSTANCE;
      DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyIdList();
    public static context.ContextOuterClass.TopologyIdList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<TopologyIdList>
        PARSER = new com.google.protobuf.AbstractParser<TopologyIdList>() {
      @java.lang.Override
      public TopologyIdList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new TopologyIdList(input, extensionRegistry);
    public static com.google.protobuf.Parser<TopologyIdList> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<TopologyIdList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.TopologyIdList getDefaultInstanceForType() {
  public interface TopologyListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.TopologyList)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>repeated .context.Topology topologies = 1;</code>
    java.util.List<context.ContextOuterClass.Topology> 
        getTopologiesList();
     * <code>repeated .context.Topology topologies = 1;</code>
    context.ContextOuterClass.Topology getTopologies(int index);
     * <code>repeated .context.Topology topologies = 1;</code>
    int getTopologiesCount();
     * <code>repeated .context.Topology topologies = 1;</code>
    java.util.List<? extends context.ContextOuterClass.TopologyOrBuilder> 
        getTopologiesOrBuilderList();
     * <code>repeated .context.Topology topologies = 1;</code>
    context.ContextOuterClass.TopologyOrBuilder getTopologiesOrBuilder(
        int index);
   * Protobuf type {@code context.TopologyList}
  public static final class TopologyList extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.TopologyList)
      TopologyListOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopologyList.newBuilder() to construct.
    private TopologyList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private TopologyList() {
      topologies_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopologyList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopologyList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                topologies_ = new java.util.ArrayList<context.ContextOuterClass.Topology>();
                mutable_bitField0_ |= 0x00000001;
              topologies_.add(
                  input.readMessage(context.ContextOuterClass.Topology.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          topologies_ = java.util.Collections.unmodifiableList(topologies_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_TopologyList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_TopologyList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.TopologyList.class, context.ContextOuterClass.TopologyList.Builder.class);
    public static final int TOPOLOGIES_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.Topology> topologies_;
     * <code>repeated .context.Topology topologies = 1;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.Topology> getTopologiesList() {
      return topologies_;
     * <code>repeated .context.Topology topologies = 1;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.TopologyOrBuilder> 
        getTopologiesOrBuilderList() {
      return topologies_;
     * <code>repeated .context.Topology topologies = 1;</code>
     */
    @java.lang.Override
    public int getTopologiesCount() {
      return topologies_.size();
     * <code>repeated .context.Topology topologies = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.Topology getTopologies(int index) {
      return topologies_.get(index);
     * <code>repeated .context.Topology topologies = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyOrBuilder getTopologiesOrBuilder(
        int index) {
      return topologies_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < topologies_.size(); i++) {
        output.writeMessage(1, topologies_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < topologies_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, topologies_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.TopologyList)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.TopologyList other = (context.ContextOuterClass.TopologyList) obj;
      if (!getTopologiesList()
          .equals(other.getTopologiesList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getTopologiesCount() > 0) {
        hash = (37 * hash) + TOPOLOGIES_FIELD_NUMBER;
        hash = (53 * hash) + getTopologiesList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.TopologyList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.TopologyList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.TopologyList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.TopologyList)
        context.ContextOuterClass.TopologyListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_TopologyList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_TopologyList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.TopologyList.class, context.ContextOuterClass.TopologyList.Builder.class);
      // Construct using context.ContextOuterClass.TopologyList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getTopologiesFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (topologiesBuilder_ == null) {
          topologies_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          topologiesBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_TopologyList_descriptor;
      public context.ContextOuterClass.TopologyList getDefaultInstanceForType() {
        return context.ContextOuterClass.TopologyList.getDefaultInstance();
      public context.ContextOuterClass.TopologyList build() {
        context.ContextOuterClass.TopologyList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.TopologyList buildPartial() {
        context.ContextOuterClass.TopologyList result = new context.ContextOuterClass.TopologyList(this);
        int from_bitField0_ = bitField0_;
        if (topologiesBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            topologies_ = java.util.Collections.unmodifiableList(topologies_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.topologies_ = topologies_;
          result.topologies_ = topologiesBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.TopologyList) {
          return mergeFrom((context.ContextOuterClass.TopologyList)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.TopologyList other) {
        if (other == context.ContextOuterClass.TopologyList.getDefaultInstance()) return this;
        if (topologiesBuilder_ == null) {
          if (!other.topologies_.isEmpty()) {
            if (topologies_.isEmpty()) {
              topologies_ = other.topologies_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureTopologiesIsMutable();
              topologies_.addAll(other.topologies_);
            }
            onChanged();
          }
        } else {
          if (!other.topologies_.isEmpty()) {
            if (topologiesBuilder_.isEmpty()) {
              topologiesBuilder_.dispose();
              topologiesBuilder_ = null;
              topologies_ = other.topologies_;
              bitField0_ = (bitField0_ & ~0x00000001);
              topologiesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getTopologiesFieldBuilder() : null;
            } else {
              topologiesBuilder_.addAllMessages(other.topologies_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.TopologyList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.TopologyList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<context.ContextOuterClass.Topology> topologies_ =
        java.util.Collections.emptyList();
      private void ensureTopologiesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          topologies_ = new java.util.ArrayList<context.ContextOuterClass.Topology>(topologies_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Topology, context.ContextOuterClass.Topology.Builder, context.ContextOuterClass.TopologyOrBuilder> topologiesBuilder_;
       * <code>repeated .context.Topology topologies = 1;</code>
      public java.util.List<context.ContextOuterClass.Topology> getTopologiesList() {
        if (topologiesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(topologies_);
        } else {
          return topologiesBuilder_.getMessageList();
        }
       * <code>repeated .context.Topology topologies = 1;</code>
      public int getTopologiesCount() {
        if (topologiesBuilder_ == null) {
          return topologies_.size();
          return topologiesBuilder_.getCount();
       * <code>repeated .context.Topology topologies = 1;</code>
      public context.ContextOuterClass.Topology getTopologies(int index) {
        if (topologiesBuilder_ == null) {
          return topologies_.get(index);
        } else {
          return topologiesBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.Topology topologies = 1;</code>
       */
      public Builder setTopologies(
          int index, context.ContextOuterClass.Topology value) {
        if (topologiesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopologiesIsMutable();
          topologies_.set(index, value);
          onChanged();
        } else {
          topologiesBuilder_.setMessage(index, value);
       * <code>repeated .context.Topology topologies = 1;</code>
      public Builder setTopologies(
          int index, context.ContextOuterClass.Topology.Builder builderForValue) {
        if (topologiesBuilder_ == null) {
          ensureTopologiesIsMutable();
          topologies_.set(index, builderForValue.build());
          onChanged();
        } else {
          topologiesBuilder_.setMessage(index, builderForValue.build());
       * <code>repeated .context.Topology topologies = 1;</code>
      public Builder addTopologies(context.ContextOuterClass.Topology value) {
        if (topologiesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          ensureTopologiesIsMutable();
          topologies_.add(value);
          onChanged();
        } else {
          topologiesBuilder_.addMessage(value);
       * <code>repeated .context.Topology topologies = 1;</code>
      public Builder addTopologies(
          int index, context.ContextOuterClass.Topology value) {
        if (topologiesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopologiesIsMutable();
          topologies_.add(index, value);
          onChanged();
        } else {
          topologiesBuilder_.addMessage(index, value);
       * <code>repeated .context.Topology topologies = 1;</code>
      public Builder addTopologies(
          context.ContextOuterClass.Topology.Builder builderForValue) {
        if (topologiesBuilder_ == null) {
          ensureTopologiesIsMutable();
          topologies_.add(builderForValue.build());
          onChanged();
          topologiesBuilder_.addMessage(builderForValue.build());
        return this;
       * <code>repeated .context.Topology topologies = 1;</code>
      public Builder addTopologies(
          int index, context.ContextOuterClass.Topology.Builder builderForValue) {
        if (topologiesBuilder_ == null) {
          ensureTopologiesIsMutable();
          topologies_.add(index, builderForValue.build());
          onChanged();
        } else {
          topologiesBuilder_.addMessage(index, builderForValue.build());
        return this;
       * <code>repeated .context.Topology topologies = 1;</code>
      public Builder addAllTopologies(
          java.lang.Iterable<? extends context.ContextOuterClass.Topology> values) {
        if (topologiesBuilder_ == null) {
          ensureTopologiesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, topologies_);
          onChanged();
          topologiesBuilder_.addAllMessages(values);
        return this;
       * <code>repeated .context.Topology topologies = 1;</code>
      public Builder clearTopologies() {
        if (topologiesBuilder_ == null) {
          topologies_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          topologiesBuilder_.clear();
       * <code>repeated .context.Topology topologies = 1;</code>
      public Builder removeTopologies(int index) {
        if (topologiesBuilder_ == null) {
          ensureTopologiesIsMutable();
          topologies_.remove(index);
          onChanged();
        } else {
          topologiesBuilder_.remove(index);
       * <code>repeated .context.Topology topologies = 1;</code>
      public context.ContextOuterClass.Topology.Builder getTopologiesBuilder(
          int index) {
        return getTopologiesFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.Topology topologies = 1;</code>
       */
      public context.ContextOuterClass.TopologyOrBuilder getTopologiesOrBuilder(
          int index) {
        if (topologiesBuilder_ == null) {
          return topologies_.get(index);  } else {
          return topologiesBuilder_.getMessageOrBuilder(index);
       * <code>repeated .context.Topology topologies = 1;</code>
      public java.util.List<? extends context.ContextOuterClass.TopologyOrBuilder> 
           getTopologiesOrBuilderList() {
        if (topologiesBuilder_ != null) {
          return topologiesBuilder_.getMessageOrBuilderList();
          return java.util.Collections.unmodifiableList(topologies_);
       * <code>repeated .context.Topology topologies = 1;</code>
      public context.ContextOuterClass.Topology.Builder addTopologiesBuilder() {
        return getTopologiesFieldBuilder().addBuilder(
            context.ContextOuterClass.Topology.getDefaultInstance());
       * <code>repeated .context.Topology topologies = 1;</code>
      public context.ContextOuterClass.Topology.Builder addTopologiesBuilder(
          int index) {
        return getTopologiesFieldBuilder().addBuilder(
            index, context.ContextOuterClass.Topology.getDefaultInstance());
       * <code>repeated .context.Topology topologies = 1;</code>
      public java.util.List<context.ContextOuterClass.Topology.Builder> 
           getTopologiesBuilderList() {
        return getTopologiesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Topology, context.ContextOuterClass.Topology.Builder, context.ContextOuterClass.TopologyOrBuilder> 
          getTopologiesFieldBuilder() {
        if (topologiesBuilder_ == null) {
          topologiesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.Topology, context.ContextOuterClass.Topology.Builder, context.ContextOuterClass.TopologyOrBuilder>(
                  topologies_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          topologies_ = null;
        return topologiesBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.TopologyList)
    // @@protoc_insertion_point(class_scope:context.TopologyList)
    private static final context.ContextOuterClass.TopologyList DEFAULT_INSTANCE;
      DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyList();
    public static context.ContextOuterClass.TopologyList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<TopologyList>
        PARSER = new com.google.protobuf.AbstractParser<TopologyList>() {
      @java.lang.Override
      public TopologyList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new TopologyList(input, extensionRegistry);
    public static com.google.protobuf.Parser<TopologyList> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<TopologyList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.TopologyList getDefaultInstanceForType() {
  public interface TopologyEventOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.TopologyEvent)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
    boolean hasEvent();
     * <code>.context.Event event = 1;</code>
     * @return The event.
    context.ContextOuterClass.Event getEvent();
     * <code>.context.Event event = 1;</code>
    context.ContextOuterClass.EventOrBuilder getEventOrBuilder();

    /**
     * <code>.context.TopologyId topology_id = 2;</code>
     * @return Whether the topologyId field is set.
     */
    boolean hasTopologyId();
    /**
     * <code>.context.TopologyId topology_id = 2;</code>
     * @return The topologyId.
     */
    context.ContextOuterClass.TopologyId getTopologyId();
    /**
     * <code>.context.TopologyId topology_id = 2;</code>
     */
    context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder();
   * Protobuf type {@code context.TopologyEvent}
  public static final class TopologyEvent extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.TopologyEvent)
      TopologyEventOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopologyEvent.newBuilder() to construct.
    private TopologyEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private TopologyEvent() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopologyEvent();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopologyEvent(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.Event.Builder subBuilder = null;
              if (event_ != null) {
                subBuilder = event_.toBuilder();
              event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(event_);
                event_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              context.ContextOuterClass.TopologyId.Builder subBuilder = null;
              if (topologyId_ != null) {
                subBuilder = topologyId_.toBuilder();
              }
              topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(topologyId_);
                topologyId_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_TopologyEvent_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_TopologyEvent_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.TopologyEvent.class, context.ContextOuterClass.TopologyEvent.Builder.class);
    public static final int EVENT_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Event event_;
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
     */
    @java.lang.Override
    public boolean hasEvent() {
      return event_ != null;
     * <code>.context.Event event = 1;</code>
     * @return The event.
     */
    @java.lang.Override
    public context.ContextOuterClass.Event getEvent() {
      return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
     * <code>.context.Event event = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
      return getEvent();
    }

    public static final int TOPOLOGY_ID_FIELD_NUMBER = 2;
    private context.ContextOuterClass.TopologyId topologyId_;
    /**
     * <code>.context.TopologyId topology_id = 2;</code>
     * @return Whether the topologyId field is set.
     */
    @java.lang.Override
    public boolean hasTopologyId() {
      return topologyId_ != null;
    }
    /**
     * <code>.context.TopologyId topology_id = 2;</code>
     * @return The topologyId.
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyId getTopologyId() {
      return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_;
    }
    /**
     * <code>.context.TopologyId topology_id = 2;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() {
      return getTopologyId();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (event_ != null) {
        output.writeMessage(1, getEvent());
      }
      if (topologyId_ != null) {
        output.writeMessage(2, getTopologyId());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (event_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getEvent());
      }
      if (topologyId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getTopologyId());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.TopologyEvent)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.TopologyEvent other = (context.ContextOuterClass.TopologyEvent) obj;
      if (hasEvent() != other.hasEvent()) return false;
      if (hasEvent()) {
        if (!getEvent()
            .equals(other.getEvent())) return false;
      }
      if (hasTopologyId() != other.hasTopologyId()) return false;
      if (hasTopologyId()) {
        if (!getTopologyId()
            .equals(other.getTopologyId())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasEvent()) {
        hash = (37 * hash) + EVENT_FIELD_NUMBER;
        hash = (53 * hash) + getEvent().hashCode();
      }
      if (hasTopologyId()) {
        hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER;
        hash = (53 * hash) + getTopologyId().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.TopologyEvent parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyEvent parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyEvent parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyEvent parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyEvent parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.TopologyEvent parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyEvent parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyEvent parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyEvent parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyEvent parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.TopologyEvent parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.TopologyEvent parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.TopologyEvent prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.TopologyEvent}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.TopologyEvent)
        context.ContextOuterClass.TopologyEventOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_TopologyEvent_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_TopologyEvent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.TopologyEvent.class, context.ContextOuterClass.TopologyEvent.Builder.class);
      // Construct using context.ContextOuterClass.TopologyEvent.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (eventBuilder_ == null) {
          event_ = null;
          event_ = null;
          eventBuilder_ = null;
        }
        if (topologyIdBuilder_ == null) {
          topologyId_ = null;
        } else {
          topologyId_ = null;
          topologyIdBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_TopologyEvent_descriptor;
      public context.ContextOuterClass.TopologyEvent getDefaultInstanceForType() {
        return context.ContextOuterClass.TopologyEvent.getDefaultInstance();
      public context.ContextOuterClass.TopologyEvent build() {
        context.ContextOuterClass.TopologyEvent result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.TopologyEvent buildPartial() {
        context.ContextOuterClass.TopologyEvent result = new context.ContextOuterClass.TopologyEvent(this);
        if (eventBuilder_ == null) {
          result.event_ = event_;
          result.event_ = eventBuilder_.build();
        }
        if (topologyIdBuilder_ == null) {
          result.topologyId_ = topologyId_;
        } else {
          result.topologyId_ = topologyIdBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.TopologyEvent) {
          return mergeFrom((context.ContextOuterClass.TopologyEvent)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.TopologyEvent other) {
        if (other == context.ContextOuterClass.TopologyEvent.getDefaultInstance()) return this;
        if (other.hasEvent()) {
          mergeEvent(other.getEvent());
        }
        if (other.hasTopologyId()) {
          mergeTopologyId(other.getTopologyId());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.TopologyEvent parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.TopologyEvent) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private context.ContextOuterClass.Event event_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_;
       * <code>.context.Event event = 1;</code>
       * @return Whether the event field is set.
      public boolean hasEvent() {
        return eventBuilder_ != null || event_ != null;
       * <code>.context.Event event = 1;</code>
       * @return The event.
      public context.ContextOuterClass.Event getEvent() {
        if (eventBuilder_ == null) {
          return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
          return eventBuilder_.getMessage();
       * <code>.context.Event event = 1;</code>
      public Builder setEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          event_ = value;
          onChanged();
        } else {
          eventBuilder_.setMessage(value);
       * <code>.context.Event event = 1;</code>
      public Builder setEvent(
          context.ContextOuterClass.Event.Builder builderForValue) {
        if (eventBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
          eventBuilder_.setMessage(builderForValue.build());
       * <code>.context.Event event = 1;</code>
      public Builder mergeEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (event_ != null) {
            event_ =
              context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial();
            event_ = value;
          }
          onChanged();
        } else {
          eventBuilder_.mergeFrom(value);
       * <code>.context.Event event = 1;</code>
      public Builder clearEvent() {
        if (eventBuilder_ == null) {
          event_ = null;
          onChanged();
        } else {
          event_ = null;
          eventBuilder_ = null;
       * <code>.context.Event event = 1;</code>
      public context.ContextOuterClass.Event.Builder getEventBuilder() {
        return getEventFieldBuilder().getBuilder();
       * <code>.context.Event event = 1;</code>
      public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
        if (eventBuilder_ != null) {
          return eventBuilder_.getMessageOrBuilder();
          return event_ == null ?
              context.ContextOuterClass.Event.getDefaultInstance() : event_;
       * <code>.context.Event event = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> 
          getEventFieldBuilder() {
        if (eventBuilder_ == null) {
          eventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder>(
                  getEvent(),
                  getParentForChildren(),
                  isClean());
          event_ = null;
        return eventBuilder_;
      }

      private context.ContextOuterClass.TopologyId topologyId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_;
      /**
       * <code>.context.TopologyId topology_id = 2;</code>
       * @return Whether the topologyId field is set.
       */
      public boolean hasTopologyId() {
        return topologyIdBuilder_ != null || topologyId_ != null;
      }
      /**
       * <code>.context.TopologyId topology_id = 2;</code>
       * @return The topologyId.
       */
      public context.ContextOuterClass.TopologyId getTopologyId() {
        if (topologyIdBuilder_ == null) {
          return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_;
        } else {
          return topologyIdBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.TopologyId topology_id = 2;</code>
       */
      public Builder setTopologyId(context.ContextOuterClass.TopologyId value) {
        if (topologyIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          topologyId_ = value;
          onChanged();
        } else {
          topologyIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 2;</code>
       */
      public Builder setTopologyId(
          context.ContextOuterClass.TopologyId.Builder builderForValue) {
        if (topologyIdBuilder_ == null) {
          topologyId_ = builderForValue.build();
          onChanged();
        } else {
          topologyIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 2;</code>
       */
      public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) {
        if (topologyIdBuilder_ == null) {
          if (topologyId_ != null) {
            topologyId_ =
              context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial();
          } else {
            topologyId_ = value;
          }
          onChanged();
        } else {
          topologyIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 2;</code>
       */
      public Builder clearTopologyId() {
        if (topologyIdBuilder_ == null) {
          topologyId_ = null;
          onChanged();
        } else {
          topologyId_ = null;
          topologyIdBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.TopologyId topology_id = 2;</code>
       */
      public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() {
        
        onChanged();
        return getTopologyIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.TopologyId topology_id = 2;</code>
       */
      public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() {
        if (topologyIdBuilder_ != null) {
          return topologyIdBuilder_.getMessageOrBuilder();
        } else {
          return topologyId_ == null ?
              context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_;
        }
      }
      /**
       * <code>.context.TopologyId topology_id = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> 
          getTopologyIdFieldBuilder() {
        if (topologyIdBuilder_ == null) {
          topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>(
                  getTopologyId(),
                  getParentForChildren(),
                  isClean());
          topologyId_ = null;
        }
        return topologyIdBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.TopologyEvent)
    // @@protoc_insertion_point(class_scope:context.TopologyEvent)
    private static final context.ContextOuterClass.TopologyEvent DEFAULT_INSTANCE;
      DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyEvent();
    public static context.ContextOuterClass.TopologyEvent getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<TopologyEvent>
        PARSER = new com.google.protobuf.AbstractParser<TopologyEvent>() {
      @java.lang.Override
      public TopologyEvent parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new TopologyEvent(input, extensionRegistry);
    public static com.google.protobuf.Parser<TopologyEvent> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<TopologyEvent> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.TopologyEvent getDefaultInstanceForType() {
  public interface DeviceIdOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.DeviceId)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.Uuid device_uuid = 1;</code>
     * @return Whether the deviceUuid field is set.
    boolean hasDeviceUuid();
     * <code>.context.Uuid device_uuid = 1;</code>
     * @return The deviceUuid.
    context.ContextOuterClass.Uuid getDeviceUuid();
     * <code>.context.Uuid device_uuid = 1;</code>
    context.ContextOuterClass.UuidOrBuilder getDeviceUuidOrBuilder();
   * <pre>
   * ----- Device --------------------------------------------------------------------------------------------------------
   * </pre>
   *
   * Protobuf type {@code context.DeviceId}
  public static final class DeviceId extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.DeviceId)
      DeviceIdOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeviceId.newBuilder() to construct.
    private DeviceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private DeviceId() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new DeviceId();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeviceId(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.Uuid.Builder subBuilder = null;
              if (deviceUuid_ != null) {
                subBuilder = deviceUuid_.toBuilder();
              deviceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(deviceUuid_);
                deviceUuid_ = subBuilder.buildPartial();
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_DeviceId_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_DeviceId_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.DeviceId.class, context.ContextOuterClass.DeviceId.Builder.class);
    public static final int DEVICE_UUID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Uuid deviceUuid_;
     * <code>.context.Uuid device_uuid = 1;</code>
     * @return Whether the deviceUuid field is set.
     */
    @java.lang.Override
    public boolean hasDeviceUuid() {
      return deviceUuid_ != null;
     * <code>.context.Uuid device_uuid = 1;</code>
     * @return The deviceUuid.
     */
    @java.lang.Override
    public context.ContextOuterClass.Uuid getDeviceUuid() {
      return deviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : deviceUuid_;
     * <code>.context.Uuid device_uuid = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.UuidOrBuilder getDeviceUuidOrBuilder() {
      return getDeviceUuid();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (deviceUuid_ != null) {
        output.writeMessage(1, getDeviceUuid());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (deviceUuid_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getDeviceUuid());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.DeviceId)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.DeviceId other = (context.ContextOuterClass.DeviceId) obj;
      if (hasDeviceUuid() != other.hasDeviceUuid()) return false;
      if (hasDeviceUuid()) {
        if (!getDeviceUuid()
            .equals(other.getDeviceUuid())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasDeviceUuid()) {
        hash = (37 * hash) + DEVICE_UUID_FIELD_NUMBER;
        hash = (53 * hash) + getDeviceUuid().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.DeviceId parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceId parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceId parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceId parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceId parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceId parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceId parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceId parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceId parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceId parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceId parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceId parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.DeviceId prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     * ----- Device --------------------------------------------------------------------------------------------------------
     * </pre>
     *
     * Protobuf type {@code context.DeviceId}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.DeviceId)
        context.ContextOuterClass.DeviceIdOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_DeviceId_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_DeviceId_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.DeviceId.class, context.ContextOuterClass.DeviceId.Builder.class);
      // Construct using context.ContextOuterClass.DeviceId.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (deviceUuidBuilder_ == null) {
          deviceUuid_ = null;
          deviceUuid_ = null;
          deviceUuidBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_DeviceId_descriptor;
      public context.ContextOuterClass.DeviceId getDefaultInstanceForType() {
        return context.ContextOuterClass.DeviceId.getDefaultInstance();
      public context.ContextOuterClass.DeviceId build() {
        context.ContextOuterClass.DeviceId result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceId buildPartial() {
        context.ContextOuterClass.DeviceId result = new context.ContextOuterClass.DeviceId(this);
        if (deviceUuidBuilder_ == null) {
          result.deviceUuid_ = deviceUuid_;
          result.deviceUuid_ = deviceUuidBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.DeviceId) {
          return mergeFrom((context.ContextOuterClass.DeviceId)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.DeviceId other) {
        if (other == context.ContextOuterClass.DeviceId.getDefaultInstance()) return this;
        if (other.hasDeviceUuid()) {
          mergeDeviceUuid(other.getDeviceUuid());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.DeviceId parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.DeviceId) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private context.ContextOuterClass.Uuid deviceUuid_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> deviceUuidBuilder_;
       * <code>.context.Uuid device_uuid = 1;</code>
       * @return Whether the deviceUuid field is set.
      public boolean hasDeviceUuid() {
        return deviceUuidBuilder_ != null || deviceUuid_ != null;
       * <code>.context.Uuid device_uuid = 1;</code>
       * @return The deviceUuid.
      public context.ContextOuterClass.Uuid getDeviceUuid() {
        if (deviceUuidBuilder_ == null) {
          return deviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : deviceUuid_;
          return deviceUuidBuilder_.getMessage();
       * <code>.context.Uuid device_uuid = 1;</code>
      public Builder setDeviceUuid(context.ContextOuterClass.Uuid value) {
        if (deviceUuidBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          deviceUuid_ = value;
          onChanged();
        } else {
          deviceUuidBuilder_.setMessage(value);
       * <code>.context.Uuid device_uuid = 1;</code>
      public Builder setDeviceUuid(
          context.ContextOuterClass.Uuid.Builder builderForValue) {
        if (deviceUuidBuilder_ == null) {
          deviceUuid_ = builderForValue.build();
          onChanged();
        } else {
          deviceUuidBuilder_.setMessage(builderForValue.build());
       * <code>.context.Uuid device_uuid = 1;</code>
      public Builder mergeDeviceUuid(context.ContextOuterClass.Uuid value) {
        if (deviceUuidBuilder_ == null) {
          if (deviceUuid_ != null) {
            deviceUuid_ =
              context.ContextOuterClass.Uuid.newBuilder(deviceUuid_).mergeFrom(value).buildPartial();
            deviceUuid_ = value;
          }
          onChanged();
        } else {
          deviceUuidBuilder_.mergeFrom(value);
       * <code>.context.Uuid device_uuid = 1;</code>
      public Builder clearDeviceUuid() {
        if (deviceUuidBuilder_ == null) {
          deviceUuid_ = null;
          onChanged();
        } else {
          deviceUuid_ = null;
          deviceUuidBuilder_ = null;
       * <code>.context.Uuid device_uuid = 1;</code>
      public context.ContextOuterClass.Uuid.Builder getDeviceUuidBuilder() {
        return getDeviceUuidFieldBuilder().getBuilder();
       * <code>.context.Uuid device_uuid = 1;</code>
      public context.ContextOuterClass.UuidOrBuilder getDeviceUuidOrBuilder() {
        if (deviceUuidBuilder_ != null) {
          return deviceUuidBuilder_.getMessageOrBuilder();
          return deviceUuid_ == null ?
              context.ContextOuterClass.Uuid.getDefaultInstance() : deviceUuid_;
       * <code>.context.Uuid device_uuid = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> 
          getDeviceUuidFieldBuilder() {
        if (deviceUuidBuilder_ == null) {
          deviceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>(
                  getDeviceUuid(),
                  getParentForChildren(),
                  isClean());
          deviceUuid_ = null;
        return deviceUuidBuilder_;
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      // @@protoc_insertion_point(builder_scope:context.DeviceId)
    }
    // @@protoc_insertion_point(class_scope:context.DeviceId)
    private static final context.ContextOuterClass.DeviceId DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceId();
    }
    public static context.ContextOuterClass.DeviceId getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser<DeviceId>
        PARSER = new com.google.protobuf.AbstractParser<DeviceId>() {
      @java.lang.Override
      public DeviceId parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DeviceId(input, extensionRegistry);
    public static com.google.protobuf.Parser<DeviceId> parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser<DeviceId> getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public context.ContextOuterClass.DeviceId getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  public interface DeviceOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Device)
      com.google.protobuf.MessageOrBuilder {
    /**
     * <code>.context.DeviceId device_id = 1;</code>
     * @return Whether the deviceId field is set.
     */
    boolean hasDeviceId();
    /**
     * <code>.context.DeviceId device_id = 1;</code>
     * @return The deviceId.
     */
    context.ContextOuterClass.DeviceId getDeviceId();
    /**
     * <code>.context.DeviceId device_id = 1;</code>
     */
    context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder();
    /**
     * <code>string name = 2;</code>
     * @return The name.
     */
    java.lang.String getName();
    /**
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    com.google.protobuf.ByteString
        getNameBytes();
    /**
     * <code>string device_type = 3;</code>
     * @return The deviceType.
     */
    java.lang.String getDeviceType();
    /**
     * <code>string device_type = 3;</code>
     * @return The bytes for deviceType.
     */
    com.google.protobuf.ByteString
        getDeviceTypeBytes();
    /**
     * <code>.context.DeviceConfig device_config = 4;</code>
     * @return Whether the deviceConfig field is set.
     */
    boolean hasDeviceConfig();
    /**
     * <code>.context.DeviceConfig device_config = 4;</code>
     * @return The deviceConfig.
     */
    context.ContextOuterClass.DeviceConfig getDeviceConfig();
    /**
     * <code>.context.DeviceConfig device_config = 4;</code>
     */
    context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder();
    /**
     * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code>
     * @return The enum numeric value on the wire for deviceOperationalStatus.
     */
    int getDeviceOperationalStatusValue();
    /**
     * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code>
     * @return The deviceOperationalStatus.
     */
    context.ContextOuterClass.DeviceOperationalStatusEnum getDeviceOperationalStatus();
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @return A list containing the deviceDrivers.
     */
    java.util.List<context.ContextOuterClass.DeviceDriverEnum> getDeviceDriversList();
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @return The count of deviceDrivers.
     */
    int getDeviceDriversCount();
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @param index The index of the element to return.
     * @return The deviceDrivers at the given index.
     */
    context.ContextOuterClass.DeviceDriverEnum getDeviceDrivers(int index);
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @return A list containing the enum numeric values on the wire for deviceDrivers.
     */
    java.util.List<java.lang.Integer>
    getDeviceDriversValueList();
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @param index The index of the value to return.
     * @return The enum numeric value on the wire of deviceDrivers at the given index.
     */
    int getDeviceDriversValue(int index);
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    java.util.List<context.ContextOuterClass.EndPoint> 
        getDeviceEndpointsList();
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    context.ContextOuterClass.EndPoint getDeviceEndpoints(int index);
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    int getDeviceEndpointsCount();
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    java.util.List<? extends context.ContextOuterClass.EndPointOrBuilder> 
        getDeviceEndpointsOrBuilderList();
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    context.ContextOuterClass.EndPointOrBuilder getDeviceEndpointsOrBuilder(
        int index);
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
    java.util.List<context.ContextOuterClass.Component> 
famelis's avatar
famelis committed
        getComponentsList();
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.Component getComponents(int index);
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
    int getComponentsCount();
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
    java.util.List<? extends context.ContextOuterClass.ComponentOrBuilder> 
famelis's avatar
famelis committed
        getComponentsOrBuilderList();
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.ComponentOrBuilder getComponentsOrBuilder(
        int index);
famelis's avatar
famelis committed

    /**
     * <pre>
     * Identifier of node controlling the actual device
     * </pre>
     *
     * <code>.context.DeviceId controller_id = 9;</code>
     * @return Whether the controllerId field is set.
     */
    boolean hasControllerId();
    /**
     * <pre>
     * Identifier of node controlling the actual device
     * </pre>
     *
     * <code>.context.DeviceId controller_id = 9;</code>
     * @return The controllerId.
     */
    context.ContextOuterClass.DeviceId getControllerId();
    /**
     * <pre>
     * Identifier of node controlling the actual device
     * </pre>
     *
     * <code>.context.DeviceId controller_id = 9;</code>
     */
    context.ContextOuterClass.DeviceIdOrBuilder getControllerIdOrBuilder();
   * Protobuf type {@code context.Device}
  public static final class Device extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.Device)
      DeviceOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Device.newBuilder() to construct.
    private Device(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private Device() {
      name_ = "";
      deviceType_ = "";
      deviceOperationalStatus_ = 0;
      deviceDrivers_ = java.util.Collections.emptyList();
      deviceEndpoints_ = java.util.Collections.emptyList();
famelis's avatar
famelis committed
      components_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Device();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Device(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.DeviceId.Builder subBuilder = null;
              if (deviceId_ != null) {
                subBuilder = deviceId_.toBuilder();
              }
              deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(deviceId_);
                deviceId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();

              deviceType_ = s;
              break;
            }
            case 34: {
              context.ContextOuterClass.DeviceConfig.Builder subBuilder = null;
              if (deviceConfig_ != null) {
                subBuilder = deviceConfig_.toBuilder();
              }
              deviceConfig_ = input.readMessage(context.ContextOuterClass.DeviceConfig.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(deviceConfig_);
                deviceConfig_ = subBuilder.buildPartial();
              }

              break;
            }
            case 40: {
              int rawValue = input.readEnum();

              deviceOperationalStatus_ = rawValue;
              break;
            }
            case 48: {
              int rawValue = input.readEnum();
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                deviceDrivers_ = new java.util.ArrayList<java.lang.Integer>();
                mutable_bitField0_ |= 0x00000001;
              }
              deviceDrivers_.add(rawValue);
              break;
            }
            case 50: {
              int length = input.readRawVarint32();
              int oldLimit = input.pushLimit(length);
              while(input.getBytesUntilLimit() > 0) {
                int rawValue = input.readEnum();
                if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                  deviceDrivers_ = new java.util.ArrayList<java.lang.Integer>();
                  mutable_bitField0_ |= 0x00000001;
                }
                deviceDrivers_.add(rawValue);
              }
              input.popLimit(oldLimit);
              break;
            }
            case 58: {
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                deviceEndpoints_ = new java.util.ArrayList<context.ContextOuterClass.EndPoint>();
                mutable_bitField0_ |= 0x00000002;
              }
              deviceEndpoints_.add(
                  input.readMessage(context.ContextOuterClass.EndPoint.parser(), extensionRegistry));
              break;
            }
            case 66: {
              if (!((mutable_bitField0_ & 0x00000004) != 0)) {
famelis's avatar
famelis committed
                components_ = new java.util.ArrayList<context.ContextOuterClass.Component>();
                mutable_bitField0_ |= 0x00000004;
              }
famelis's avatar
famelis committed
              components_.add(
                  input.readMessage(context.ContextOuterClass.Component.parser(), extensionRegistry));
famelis's avatar
famelis committed
            case 74: {
              context.ContextOuterClass.DeviceId.Builder subBuilder = null;
              if (controllerId_ != null) {
                subBuilder = controllerId_.toBuilder();
              }
              controllerId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(controllerId_);
                controllerId_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          deviceDrivers_ = java.util.Collections.unmodifiableList(deviceDrivers_);
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          deviceEndpoints_ = java.util.Collections.unmodifiableList(deviceEndpoints_);
        }
        if (((mutable_bitField0_ & 0x00000004) != 0)) {
famelis's avatar
famelis committed
          components_ = java.util.Collections.unmodifiableList(components_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_Device_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_Device_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.Device.class, context.ContextOuterClass.Device.Builder.class);
    public static final int DEVICE_ID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.DeviceId deviceId_;
     * <code>.context.DeviceId device_id = 1;</code>
     * @return Whether the deviceId field is set.
     */
    @java.lang.Override
    public boolean hasDeviceId() {
      return deviceId_ != null;
     * <code>.context.DeviceId device_id = 1;</code>
     * @return The deviceId.
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceId getDeviceId() {
      return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_;
     * <code>.context.DeviceId device_id = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() {
      return getDeviceId();

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
     * <code>string name = 2;</code>
     * @return The name.
     */
    @java.lang.Override
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int DEVICE_TYPE_FIELD_NUMBER = 3;
    private volatile java.lang.Object deviceType_;
    /**
     * <code>string device_type = 3;</code>
     * @return The deviceType.
     */
    @java.lang.Override
    public java.lang.String getDeviceType() {
      java.lang.Object ref = deviceType_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        deviceType_ = s;
        return s;
      }
    }
    /**
     * <code>string device_type = 3;</code>
     * @return The bytes for deviceType.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getDeviceTypeBytes() {
      java.lang.Object ref = deviceType_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        deviceType_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int DEVICE_CONFIG_FIELD_NUMBER = 4;
    private context.ContextOuterClass.DeviceConfig deviceConfig_;
    /**
     * <code>.context.DeviceConfig device_config = 4;</code>
     * @return Whether the deviceConfig field is set.
     */
    @java.lang.Override
    public boolean hasDeviceConfig() {
      return deviceConfig_ != null;
    }
    /**
     * <code>.context.DeviceConfig device_config = 4;</code>
     * @return The deviceConfig.
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceConfig getDeviceConfig() {
      return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_;
    }
    /**
     * <code>.context.DeviceConfig device_config = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() {
      return getDeviceConfig();
    }

    public static final int DEVICE_OPERATIONAL_STATUS_FIELD_NUMBER = 5;
    private int deviceOperationalStatus_;
    /**
     * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code>
     * @return The enum numeric value on the wire for deviceOperationalStatus.
     */
    @java.lang.Override public int getDeviceOperationalStatusValue() {
      return deviceOperationalStatus_;
    }
    /**
     * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code>
     * @return The deviceOperationalStatus.
     */
    @java.lang.Override public context.ContextOuterClass.DeviceOperationalStatusEnum getDeviceOperationalStatus() {
      @SuppressWarnings("deprecation")
      context.ContextOuterClass.DeviceOperationalStatusEnum result = context.ContextOuterClass.DeviceOperationalStatusEnum.valueOf(deviceOperationalStatus_);
      return result == null ? context.ContextOuterClass.DeviceOperationalStatusEnum.UNRECOGNIZED : result;
    }

    public static final int DEVICE_DRIVERS_FIELD_NUMBER = 6;
    private java.util.List<java.lang.Integer> deviceDrivers_;
    private static final com.google.protobuf.Internal.ListAdapter.Converter<
        java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum> deviceDrivers_converter_ =
            new com.google.protobuf.Internal.ListAdapter.Converter<
                java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum>() {
              public context.ContextOuterClass.DeviceDriverEnum convert(java.lang.Integer from) {
                @SuppressWarnings("deprecation")
                context.ContextOuterClass.DeviceDriverEnum result = context.ContextOuterClass.DeviceDriverEnum.valueOf(from);
                return result == null ? context.ContextOuterClass.DeviceDriverEnum.UNRECOGNIZED : result;
              }
            };
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @return A list containing the deviceDrivers.
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.DeviceDriverEnum> getDeviceDriversList() {
      return new com.google.protobuf.Internal.ListAdapter<
          java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum>(deviceDrivers_, deviceDrivers_converter_);
    }
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @return The count of deviceDrivers.
     */
    @java.lang.Override
    public int getDeviceDriversCount() {
      return deviceDrivers_.size();
    }
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @param index The index of the element to return.
     * @return The deviceDrivers at the given index.
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceDriverEnum getDeviceDrivers(int index) {
      return deviceDrivers_converter_.convert(deviceDrivers_.get(index));
    }
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @return A list containing the enum numeric values on the wire for deviceDrivers.
     */
    @java.lang.Override
    public java.util.List<java.lang.Integer>
    getDeviceDriversValueList() {
      return deviceDrivers_;
    }
    /**
     * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
     * @param index The index of the value to return.
     * @return The enum numeric value on the wire of deviceDrivers at the given index.
     */
    @java.lang.Override
    public int getDeviceDriversValue(int index) {
      return deviceDrivers_.get(index);
    }
    private int deviceDriversMemoizedSerializedSize;

    public static final int DEVICE_ENDPOINTS_FIELD_NUMBER = 7;
    private java.util.List<context.ContextOuterClass.EndPoint> deviceEndpoints_;
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.EndPoint> getDeviceEndpointsList() {
      return deviceEndpoints_;
    }
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.EndPointOrBuilder> 
        getDeviceEndpointsOrBuilderList() {
      return deviceEndpoints_;
    }
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    @java.lang.Override
    public int getDeviceEndpointsCount() {
      return deviceEndpoints_.size();
    }
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EndPoint getDeviceEndpoints(int index) {
      return deviceEndpoints_.get(index);
    }
    /**
     * <code>repeated .context.EndPoint device_endpoints = 7;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EndPointOrBuilder getDeviceEndpointsOrBuilder(
        int index) {
      return deviceEndpoints_.get(index);
    }

famelis's avatar
famelis committed
    public static final int COMPONENTS_FIELD_NUMBER = 8;
    private java.util.List<context.ContextOuterClass.Component> components_;
    /**
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<context.ContextOuterClass.Component> getComponentsList() {
      return components_;
    }
    /**
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.ComponentOrBuilder> 
famelis's avatar
famelis committed
        getComponentsOrBuilderList() {
      return components_;
    }
    /**
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public int getComponentsCount() {
      return components_.size();
    }
    /**
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.Component getComponents(int index) {
      return components_.get(index);
    }
    /**
     * <pre>
     * Used for inventory
     * </pre>
     *
famelis's avatar
famelis committed
     * <code>repeated .context.Component components = 8;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ComponentOrBuilder getComponentsOrBuilder(
        int index) {
famelis's avatar
famelis committed
      return components_.get(index);
famelis's avatar
famelis committed
    public static final int CONTROLLER_ID_FIELD_NUMBER = 9;
    private context.ContextOuterClass.DeviceId controllerId_;
    /**
     * <pre>
     * Identifier of node controlling the actual device
     * </pre>
     *
     * <code>.context.DeviceId controller_id = 9;</code>
     * @return Whether the controllerId field is set.
     */
    @java.lang.Override
    public boolean hasControllerId() {
      return controllerId_ != null;
    }
    /**
     * <pre>
     * Identifier of node controlling the actual device
     * </pre>
     *
     * <code>.context.DeviceId controller_id = 9;</code>
     * @return The controllerId.
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceId getControllerId() {
      return controllerId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : controllerId_;
    }
    /**
     * <pre>
     * Identifier of node controlling the actual device
     * </pre>
     *
     * <code>.context.DeviceId controller_id = 9;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceIdOrBuilder getControllerIdOrBuilder() {
      return getControllerId();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (deviceId_ != null) {
        output.writeMessage(1, getDeviceId());
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      if (!getDeviceTypeBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, deviceType_);
      }
      if (deviceConfig_ != null) {
        output.writeMessage(4, getDeviceConfig());
      }
      if (deviceOperationalStatus_ != context.ContextOuterClass.DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_UNDEFINED.getNumber()) {
        output.writeEnum(5, deviceOperationalStatus_);
      }
      if (getDeviceDriversList().size() > 0) {
        output.writeUInt32NoTag(50);
        output.writeUInt32NoTag(deviceDriversMemoizedSerializedSize);
      }
      for (int i = 0; i < deviceDrivers_.size(); i++) {
        output.writeEnumNoTag(deviceDrivers_.get(i));
      }
      for (int i = 0; i < deviceEndpoints_.size(); i++) {
        output.writeMessage(7, deviceEndpoints_.get(i));
      }
famelis's avatar
famelis committed
      for (int i = 0; i < components_.size(); i++) {
        output.writeMessage(8, components_.get(i));
famelis's avatar
famelis committed
      if (controllerId_ != null) {
        output.writeMessage(9, getControllerId());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (deviceId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getDeviceId());
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      if (!getDeviceTypeBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, deviceType_);
      }
      if (deviceConfig_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, getDeviceConfig());
      }
      if (deviceOperationalStatus_ != context.ContextOuterClass.DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_UNDEFINED.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(5, deviceOperationalStatus_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < deviceDrivers_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeEnumSizeNoTag(deviceDrivers_.get(i));
        }
        size += dataSize;
        if (!getDeviceDriversList().isEmpty()) {  size += 1;
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32SizeNoTag(dataSize);
        }deviceDriversMemoizedSerializedSize = dataSize;
      }
      for (int i = 0; i < deviceEndpoints_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(7, deviceEndpoints_.get(i));
      }
famelis's avatar
famelis committed
      for (int i = 0; i < components_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(8, components_.get(i));
famelis's avatar
famelis committed
      if (controllerId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(9, getControllerId());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.Device)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.Device other = (context.ContextOuterClass.Device) obj;
      if (hasDeviceId() != other.hasDeviceId()) return false;
      if (hasDeviceId()) {
        if (!getDeviceId()
            .equals(other.getDeviceId())) return false;
      }
      if (!getName()
          .equals(other.getName())) return false;
      if (!getDeviceType()
          .equals(other.getDeviceType())) return false;
      if (hasDeviceConfig() != other.hasDeviceConfig()) return false;
      if (hasDeviceConfig()) {
        if (!getDeviceConfig()
            .equals(other.getDeviceConfig())) return false;
      }
      if (deviceOperationalStatus_ != other.deviceOperationalStatus_) return false;
      if (!deviceDrivers_.equals(other.deviceDrivers_)) return false;
      if (!getDeviceEndpointsList()
          .equals(other.getDeviceEndpointsList())) return false;
famelis's avatar
famelis committed
      if (!getComponentsList()
          .equals(other.getComponentsList())) return false;
famelis's avatar
famelis committed
      if (hasControllerId() != other.hasControllerId()) return false;
      if (hasControllerId()) {
        if (!getControllerId()
            .equals(other.getControllerId())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasDeviceId()) {
        hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER;
        hash = (53 * hash) + getDeviceId().hashCode();
      }
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      hash = (37 * hash) + DEVICE_TYPE_FIELD_NUMBER;
      hash = (53 * hash) + getDeviceType().hashCode();
      if (hasDeviceConfig()) {
        hash = (37 * hash) + DEVICE_CONFIG_FIELD_NUMBER;
        hash = (53 * hash) + getDeviceConfig().hashCode();
      }
      hash = (37 * hash) + DEVICE_OPERATIONAL_STATUS_FIELD_NUMBER;
      hash = (53 * hash) + deviceOperationalStatus_;
      if (getDeviceDriversCount() > 0) {
        hash = (37 * hash) + DEVICE_DRIVERS_FIELD_NUMBER;
        hash = (53 * hash) + deviceDrivers_.hashCode();
      }
      if (getDeviceEndpointsCount() > 0) {
        hash = (37 * hash) + DEVICE_ENDPOINTS_FIELD_NUMBER;
        hash = (53 * hash) + getDeviceEndpointsList().hashCode();
      }
famelis's avatar
famelis committed
      if (getComponentsCount() > 0) {
        hash = (37 * hash) + COMPONENTS_FIELD_NUMBER;
        hash = (53 * hash) + getComponentsList().hashCode();
famelis's avatar
famelis committed
      if (hasControllerId()) {
        hash = (37 * hash) + CONTROLLER_ID_FIELD_NUMBER;
        hash = (53 * hash) + getControllerId().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.Device parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Device parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Device parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Device parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Device parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Device parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Device parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Device parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Device parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Device parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Device parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Device parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.Device prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.Device}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.Device)
        context.ContextOuterClass.DeviceOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_Device_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_Device_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.Device.class, context.ContextOuterClass.Device.Builder.class);
      // Construct using context.ContextOuterClass.Device.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getDeviceEndpointsFieldBuilder();
famelis's avatar
famelis committed
          getComponentsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (deviceIdBuilder_ == null) {
          deviceId_ = null;
          deviceId_ = null;
          deviceIdBuilder_ = null;
        }
        name_ = "";

        deviceType_ = "";

        if (deviceConfigBuilder_ == null) {
          deviceConfig_ = null;
        } else {
          deviceConfig_ = null;
          deviceConfigBuilder_ = null;
        }
        deviceOperationalStatus_ = 0;

        deviceDrivers_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        if (deviceEndpointsBuilder_ == null) {
          deviceEndpoints_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          deviceEndpointsBuilder_.clear();
        }
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          components_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.clear();
famelis's avatar
famelis committed
        if (controllerIdBuilder_ == null) {
          controllerId_ = null;
        } else {
          controllerId_ = null;
          controllerIdBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_Device_descriptor;
      public context.ContextOuterClass.Device getDefaultInstanceForType() {
        return context.ContextOuterClass.Device.getDefaultInstance();
      public context.ContextOuterClass.Device build() {
        context.ContextOuterClass.Device result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.Device buildPartial() {
        context.ContextOuterClass.Device result = new context.ContextOuterClass.Device(this);
        int from_bitField0_ = bitField0_;
        if (deviceIdBuilder_ == null) {
          result.deviceId_ = deviceId_;
        } else {
          result.deviceId_ = deviceIdBuilder_.build();
        }
        result.name_ = name_;
        result.deviceType_ = deviceType_;
        if (deviceConfigBuilder_ == null) {
          result.deviceConfig_ = deviceConfig_;
        } else {
          result.deviceConfig_ = deviceConfigBuilder_.build();
        }
        result.deviceOperationalStatus_ = deviceOperationalStatus_;
        if (((bitField0_ & 0x00000001) != 0)) {
          deviceDrivers_ = java.util.Collections.unmodifiableList(deviceDrivers_);
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.deviceDrivers_ = deviceDrivers_;
        if (deviceEndpointsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) != 0)) {
            deviceEndpoints_ = java.util.Collections.unmodifiableList(deviceEndpoints_);
            bitField0_ = (bitField0_ & ~0x00000002);
          result.deviceEndpoints_ = deviceEndpoints_;
          result.deviceEndpoints_ = deviceEndpointsBuilder_.build();
        }
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          if (((bitField0_ & 0x00000004) != 0)) {
famelis's avatar
famelis committed
            components_ = java.util.Collections.unmodifiableList(components_);
            bitField0_ = (bitField0_ & ~0x00000004);
          }
famelis's avatar
famelis committed
          result.components_ = components_;
famelis's avatar
famelis committed
          result.components_ = componentsBuilder_.build();
famelis's avatar
famelis committed
        if (controllerIdBuilder_ == null) {
          result.controllerId_ = controllerId_;
        } else {
          result.controllerId_ = controllerIdBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.Device) {
          return mergeFrom((context.ContextOuterClass.Device)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.Device other) {
        if (other == context.ContextOuterClass.Device.getDefaultInstance()) return this;
        if (other.hasDeviceId()) {
          mergeDeviceId(other.getDeviceId());
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (!other.getDeviceType().isEmpty()) {
          deviceType_ = other.deviceType_;
          onChanged();
        }
        if (other.hasDeviceConfig()) {
          mergeDeviceConfig(other.getDeviceConfig());
        }
        if (other.deviceOperationalStatus_ != 0) {
          setDeviceOperationalStatusValue(other.getDeviceOperationalStatusValue());
        }
        if (!other.deviceDrivers_.isEmpty()) {
          if (deviceDrivers_.isEmpty()) {
            deviceDrivers_ = other.deviceDrivers_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureDeviceDriversIsMutable();
            deviceDrivers_.addAll(other.deviceDrivers_);
          }
          onChanged();
        }
        if (deviceEndpointsBuilder_ == null) {
          if (!other.deviceEndpoints_.isEmpty()) {
            if (deviceEndpoints_.isEmpty()) {
              deviceEndpoints_ = other.deviceEndpoints_;
              bitField0_ = (bitField0_ & ~0x00000002);
              ensureDeviceEndpointsIsMutable();
              deviceEndpoints_.addAll(other.deviceEndpoints_);
          if (!other.deviceEndpoints_.isEmpty()) {
            if (deviceEndpointsBuilder_.isEmpty()) {
              deviceEndpointsBuilder_.dispose();
              deviceEndpointsBuilder_ = null;
              deviceEndpoints_ = other.deviceEndpoints_;
              bitField0_ = (bitField0_ & ~0x00000002);
              deviceEndpointsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getDeviceEndpointsFieldBuilder() : null;
              deviceEndpointsBuilder_.addAllMessages(other.deviceEndpoints_);
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          if (!other.components_.isEmpty()) {
            if (components_.isEmpty()) {
              components_ = other.components_;
              bitField0_ = (bitField0_ & ~0x00000004);
            } else {
famelis's avatar
famelis committed
              ensureComponentsIsMutable();
              components_.addAll(other.components_);
famelis's avatar
famelis committed
          if (!other.components_.isEmpty()) {
            if (componentsBuilder_.isEmpty()) {
              componentsBuilder_.dispose();
              componentsBuilder_ = null;
              components_ = other.components_;
              bitField0_ = (bitField0_ & ~0x00000004);
famelis's avatar
famelis committed
              componentsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
famelis's avatar
famelis committed
                   getComponentsFieldBuilder() : null;
famelis's avatar
famelis committed
              componentsBuilder_.addAllMessages(other.components_);
famelis's avatar
famelis committed
        if (other.hasControllerId()) {
          mergeControllerId(other.getControllerId());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.Device parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.Device) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private context.ContextOuterClass.DeviceId deviceId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_;
      /**
       * <code>.context.DeviceId device_id = 1;</code>
       * @return Whether the deviceId field is set.
       */
      public boolean hasDeviceId() {
        return deviceIdBuilder_ != null || deviceId_ != null;
       * <code>.context.DeviceId device_id = 1;</code>
       * @return The deviceId.
      public context.ContextOuterClass.DeviceId getDeviceId() {
        if (deviceIdBuilder_ == null) {
          return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_;
          return deviceIdBuilder_.getMessage();
       * <code>.context.DeviceId device_id = 1;</code>
      public Builder setDeviceId(context.ContextOuterClass.DeviceId value) {
        if (deviceIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          deviceId_ = value;
          onChanged();
          deviceIdBuilder_.setMessage(value);
       * <code>.context.DeviceId device_id = 1;</code>
      public Builder setDeviceId(
          context.ContextOuterClass.DeviceId.Builder builderForValue) {
        if (deviceIdBuilder_ == null) {
          deviceId_ = builderForValue.build();
          onChanged();
          deviceIdBuilder_.setMessage(builderForValue.build());
       * <code>.context.DeviceId device_id = 1;</code>
      public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) {
        if (deviceIdBuilder_ == null) {
          if (deviceId_ != null) {
            deviceId_ =
              context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial();
          } else {
            deviceId_ = value;
          }
          onChanged();
        } else {
          deviceIdBuilder_.mergeFrom(value);
       * <code>.context.DeviceId device_id = 1;</code>
      public Builder clearDeviceId() {
        if (deviceIdBuilder_ == null) {
          deviceId_ = null;
          onChanged();
        } else {
          deviceId_ = null;
          deviceIdBuilder_ = null;
       * <code>.context.DeviceId device_id = 1;</code>
      public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() {
        
        onChanged();
        return getDeviceIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.DeviceId device_id = 1;</code>
       */
      public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() {
        if (deviceIdBuilder_ != null) {
          return deviceIdBuilder_.getMessageOrBuilder();
          return deviceId_ == null ?
              context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_;
       * <code>.context.DeviceId device_id = 1;</code>
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> 
          getDeviceIdFieldBuilder() {
        if (deviceIdBuilder_ == null) {
          deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>(
                  getDeviceId(),
                  getParentForChildren(),
                  isClean());
          deviceId_ = null;
        }
        return deviceIdBuilder_;
      }

      private java.lang.Object name_ = "";
      /**
       * <code>string name = 2;</code>
       * @return The name.
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @return The bytes for name.
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
      }
      /**
       * <code>string name = 2;</code>
       * @param value The name to set.
       * @return This builder for chaining.
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
       * <code>string name = 2;</code>
       * @return This builder for chaining.
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @param value The bytes for name to set.
       * @return This builder for chaining.
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object deviceType_ = "";
      /**
       * <code>string device_type = 3;</code>
       * @return The deviceType.
       */
      public java.lang.String getDeviceType() {
        java.lang.Object ref = deviceType_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          deviceType_ = s;
          return s;
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string device_type = 3;</code>
       * @return The bytes for deviceType.
       */
      public com.google.protobuf.ByteString
          getDeviceTypeBytes() {
        java.lang.Object ref = deviceType_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          deviceType_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
      }
      /**
       * <code>string device_type = 3;</code>
       * @param value The deviceType to set.
       * @return This builder for chaining.
       */
      public Builder setDeviceType(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        deviceType_ = value;
        onChanged();
       * <code>string device_type = 3;</code>
       * @return This builder for chaining.
      public Builder clearDeviceType() {
        
        deviceType_ = getDefaultInstance().getDeviceType();
        onChanged();
        return this;
      }
      /**
       * <code>string device_type = 3;</code>
       * @param value The bytes for deviceType to set.
       * @return This builder for chaining.
       */
      public Builder setDeviceTypeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        deviceType_ = value;
        onChanged();
        return this;
      }

      private context.ContextOuterClass.DeviceConfig deviceConfig_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> deviceConfigBuilder_;
      /**
       * <code>.context.DeviceConfig device_config = 4;</code>
       * @return Whether the deviceConfig field is set.
       */
      public boolean hasDeviceConfig() {
        return deviceConfigBuilder_ != null || deviceConfig_ != null;
      }
      /**
       * <code>.context.DeviceConfig device_config = 4;</code>
       * @return The deviceConfig.
       */
      public context.ContextOuterClass.DeviceConfig getDeviceConfig() {
        if (deviceConfigBuilder_ == null) {
          return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_;
        } else {
          return deviceConfigBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.DeviceConfig device_config = 4;</code>
       */
      public Builder setDeviceConfig(context.ContextOuterClass.DeviceConfig value) {
        if (deviceConfigBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          deviceConfig_ = value;
          onChanged();
        } else {
          deviceConfigBuilder_.setMessage(value);
       * <code>.context.DeviceConfig device_config = 4;</code>
      public Builder setDeviceConfig(
          context.ContextOuterClass.DeviceConfig.Builder builderForValue) {
        if (deviceConfigBuilder_ == null) {
          deviceConfig_ = builderForValue.build();
          onChanged();
        } else {
          deviceConfigBuilder_.setMessage(builderForValue.build());
       * <code>.context.DeviceConfig device_config = 4;</code>
      public Builder mergeDeviceConfig(context.ContextOuterClass.DeviceConfig value) {
        if (deviceConfigBuilder_ == null) {
          if (deviceConfig_ != null) {
            deviceConfig_ =
              context.ContextOuterClass.DeviceConfig.newBuilder(deviceConfig_).mergeFrom(value).buildPartial();
          } else {
            deviceConfig_ = value;
          }
          onChanged();
        } else {
          deviceConfigBuilder_.mergeFrom(value);
       * <code>.context.DeviceConfig device_config = 4;</code>
      public Builder clearDeviceConfig() {
        if (deviceConfigBuilder_ == null) {
          deviceConfig_ = null;
          onChanged();
        } else {
          deviceConfig_ = null;
          deviceConfigBuilder_ = null;
       * <code>.context.DeviceConfig device_config = 4;</code>
      public context.ContextOuterClass.DeviceConfig.Builder getDeviceConfigBuilder() {
        
        onChanged();
        return getDeviceConfigFieldBuilder().getBuilder();
       * <code>.context.DeviceConfig device_config = 4;</code>
      public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() {
        if (deviceConfigBuilder_ != null) {
          return deviceConfigBuilder_.getMessageOrBuilder();
        } else {
          return deviceConfig_ == null ?
              context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_;
       * <code>.context.DeviceConfig device_config = 4;</code>
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> 
          getDeviceConfigFieldBuilder() {
        if (deviceConfigBuilder_ == null) {
          deviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder>(
                  getDeviceConfig(),
                  getParentForChildren(),
                  isClean());
          deviceConfig_ = null;
        return deviceConfigBuilder_;

      private int deviceOperationalStatus_ = 0;
       * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code>
       * @return The enum numeric value on the wire for deviceOperationalStatus.
      @java.lang.Override public int getDeviceOperationalStatusValue() {
        return deviceOperationalStatus_;
       * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code>
       * @param value The enum numeric value on the wire for deviceOperationalStatus to set.
       * @return This builder for chaining.
      public Builder setDeviceOperationalStatusValue(int value) {
        
        deviceOperationalStatus_ = value;
        onChanged();
        return this;
       * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code>
       * @return The deviceOperationalStatus.
      @java.lang.Override
      public context.ContextOuterClass.DeviceOperationalStatusEnum getDeviceOperationalStatus() {
        @SuppressWarnings("deprecation")
        context.ContextOuterClass.DeviceOperationalStatusEnum result = context.ContextOuterClass.DeviceOperationalStatusEnum.valueOf(deviceOperationalStatus_);
        return result == null ? context.ContextOuterClass.DeviceOperationalStatusEnum.UNRECOGNIZED : result;
      /**
       * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code>
       * @param value The deviceOperationalStatus to set.
       * @return This builder for chaining.
       */
      public Builder setDeviceOperationalStatus(context.ContextOuterClass.DeviceOperationalStatusEnum value) {
        if (value == null) {
          throw new NullPointerException();
        
        deviceOperationalStatus_ = value.getNumber();
        onChanged();
        return this;
      /**
       * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearDeviceOperationalStatus() {
        
        deviceOperationalStatus_ = 0;
        onChanged();
        return this;
      private java.util.List<java.lang.Integer> deviceDrivers_ =
        java.util.Collections.emptyList();
      private void ensureDeviceDriversIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          deviceDrivers_ = new java.util.ArrayList<java.lang.Integer>(deviceDrivers_);
          bitField0_ |= 0x00000001;
        }
17311 17312 17313 17314 17315 17316 17317 17318 17319 17320 17321 17322 17323 17324 17325 17326 17327 17328 17329 17330 17331 17332 17333 17334 17335 17336 17337 17338 17339 17340 17341 17342 17343 17344 17345 17346 17347 17348 17349 17350 17351 17352 17353 17354 17355 17356 17357 17358 17359 17360 17361 17362 17363 17364 17365 17366 17367 17368 17369 17370 17371 17372 17373 17374 17375 17376 17377 17378 17379 17380 17381 17382 17383 17384 17385 17386 17387 17388 17389 17390 17391 17392 17393 17394 17395 17396 17397 17398 17399 17400 17401 17402 17403 17404 17405 17406 17407 17408 17409 17410 17411 17412 17413 17414 17415 17416 17417 17418 17419 17420 17421 17422 17423 17424 17425 17426 17427 17428 17429 17430 17431 17432 17433 17434 17435 17436 17437 17438 17439 17440 17441 17442 17443 17444 17445 17446 17447 17448 17449 17450 17451 17452 17453 17454 17455 17456 17457 17458 17459 17460 17461 17462 17463 17464 17465 17466 17467 17468 17469 17470 17471 17472 17473 17474 17475 17476 17477 17478 17479 17480 17481 17482 17483 17484 17485 17486 17487 17488 17489 17490 17491 17492 17493 17494 17495 17496 17497 17498 17499 17500 17501 17502 17503 17504 17505 17506 17507 17508 17509 17510 17511 17512 17513 17514 17515 17516 17517 17518 17519 17520 17521 17522 17523 17524 17525 17526 17527 17528 17529 17530 17531 17532 17533 17534 17535 17536 17537 17538 17539 17540 17541 17542 17543 17544 17545 17546 17547 17548 17549 17550 17551 17552 17553 17554 17555 17556 17557 17558 17559 17560 17561 17562 17563 17564 17565 17566 17567 17568 17569 17570 17571 17572 17573 17574 17575 17576 17577 17578 17579 17580 17581 17582 17583 17584 17585 17586 17587 17588 17589 17590 17591 17592 17593 17594 17595 17596 17597 17598 17599 17600 17601 17602 17603 17604 17605 17606 17607 17608 17609 17610 17611 17612 17613 17614 17615 17616 17617 17618 17619 17620 17621 17622 17623 17624 17625 17626 17627 17628 17629 17630 17631 17632 17633 17634 17635 17636 17637 17638 17639 17640 17641 17642 17643 17644 17645 17646 17647 17648 17649 17650 17651 17652 17653 17654 17655 17656 17657 17658 17659 17660 17661 17662 17663 17664 17665 17666 17667 17668 17669 17670 17671 17672 17673 17674 17675 17676 17677 17678 17679 17680 17681 17682
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @return A list containing the deviceDrivers.
       */
      public java.util.List<context.ContextOuterClass.DeviceDriverEnum> getDeviceDriversList() {
        return new com.google.protobuf.Internal.ListAdapter<
            java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum>(deviceDrivers_, deviceDrivers_converter_);
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @return The count of deviceDrivers.
       */
      public int getDeviceDriversCount() {
        return deviceDrivers_.size();
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @param index The index of the element to return.
       * @return The deviceDrivers at the given index.
       */
      public context.ContextOuterClass.DeviceDriverEnum getDeviceDrivers(int index) {
        return deviceDrivers_converter_.convert(deviceDrivers_.get(index));
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @param index The index to set the value at.
       * @param value The deviceDrivers to set.
       * @return This builder for chaining.
       */
      public Builder setDeviceDrivers(
          int index, context.ContextOuterClass.DeviceDriverEnum value) {
        if (value == null) {
          throw new NullPointerException();
        }
        ensureDeviceDriversIsMutable();
        deviceDrivers_.set(index, value.getNumber());
        onChanged();
        return this;
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @param value The deviceDrivers to add.
       * @return This builder for chaining.
       */
      public Builder addDeviceDrivers(context.ContextOuterClass.DeviceDriverEnum value) {
        if (value == null) {
          throw new NullPointerException();
        }
        ensureDeviceDriversIsMutable();
        deviceDrivers_.add(value.getNumber());
        onChanged();
        return this;
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @param values The deviceDrivers to add.
       * @return This builder for chaining.
       */
      public Builder addAllDeviceDrivers(
          java.lang.Iterable<? extends context.ContextOuterClass.DeviceDriverEnum> values) {
        ensureDeviceDriversIsMutable();
        for (context.ContextOuterClass.DeviceDriverEnum value : values) {
          deviceDrivers_.add(value.getNumber());
        }
        onChanged();
        return this;
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearDeviceDrivers() {
        deviceDrivers_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @return A list containing the enum numeric values on the wire for deviceDrivers.
       */
      public java.util.List<java.lang.Integer>
      getDeviceDriversValueList() {
        return java.util.Collections.unmodifiableList(deviceDrivers_);
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @param index The index of the value to return.
       * @return The enum numeric value on the wire of deviceDrivers at the given index.
       */
      public int getDeviceDriversValue(int index) {
        return deviceDrivers_.get(index);
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @param index The index of the value to return.
       * @return The enum numeric value on the wire of deviceDrivers at the given index.
       * @return This builder for chaining.
       */
      public Builder setDeviceDriversValue(
          int index, int value) {
        ensureDeviceDriversIsMutable();
        deviceDrivers_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @param value The enum numeric value on the wire for deviceDrivers to add.
       * @return This builder for chaining.
       */
      public Builder addDeviceDriversValue(int value) {
        ensureDeviceDriversIsMutable();
        deviceDrivers_.add(value);
        onChanged();
        return this;
      }
      /**
       * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code>
       * @param values The enum numeric values on the wire for deviceDrivers to add.
       * @return This builder for chaining.
       */
      public Builder addAllDeviceDriversValue(
          java.lang.Iterable<java.lang.Integer> values) {
        ensureDeviceDriversIsMutable();
        for (int value : values) {
          deviceDrivers_.add(value);
        }
        onChanged();
        return this;
      }

      private java.util.List<context.ContextOuterClass.EndPoint> deviceEndpoints_ =
        java.util.Collections.emptyList();
      private void ensureDeviceEndpointsIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          deviceEndpoints_ = new java.util.ArrayList<context.ContextOuterClass.EndPoint>(deviceEndpoints_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.EndPoint, context.ContextOuterClass.EndPoint.Builder, context.ContextOuterClass.EndPointOrBuilder> deviceEndpointsBuilder_;

      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public java.util.List<context.ContextOuterClass.EndPoint> getDeviceEndpointsList() {
        if (deviceEndpointsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(deviceEndpoints_);
        } else {
          return deviceEndpointsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public int getDeviceEndpointsCount() {
        if (deviceEndpointsBuilder_ == null) {
          return deviceEndpoints_.size();
        } else {
          return deviceEndpointsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public context.ContextOuterClass.EndPoint getDeviceEndpoints(int index) {
        if (deviceEndpointsBuilder_ == null) {
          return deviceEndpoints_.get(index);
        } else {
          return deviceEndpointsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public Builder setDeviceEndpoints(
          int index, context.ContextOuterClass.EndPoint value) {
        if (deviceEndpointsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDeviceEndpointsIsMutable();
          deviceEndpoints_.set(index, value);
          onChanged();
        } else {
          deviceEndpointsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public Builder setDeviceEndpoints(
          int index, context.ContextOuterClass.EndPoint.Builder builderForValue) {
        if (deviceEndpointsBuilder_ == null) {
          ensureDeviceEndpointsIsMutable();
          deviceEndpoints_.set(index, builderForValue.build());
          onChanged();
        } else {
          deviceEndpointsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public Builder addDeviceEndpoints(context.ContextOuterClass.EndPoint value) {
        if (deviceEndpointsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDeviceEndpointsIsMutable();
          deviceEndpoints_.add(value);
          onChanged();
        } else {
          deviceEndpointsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public Builder addDeviceEndpoints(
          int index, context.ContextOuterClass.EndPoint value) {
        if (deviceEndpointsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDeviceEndpointsIsMutable();
          deviceEndpoints_.add(index, value);
          onChanged();
        } else {
          deviceEndpointsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public Builder addDeviceEndpoints(
          context.ContextOuterClass.EndPoint.Builder builderForValue) {
        if (deviceEndpointsBuilder_ == null) {
          ensureDeviceEndpointsIsMutable();
          deviceEndpoints_.add(builderForValue.build());
          onChanged();
        } else {
          deviceEndpointsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public Builder addDeviceEndpoints(
          int index, context.ContextOuterClass.EndPoint.Builder builderForValue) {
        if (deviceEndpointsBuilder_ == null) {
          ensureDeviceEndpointsIsMutable();
          deviceEndpoints_.add(index, builderForValue.build());
          onChanged();
        } else {
          deviceEndpointsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public Builder addAllDeviceEndpoints(
          java.lang.Iterable<? extends context.ContextOuterClass.EndPoint> values) {
        if (deviceEndpointsBuilder_ == null) {
          ensureDeviceEndpointsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, deviceEndpoints_);
          onChanged();
        } else {
          deviceEndpointsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public Builder clearDeviceEndpoints() {
        if (deviceEndpointsBuilder_ == null) {
          deviceEndpoints_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          deviceEndpointsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public Builder removeDeviceEndpoints(int index) {
        if (deviceEndpointsBuilder_ == null) {
          ensureDeviceEndpointsIsMutable();
          deviceEndpoints_.remove(index);
          onChanged();
        } else {
          deviceEndpointsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public context.ContextOuterClass.EndPoint.Builder getDeviceEndpointsBuilder(
          int index) {
        return getDeviceEndpointsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public context.ContextOuterClass.EndPointOrBuilder getDeviceEndpointsOrBuilder(
          int index) {
        if (deviceEndpointsBuilder_ == null) {
          return deviceEndpoints_.get(index);  } else {
          return deviceEndpointsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.EndPointOrBuilder> 
           getDeviceEndpointsOrBuilderList() {
        if (deviceEndpointsBuilder_ != null) {
          return deviceEndpointsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(deviceEndpoints_);
        }
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public context.ContextOuterClass.EndPoint.Builder addDeviceEndpointsBuilder() {
        return getDeviceEndpointsFieldBuilder().addBuilder(
            context.ContextOuterClass.EndPoint.getDefaultInstance());
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public context.ContextOuterClass.EndPoint.Builder addDeviceEndpointsBuilder(
          int index) {
        return getDeviceEndpointsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.EndPoint.getDefaultInstance());
      }
      /**
       * <code>repeated .context.EndPoint device_endpoints = 7;</code>
       */
      public java.util.List<context.ContextOuterClass.EndPoint.Builder> 
           getDeviceEndpointsBuilderList() {
        return getDeviceEndpointsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.EndPoint, context.ContextOuterClass.EndPoint.Builder, context.ContextOuterClass.EndPointOrBuilder> 
          getDeviceEndpointsFieldBuilder() {
        if (deviceEndpointsBuilder_ == null) {
          deviceEndpointsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.EndPoint, context.ContextOuterClass.EndPoint.Builder, context.ContextOuterClass.EndPointOrBuilder>(
                  deviceEndpoints_,
                  ((bitField0_ & 0x00000002) != 0),
                  getParentForChildren(),
                  isClean());
          deviceEndpoints_ = null;
        }
        return deviceEndpointsBuilder_;
      }

famelis's avatar
famelis committed
      private java.util.List<context.ContextOuterClass.Component> components_ =
        java.util.Collections.emptyList();
famelis's avatar
famelis committed
      private void ensureComponentsIsMutable() {
        if (!((bitField0_ & 0x00000004) != 0)) {
famelis's avatar
famelis committed
          components_ = new java.util.ArrayList<context.ContextOuterClass.Component>(components_);
          bitField0_ |= 0x00000004;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Component, context.ContextOuterClass.Component.Builder, context.ContextOuterClass.ComponentOrBuilder> componentsBuilder_;

      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.Component> getComponentsList() {
        if (componentsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(components_);
famelis's avatar
famelis committed
          return componentsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public int getComponentsCount() {
        if (componentsBuilder_ == null) {
          return components_.size();
famelis's avatar
famelis committed
          return componentsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Component getComponents(int index) {
        if (componentsBuilder_ == null) {
          return components_.get(index);
famelis's avatar
famelis committed
          return componentsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public Builder setComponents(
          int index, context.ContextOuterClass.Component value) {
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureComponentsIsMutable();
          components_.set(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public Builder setComponents(
          int index, context.ContextOuterClass.Component.Builder builderForValue) {
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          ensureComponentsIsMutable();
          components_.set(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public Builder addComponents(context.ContextOuterClass.Component value) {
        if (componentsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureComponentsIsMutable();
          components_.add(value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public Builder addComponents(
          int index, context.ContextOuterClass.Component value) {
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureComponentsIsMutable();
          components_.add(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public Builder addComponents(
          context.ContextOuterClass.Component.Builder builderForValue) {
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          ensureComponentsIsMutable();
          components_.add(builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public Builder addComponents(
          int index, context.ContextOuterClass.Component.Builder builderForValue) {
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          ensureComponentsIsMutable();
          components_.add(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public Builder addAllComponents(
          java.lang.Iterable<? extends context.ContextOuterClass.Component> values) {
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          ensureComponentsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
famelis's avatar
famelis committed
              values, components_);
          onChanged();
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public Builder clearComponents() {
        if (componentsBuilder_ == null) {
          components_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public Builder removeComponents(int index) {
        if (componentsBuilder_ == null) {
          ensureComponentsIsMutable();
          components_.remove(index);
          onChanged();
        } else {
famelis's avatar
famelis committed
          componentsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Component.Builder getComponentsBuilder(
          int index) {
famelis's avatar
famelis committed
        return getComponentsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ComponentOrBuilder getComponentsOrBuilder(
          int index) {
famelis's avatar
famelis committed
        if (componentsBuilder_ == null) {
          return components_.get(index);  } else {
          return componentsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.ComponentOrBuilder> 
famelis's avatar
famelis committed
           getComponentsOrBuilderList() {
        if (componentsBuilder_ != null) {
          return componentsBuilder_.getMessageOrBuilderList();
famelis's avatar
famelis committed
          return java.util.Collections.unmodifiableList(components_);
        }
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Component.Builder addComponentsBuilder() {
        return getComponentsFieldBuilder().addBuilder(
            context.ContextOuterClass.Component.getDefaultInstance());
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Component.Builder addComponentsBuilder(
          int index) {
famelis's avatar
famelis committed
        return getComponentsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.Component.getDefaultInstance());
      }
      /**
       * <pre>
       * Used for inventory
       * </pre>
       *
famelis's avatar
famelis committed
       * <code>repeated .context.Component components = 8;</code>
       */
      public java.util.List<context.ContextOuterClass.Component.Builder> 
famelis's avatar
famelis committed
           getComponentsBuilderList() {
        return getComponentsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Component, context.ContextOuterClass.Component.Builder, context.ContextOuterClass.ComponentOrBuilder> 
famelis's avatar
famelis committed
          getComponentsFieldBuilder() {
        if (componentsBuilder_ == null) {
          componentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.Component, context.ContextOuterClass.Component.Builder, context.ContextOuterClass.ComponentOrBuilder>(
famelis's avatar
famelis committed
                  components_,
                  ((bitField0_ & 0x00000004) != 0),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          components_ = null;
famelis's avatar
famelis committed
        return componentsBuilder_;
famelis's avatar
famelis committed

      private context.ContextOuterClass.DeviceId controllerId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> controllerIdBuilder_;
      /**
       * <pre>
       * Identifier of node controlling the actual device
       * </pre>
       *
       * <code>.context.DeviceId controller_id = 9;</code>
       * @return Whether the controllerId field is set.
       */
      public boolean hasControllerId() {
        return controllerIdBuilder_ != null || controllerId_ != null;
      }
      /**
       * <pre>
       * Identifier of node controlling the actual device
       * </pre>
       *
       * <code>.context.DeviceId controller_id = 9;</code>
       * @return The controllerId.
       */
      public context.ContextOuterClass.DeviceId getControllerId() {
        if (controllerIdBuilder_ == null) {
          return controllerId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : controllerId_;
        } else {
          return controllerIdBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * Identifier of node controlling the actual device
       * </pre>
       *
       * <code>.context.DeviceId controller_id = 9;</code>
       */
      public Builder setControllerId(context.ContextOuterClass.DeviceId value) {
        if (controllerIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          controllerId_ = value;
          onChanged();
        } else {
          controllerIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       * Identifier of node controlling the actual device
       * </pre>
       *
       * <code>.context.DeviceId controller_id = 9;</code>
       */
      public Builder setControllerId(
          context.ContextOuterClass.DeviceId.Builder builderForValue) {
        if (controllerIdBuilder_ == null) {
          controllerId_ = builderForValue.build();
          onChanged();
        } else {
          controllerIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       * Identifier of node controlling the actual device
       * </pre>
       *
       * <code>.context.DeviceId controller_id = 9;</code>
       */
      public Builder mergeControllerId(context.ContextOuterClass.DeviceId value) {
        if (controllerIdBuilder_ == null) {
          if (controllerId_ != null) {
            controllerId_ =
              context.ContextOuterClass.DeviceId.newBuilder(controllerId_).mergeFrom(value).buildPartial();
          } else {
            controllerId_ = value;
          }
          onChanged();
        } else {
          controllerIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       * Identifier of node controlling the actual device
       * </pre>
       *
       * <code>.context.DeviceId controller_id = 9;</code>
       */
      public Builder clearControllerId() {
        if (controllerIdBuilder_ == null) {
          controllerId_ = null;
          onChanged();
        } else {
          controllerId_ = null;
          controllerIdBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       * Identifier of node controlling the actual device
       * </pre>
       *
       * <code>.context.DeviceId controller_id = 9;</code>
       */
      public context.ContextOuterClass.DeviceId.Builder getControllerIdBuilder() {
        
        onChanged();
        return getControllerIdFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * Identifier of node controlling the actual device
       * </pre>
       *
       * <code>.context.DeviceId controller_id = 9;</code>
       */
      public context.ContextOuterClass.DeviceIdOrBuilder getControllerIdOrBuilder() {
        if (controllerIdBuilder_ != null) {
          return controllerIdBuilder_.getMessageOrBuilder();
        } else {
          return controllerId_ == null ?
              context.ContextOuterClass.DeviceId.getDefaultInstance() : controllerId_;
        }
      }
      /**
       * <pre>
       * Identifier of node controlling the actual device
       * </pre>
       *
       * <code>.context.DeviceId controller_id = 9;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> 
          getControllerIdFieldBuilder() {
        if (controllerIdBuilder_ == null) {
          controllerIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>(
                  getControllerId(),
                  getParentForChildren(),
                  isClean());
          controllerId_ = null;
        }
        return controllerIdBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.Device)
    }

    // @@protoc_insertion_point(class_scope:context.Device)
    private static final context.ContextOuterClass.Device DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.Device();
    }

    public static context.ContextOuterClass.Device getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<Device>
        PARSER = new com.google.protobuf.AbstractParser<Device>() {
      @java.lang.Override
      public Device parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Device(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<Device> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<Device> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.Device getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ComponentOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Component)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>.context.Uuid component_uuid = 1;</code>
     * @return Whether the componentUuid field is set.
famelis's avatar
famelis committed
    boolean hasComponentUuid();
famelis's avatar
famelis committed
     * <code>.context.Uuid component_uuid = 1;</code>
     * @return The componentUuid.
famelis's avatar
famelis committed
    context.ContextOuterClass.Uuid getComponentUuid();
famelis's avatar
famelis committed
     * <code>.context.Uuid component_uuid = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.UuidOrBuilder getComponentUuidOrBuilder();

famelis's avatar
famelis committed
     * <code>string name = 2;</code>
     * @return The name.
     */
    java.lang.String getName();
    /**
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * <code>string type = 3;</code>
     * @return The type.
     */
    java.lang.String getType();
    /**
     * <code>string type = 3;</code>
     * @return The bytes for type.
     */
    com.google.protobuf.ByteString
        getTypeBytes();

    /**
     * <pre>
     * dict[attr.name =&gt; json.dumps(attr.value)]
     * </pre>
     *
     * <code>map&lt;string, string&gt; attributes = 4;</code>
     */
    int getAttributesCount();
    /**
     * <pre>
     * dict[attr.name =&gt; json.dumps(attr.value)]
     * </pre>
     *
     * <code>map&lt;string, string&gt; attributes = 4;</code>
     */
    boolean containsAttributes(
        java.lang.String key);
    /**
     * Use {@link #getAttributesMap()} instead.
     */
    @java.lang.Deprecated
    java.util.Map<java.lang.String, java.lang.String>
    getAttributes();
    /**
     * <pre>
     * dict[attr.name =&gt; json.dumps(attr.value)]
     * </pre>
     *
     * <code>map&lt;string, string&gt; attributes = 4;</code>
     */
    java.util.Map<java.lang.String, java.lang.String>
    getAttributesMap();
    /**
     * <pre>
     * dict[attr.name =&gt; json.dumps(attr.value)]
     * </pre>
     *
     * <code>map&lt;string, string&gt; attributes = 4;</code>
     */

    java.lang.String getAttributesOrDefault(
        java.lang.String key,
        java.lang.String defaultValue);
    /**
     * <pre>
     * dict[attr.name =&gt; json.dumps(attr.value)]
     * </pre>
     *
     * <code>map&lt;string, string&gt; attributes = 4;</code>
     */

    java.lang.String getAttributesOrThrow(
        java.lang.String key);

    /**
     * <code>string parent = 5;</code>
     * @return The parent.
     */
    java.lang.String getParent();
    /**
     * <code>string parent = 5;</code>
     * @return The bytes for parent.
     */
    com.google.protobuf.ByteString
famelis's avatar
famelis committed
        getParentBytes();
famelis's avatar
famelis committed
   * <pre>
   *Defined previously to this section - Tested OK
   * </pre>
   *
   * Protobuf type {@code context.Component}
   */
  public static final class Component extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.Component)
      ComponentOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Component.newBuilder() to construct.
    private Component(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private Component() {
famelis's avatar
famelis committed
      name_ = "";
      type_ = "";
      parent_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Component();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Component(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
famelis's avatar
famelis committed
              context.ContextOuterClass.Uuid.Builder subBuilder = null;
              if (componentUuid_ != null) {
                subBuilder = componentUuid_.toBuilder();
              }
              componentUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(componentUuid_);
                componentUuid_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
famelis's avatar
famelis committed

              name_ = s;
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();

              type_ = s;
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
                attributes_ = com.google.protobuf.MapField.newMapField(
                    AttributesDefaultEntryHolder.defaultEntry);
                mutable_bitField0_ |= 0x00000001;
              }
famelis's avatar
famelis committed
              com.google.protobuf.MapEntry<java.lang.String, java.lang.String>
              attributes__ = input.readMessage(
                  AttributesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              attributes_.getMutableMap().put(
                  attributes__.getKey(), attributes__.getValue());
              break;
            }
            case 42: {
              java.lang.String s = input.readStringRequireUtf8();

              parent_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_Component_descriptor;
    }

famelis's avatar
famelis committed
    @SuppressWarnings({"rawtypes"})
    @java.lang.Override
    protected com.google.protobuf.MapField internalGetMapField(
        int number) {
      switch (number) {
        case 4:
          return internalGetAttributes();
        default:
          throw new RuntimeException(
              "Invalid map field number: " + number);
      }
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_Component_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.Component.class, context.ContextOuterClass.Component.Builder.class);
    }

famelis's avatar
famelis committed
    public static final int COMPONENT_UUID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Uuid componentUuid_;
famelis's avatar
famelis committed
     * <code>.context.Uuid component_uuid = 1;</code>
     * @return Whether the componentUuid field is set.
famelis's avatar
famelis committed
    @java.lang.Override
    public boolean hasComponentUuid() {
      return componentUuid_ != null;
famelis's avatar
famelis committed
     * <code>.context.Uuid component_uuid = 1;</code>
     * @return The componentUuid.
famelis's avatar
famelis committed
    @java.lang.Override
    public context.ContextOuterClass.Uuid getComponentUuid() {
      return componentUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : componentUuid_;
famelis's avatar
famelis committed
     * <code>.context.Uuid component_uuid = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.UuidOrBuilder getComponentUuidOrBuilder() {
      return getComponentUuid();
    }

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
    /**
     * <code>string name = 2;</code>
     * @return The name.
famelis's avatar
famelis committed
    @java.lang.Override
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
famelis's avatar
famelis committed
     * <code>string name = 2;</code>
     * @return The bytes for name.
famelis's avatar
famelis committed
    @java.lang.Override
    public com.google.protobuf.ByteString
famelis's avatar
famelis committed
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int TYPE_FIELD_NUMBER = 3;
    private volatile java.lang.Object type_;
    /**
     * <code>string type = 3;</code>
     * @return The type.
     */
    @java.lang.Override
    public java.lang.String getType() {
      java.lang.Object ref = type_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        type_ = s;
        return s;
      }
    }
    /**
     * <code>string type = 3;</code>
     * @return The bytes for type.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getTypeBytes() {
      java.lang.Object ref = type_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        type_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ATTRIBUTES_FIELD_NUMBER = 4;
    private static final class AttributesDefaultEntryHolder {
      static final com.google.protobuf.MapEntry<
          java.lang.String, java.lang.String> defaultEntry =
              com.google.protobuf.MapEntry
              .<java.lang.String, java.lang.String>newDefaultInstance(
                  context.ContextOuterClass.internal_static_context_Component_AttributesEntry_descriptor, 
                  com.google.protobuf.WireFormat.FieldType.STRING,
                  "",
                  com.google.protobuf.WireFormat.FieldType.STRING,
                  "");
    }
    private com.google.protobuf.MapField<
        java.lang.String, java.lang.String> attributes_;
    private com.google.protobuf.MapField<java.lang.String, java.lang.String>
    internalGetAttributes() {
      if (attributes_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            AttributesDefaultEntryHolder.defaultEntry);
      }
      return attributes_;
    }

    public int getAttributesCount() {
      return internalGetAttributes().getMap().size();
    }
    /**
     * <pre>
     * dict[attr.name =&gt; json.dumps(attr.value)]
     * </pre>
     *
     * <code>map&lt;string, string&gt; attributes = 4;</code>
     */

    @java.lang.Override
    public boolean containsAttributes(
        java.lang.String key) {
      if (key == null) { throw new java.lang.NullPointerException(); }
      return internalGetAttributes().getMap().containsKey(key);
    }
    /**
     * Use {@link #getAttributesMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map<java.lang.String, java.lang.String> getAttributes() {
      return getAttributesMap();
    }
    /**
     * <pre>
     * dict[attr.name =&gt; json.dumps(attr.value)]
     * </pre>
     *
     * <code>map&lt;string, string&gt; attributes = 4;</code>
     */
    @java.lang.Override

    public java.util.Map<java.lang.String, java.lang.String> getAttributesMap() {
      return internalGetAttributes().getMap();
    }
    /**
     * <pre>
     * dict[attr.name =&gt; json.dumps(attr.value)]
     * </pre>
     *
     * <code>map&lt;string, string&gt; attributes = 4;</code>
     */
    @java.lang.Override

    public java.lang.String getAttributesOrDefault(
        java.lang.String key,
        java.lang.String defaultValue) {
      if (key == null) { throw new java.lang.NullPointerException(); }
      java.util.Map<java.lang.String, java.lang.String> map =
          internalGetAttributes().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * <pre>
     * dict[attr.name =&gt; json.dumps(attr.value)]
     * </pre>
     *
     * <code>map&lt;string, string&gt; attributes = 4;</code>
     */
    @java.lang.Override

    public java.lang.String getAttributesOrThrow(
        java.lang.String key) {
      if (key == null) { throw new java.lang.NullPointerException(); }
      java.util.Map<java.lang.String, java.lang.String> map =
          internalGetAttributes().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }

    public static final int PARENT_FIELD_NUMBER = 5;
    private volatile java.lang.Object parent_;
    /**
     * <code>string parent = 5;</code>
     * @return The parent.
     */
    @java.lang.Override
    public java.lang.String getParent() {
      java.lang.Object ref = parent_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        parent_ = s;
        return s;
      }
    }
    /**
     * <code>string parent = 5;</code>
     * @return The bytes for parent.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getParentBytes() {
      java.lang.Object ref = parent_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        parent_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      if (componentUuid_ != null) {
        output.writeMessage(1, getComponentUuid());
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      if (!getTypeBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, type_);
      }
      com.google.protobuf.GeneratedMessageV3
        .serializeStringMapTo(
          output,
          internalGetAttributes(),
          AttributesDefaultEntryHolder.defaultEntry,
          4);
      if (!getParentBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, parent_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      if (componentUuid_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getComponentUuid());
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      if (!getTypeBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, type_);
      }
      for (java.util.Map.Entry<java.lang.String, java.lang.String> entry
           : internalGetAttributes().getMap().entrySet()) {
        com.google.protobuf.MapEntry<java.lang.String, java.lang.String>
        attributes__ = AttributesDefaultEntryHolder.defaultEntry.newBuilderForType()
            .setKey(entry.getKey())
            .setValue(entry.getValue())
            .build();
        size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, attributes__);
      }
      if (!getParentBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, parent_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.Component)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.Component other = (context.ContextOuterClass.Component) obj;

famelis's avatar
famelis committed
      if (hasComponentUuid() != other.hasComponentUuid()) return false;
      if (hasComponentUuid()) {
        if (!getComponentUuid()
            .equals(other.getComponentUuid())) return false;
      }
      if (!getName()
          .equals(other.getName())) return false;
      if (!getType()
          .equals(other.getType())) return false;
      if (!internalGetAttributes().equals(
          other.internalGetAttributes())) return false;
      if (!getParent()
          .equals(other.getParent())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (hasComponentUuid()) {
        hash = (37 * hash) + COMPONENT_UUID_FIELD_NUMBER;
        hash = (53 * hash) + getComponentUuid().hashCode();
famelis's avatar
famelis committed
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      hash = (37 * hash) + TYPE_FIELD_NUMBER;
      hash = (53 * hash) + getType().hashCode();
      if (!internalGetAttributes().getMap().isEmpty()) {
        hash = (37 * hash) + ATTRIBUTES_FIELD_NUMBER;
        hash = (53 * hash) + internalGetAttributes().hashCode();
      }
      hash = (37 * hash) + PARENT_FIELD_NUMBER;
      hash = (53 * hash) + getParent().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.Component parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Component parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Component parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Component parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Component parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.Component parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.Component parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Component parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Component parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Component parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.Component parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.Component parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.Component prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * <pre>
     *Defined previously to this section - Tested OK
     * </pre>
     *
     * Protobuf type {@code context.Component}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.Component)
        context.ContextOuterClass.ComponentOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_Component_descriptor;
      }

famelis's avatar
famelis committed
      @SuppressWarnings({"rawtypes"})
      protected com.google.protobuf.MapField internalGetMapField(
          int number) {
        switch (number) {
          case 4:
            return internalGetAttributes();
          default:
            throw new RuntimeException(
                "Invalid map field number: " + number);
        }
      }
      @SuppressWarnings({"rawtypes"})
      protected com.google.protobuf.MapField internalGetMutableMapField(
          int number) {
        switch (number) {
          case 4:
            return internalGetMutableAttributes();
          default:
            throw new RuntimeException(
                "Invalid map field number: " + number);
        }
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_Component_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.Component.class, context.ContextOuterClass.Component.Builder.class);
      }

      // Construct using context.ContextOuterClass.Component.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (componentUuidBuilder_ == null) {
          componentUuid_ = null;
        } else {
          componentUuid_ = null;
          componentUuidBuilder_ = null;
        }
        name_ = "";

        type_ = "";

        internalGetMutableAttributes().clear();
        parent_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_Component_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.Component getDefaultInstanceForType() {
        return context.ContextOuterClass.Component.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.Component build() {
        context.ContextOuterClass.Component result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.Component buildPartial() {
        context.ContextOuterClass.Component result = new context.ContextOuterClass.Component(this);
        int from_bitField0_ = bitField0_;
famelis's avatar
famelis committed
        if (componentUuidBuilder_ == null) {
          result.componentUuid_ = componentUuid_;
        } else {
          result.componentUuid_ = componentUuidBuilder_.build();
famelis's avatar
famelis committed
        result.name_ = name_;
        result.type_ = type_;
        result.attributes_ = internalGetAttributes();
        result.attributes_.makeImmutable();
        result.parent_ = parent_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.Component) {
          return mergeFrom((context.ContextOuterClass.Component)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.Component other) {
        if (other == context.ContextOuterClass.Component.getDefaultInstance()) return this;
famelis's avatar
famelis committed
        if (other.hasComponentUuid()) {
          mergeComponentUuid(other.getComponentUuid());
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (!other.getType().isEmpty()) {
          type_ = other.type_;
          onChanged();
        }
        internalGetMutableAttributes().mergeFrom(
            other.internalGetAttributes());
        if (!other.getParent().isEmpty()) {
          parent_ = other.parent_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.Component parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.Component) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

famelis's avatar
famelis committed
      private context.ContextOuterClass.Uuid componentUuid_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> componentUuidBuilder_;
      /**
       * <code>.context.Uuid component_uuid = 1;</code>
       * @return Whether the componentUuid field is set.
       */
      public boolean hasComponentUuid() {
        return componentUuidBuilder_ != null || componentUuid_ != null;
famelis's avatar
famelis committed
       * <code>.context.Uuid component_uuid = 1;</code>
       * @return The componentUuid.
famelis's avatar
famelis committed
      public context.ContextOuterClass.Uuid getComponentUuid() {
        if (componentUuidBuilder_ == null) {
          return componentUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : componentUuid_;
        } else {
          return componentUuidBuilder_.getMessage();
        }
famelis's avatar
famelis committed
       * <code>.context.Uuid component_uuid = 1;</code>
famelis's avatar
famelis committed
      public Builder setComponentUuid(context.ContextOuterClass.Uuid value) {
        if (componentUuidBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          componentUuid_ = value;
          onChanged();
        } else {
          componentUuidBuilder_.setMessage(value);
        }

        return this;
famelis's avatar
famelis committed
       * <code>.context.Uuid component_uuid = 1;</code>
famelis's avatar
famelis committed
      public Builder setComponentUuid(
          context.ContextOuterClass.Uuid.Builder builderForValue) {
        if (componentUuidBuilder_ == null) {
          componentUuid_ = builderForValue.build();
          onChanged();
        } else {
          componentUuidBuilder_.setMessage(builderForValue.build());
        }

        return this;
famelis's avatar
famelis committed
       * <code>.context.Uuid component_uuid = 1;</code>
       */
      public Builder mergeComponentUuid(context.ContextOuterClass.Uuid value) {
        if (componentUuidBuilder_ == null) {
          if (componentUuid_ != null) {
            componentUuid_ =
              context.ContextOuterClass.Uuid.newBuilder(componentUuid_).mergeFrom(value).buildPartial();
          } else {
            componentUuid_ = value;
          }
          onChanged();
        } else {
          componentUuidBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.Uuid component_uuid = 1;</code>
       */
      public Builder clearComponentUuid() {
        if (componentUuidBuilder_ == null) {
          componentUuid_ = null;
          onChanged();
        } else {
          componentUuid_ = null;
          componentUuidBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.Uuid component_uuid = 1;</code>
       */
      public context.ContextOuterClass.Uuid.Builder getComponentUuidBuilder() {
        
        onChanged();
        return getComponentUuidFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.Uuid component_uuid = 1;</code>
       */
      public context.ContextOuterClass.UuidOrBuilder getComponentUuidOrBuilder() {
        if (componentUuidBuilder_ != null) {
          return componentUuidBuilder_.getMessageOrBuilder();
        } else {
          return componentUuid_ == null ?
              context.ContextOuterClass.Uuid.getDefaultInstance() : componentUuid_;
        }
      }
      /**
       * <code>.context.Uuid component_uuid = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> 
          getComponentUuidFieldBuilder() {
        if (componentUuidBuilder_ == null) {
          componentUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>(
                  getComponentUuid(),
                  getParentForChildren(),
                  isClean());
          componentUuid_ = null;
        }
        return componentUuidBuilder_;
      }

      private java.lang.Object name_ = "";
      /**
       * <code>string name = 2;</code>
       * @return The name.
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @return The bytes for name.
       */
      public com.google.protobuf.ByteString
famelis's avatar
famelis committed
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
famelis's avatar
famelis committed
       * <code>string name = 2;</code>
       * @param value The name to set.
       * @return This builder for chaining.
       */
famelis's avatar
famelis committed
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
famelis's avatar
famelis committed
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
famelis's avatar
famelis committed
       * <code>string name = 2;</code>
       * @return This builder for chaining.
       */
famelis's avatar
famelis committed
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @param value The bytes for name to set.
       * @return This builder for chaining.
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object type_ = "";
      /**
       * <code>string type = 3;</code>
       * @return The type.
       */
      public java.lang.String getType() {
        java.lang.Object ref = type_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          type_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string type = 3;</code>
       * @return The bytes for type.
       */
      public com.google.protobuf.ByteString
          getTypeBytes() {
        java.lang.Object ref = type_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          type_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string type = 3;</code>
       * @param value The type to set.
       * @return This builder for chaining.
       */
      public Builder setType(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
famelis's avatar
famelis committed
  
        type_ = value;
        onChanged();
        return this;
      }
      /**
famelis's avatar
famelis committed
       * <code>string type = 3;</code>
       * @return This builder for chaining.
       */
famelis's avatar
famelis committed
      public Builder clearType() {
        
        type_ = getDefaultInstance().getType();
        onChanged();
        return this;
      }
      /**
famelis's avatar
famelis committed
       * <code>string type = 3;</code>
       * @param value The bytes for type to set.
       * @return This builder for chaining.
       */
famelis's avatar
famelis committed
      public Builder setTypeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        type_ = value;
        onChanged();
        return this;
      }

      private com.google.protobuf.MapField<
          java.lang.String, java.lang.String> attributes_;
      private com.google.protobuf.MapField<java.lang.String, java.lang.String>
      internalGetAttributes() {
        if (attributes_ == null) {
          return com.google.protobuf.MapField.emptyMapField(
              AttributesDefaultEntryHolder.defaultEntry);
        }
        return attributes_;
      }
      private com.google.protobuf.MapField<java.lang.String, java.lang.String>
      internalGetMutableAttributes() {
        onChanged();;
        if (attributes_ == null) {
          attributes_ = com.google.protobuf.MapField.newMapField(
              AttributesDefaultEntryHolder.defaultEntry);
        }
        if (!attributes_.isMutable()) {
          attributes_ = attributes_.copy();
        }
        return attributes_;
      }

      public int getAttributesCount() {
        return internalGetAttributes().getMap().size();
      }
      /**
       * <pre>
       * dict[attr.name =&gt; json.dumps(attr.value)]
       * </pre>
       *
       * <code>map&lt;string, string&gt; attributes = 4;</code>
       */

      @java.lang.Override
      public boolean containsAttributes(
          java.lang.String key) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        return internalGetAttributes().getMap().containsKey(key);
      }
      /**
       * Use {@link #getAttributesMap()} instead.
       */
      @java.lang.Override
      @java.lang.Deprecated
      public java.util.Map<java.lang.String, java.lang.String> getAttributes() {
        return getAttributesMap();
      }
      /**
       * <pre>
       * dict[attr.name =&gt; json.dumps(attr.value)]
       * </pre>
       *
       * <code>map&lt;string, string&gt; attributes = 4;</code>
       */
      @java.lang.Override

      public java.util.Map<java.lang.String, java.lang.String> getAttributesMap() {
        return internalGetAttributes().getMap();
      }
      /**
       * <pre>
       * dict[attr.name =&gt; json.dumps(attr.value)]
       * </pre>
       *
       * <code>map&lt;string, string&gt; attributes = 4;</code>
       */
      @java.lang.Override

      public java.lang.String getAttributesOrDefault(
          java.lang.String key,
          java.lang.String defaultValue) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        java.util.Map<java.lang.String, java.lang.String> map =
            internalGetAttributes().getMap();
        return map.containsKey(key) ? map.get(key) : defaultValue;
      }
      /**
       * <pre>
       * dict[attr.name =&gt; json.dumps(attr.value)]
       * </pre>
       *
       * <code>map&lt;string, string&gt; attributes = 4;</code>
       */
      @java.lang.Override

      public java.lang.String getAttributesOrThrow(
          java.lang.String key) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        java.util.Map<java.lang.String, java.lang.String> map =
            internalGetAttributes().getMap();
        if (!map.containsKey(key)) {
          throw new java.lang.IllegalArgumentException();
        }
        return map.get(key);
      }

      public Builder clearAttributes() {
        internalGetMutableAttributes().getMutableMap()
            .clear();
        return this;
      }
      /**
       * <pre>
       * dict[attr.name =&gt; json.dumps(attr.value)]
       * </pre>
       *
       * <code>map&lt;string, string&gt; attributes = 4;</code>
       */

      public Builder removeAttributes(
          java.lang.String key) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        internalGetMutableAttributes().getMutableMap()
            .remove(key);
        return this;
      }
      /**
       * Use alternate mutation accessors instead.
       */
      @java.lang.Deprecated
      public java.util.Map<java.lang.String, java.lang.String>
      getMutableAttributes() {
        return internalGetMutableAttributes().getMutableMap();
      }
      /**
       * <pre>
       * dict[attr.name =&gt; json.dumps(attr.value)]
       * </pre>
       *
       * <code>map&lt;string, string&gt; attributes = 4;</code>
       */
      public Builder putAttributes(
          java.lang.String key,
          java.lang.String value) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        if (value == null) { throw new java.lang.NullPointerException(); }
        internalGetMutableAttributes().getMutableMap()
            .put(key, value);
        return this;
      }
      /**
       * <pre>
       * dict[attr.name =&gt; json.dumps(attr.value)]
       * </pre>
       *
       * <code>map&lt;string, string&gt; attributes = 4;</code>
       */

      public Builder putAllAttributes(
          java.util.Map<java.lang.String, java.lang.String> values) {
        internalGetMutableAttributes().getMutableMap()
            .putAll(values);
        return this;
      }

      private java.lang.Object parent_ = "";
      /**
       * <code>string parent = 5;</code>
       * @return The parent.
       */
      public java.lang.String getParent() {
        java.lang.Object ref = parent_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          parent_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string parent = 5;</code>
       * @return The bytes for parent.
       */
      public com.google.protobuf.ByteString
          getParentBytes() {
        java.lang.Object ref = parent_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          parent_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string parent = 5;</code>
       * @param value The parent to set.
       * @return This builder for chaining.
       */
      public Builder setParent(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        parent_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string parent = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearParent() {
        
        parent_ = getDefaultInstance().getParent();
        onChanged();
        return this;
      }
      /**
famelis's avatar
famelis committed
       * <code>string parent = 5;</code>
       * @param value The bytes for parent to set.
       * @return This builder for chaining.
       */
famelis's avatar
famelis committed
      public Builder setParentBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
famelis's avatar
famelis committed
        
        parent_ = value;
19609 19610 19611 19612 19613 19614 19615 19616 19617 19618 19619 19620 19621 19622 19623 19624 19625 19626 19627 19628 19629 19630 19631 19632 19633 19634 19635 19636 19637 19638 19639 19640 19641 19642 19643 19644 19645 19646 19647 19648 19649 19650 19651 19652 19653 19654 19655 19656 19657 19658 19659 19660 19661 19662 19663 19664 19665 19666 19667 19668 19669 19670 19671 19672 19673 19674 19675 19676 19677 19678 19679 19680 19681 19682 19683 19684 19685 19686 19687 19688 19689 19690 19691 19692 19693 19694 19695 19696 19697 19698 19699 19700 19701 19702 19703 19704 19705 19706 19707 19708 19709 19710 19711 19712 19713 19714 19715 19716 19717 19718 19719 19720 19721 19722 19723 19724 19725 19726 19727 19728 19729 19730 19731 19732 19733 19734 19735 19736 19737 19738 19739 19740 19741 19742 19743 19744 19745 19746 19747 19748 19749 19750 19751 19752 19753 19754 19755 19756 19757 19758 19759 19760 19761 19762 19763 19764 19765 19766 19767 19768 19769 19770 19771 19772 19773 19774 19775 19776 19777 19778 19779 19780 19781 19782 19783 19784 19785 19786 19787 19788 19789 19790 19791 19792 19793 19794 19795 19796 19797 19798 19799 19800 19801 19802 19803 19804 19805 19806 19807 19808 19809 19810 19811 19812 19813 19814 19815 19816 19817 19818 19819 19820 19821 19822 19823 19824 19825 19826 19827 19828 19829 19830 19831 19832 19833 19834 19835 19836 19837 19838 19839 19840 19841 19842 19843 19844 19845 19846 19847 19848 19849 19850 19851 19852 19853 19854 19855 19856 19857 19858 19859 19860 19861 19862 19863 19864 19865 19866 19867 19868 19869 19870 19871 19872 19873 19874 19875 19876 19877 19878 19879 19880 19881 19882 19883 19884 19885 19886 19887 19888 19889 19890 19891 19892 19893 19894 19895 19896 19897 19898 19899 19900 19901 19902 19903 19904 19905 19906 19907 19908 19909 19910 19911 19912 19913 19914 19915 19916 19917 19918 19919 19920 19921 19922 19923 19924 19925 19926 19927 19928 19929 19930 19931 19932 19933 19934 19935 19936 19937 19938 19939 19940 19941 19942 19943 19944 19945 19946 19947 19948 19949 19950 19951 19952 19953 19954 19955 19956 19957 19958 19959 19960 19961 19962 19963 19964 19965 19966 19967 19968 19969 19970 19971 19972 19973 19974 19975 19976 19977 19978 19979 19980 19981 19982 19983 19984 19985 19986 19987 19988 19989 19990 19991 19992 19993 19994 19995 19996 19997 19998 19999 20000 20001 20002 20003 20004 20005 20006 20007 20008 20009 20010 20011 20012 20013 20014 20015 20016 20017 20018 20019 20020 20021 20022 20023 20024 20025 20026 20027 20028 20029 20030 20031 20032 20033 20034 20035 20036 20037 20038 20039 20040 20041 20042 20043 20044 20045 20046 20047 20048 20049 20050 20051 20052 20053 20054 20055 20056 20057 20058 20059 20060 20061 20062 20063 20064 20065 20066 20067 20068 20069 20070 20071 20072 20073 20074 20075 20076 20077 20078 20079 20080 20081 20082 20083 20084 20085 20086 20087 20088 20089 20090 20091 20092 20093 20094 20095 20096 20097 20098 20099 20100 20101 20102 20103 20104 20105 20106 20107 20108 20109 20110 20111 20112 20113 20114 20115 20116 20117 20118 20119 20120 20121 20122 20123 20124 20125 20126 20127 20128 20129 20130 20131 20132 20133 20134 20135 20136 20137 20138 20139 20140 20141 20142 20143 20144 20145 20146 20147 20148 20149 20150 20151 20152 20153 20154 20155 20156 20157 20158 20159 20160 20161 20162 20163 20164 20165 20166 20167 20168 20169 20170 20171 20172 20173 20174 20175 20176 20177 20178 20179 20180 20181 20182 20183 20184 20185 20186 20187 20188 20189 20190 20191 20192 20193 20194 20195 20196 20197 20198 20199 20200
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.Component)
    }

    // @@protoc_insertion_point(class_scope:context.Component)
    private static final context.ContextOuterClass.Component DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.Component();
    }

    public static context.ContextOuterClass.Component getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<Component>
        PARSER = new com.google.protobuf.AbstractParser<Component>() {
      @java.lang.Override
      public Component parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Component(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<Component> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<Component> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.Component getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface DeviceConfigOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.DeviceConfig)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    java.util.List<context.ContextOuterClass.ConfigRule> 
        getConfigRulesList();
    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    context.ContextOuterClass.ConfigRule getConfigRules(int index);
    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    int getConfigRulesCount();
    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> 
        getConfigRulesOrBuilderList();
    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code context.DeviceConfig}
   */
  public static final class DeviceConfig extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.DeviceConfig)
      DeviceConfigOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeviceConfig.newBuilder() to construct.
    private DeviceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private DeviceConfig() {
      configRules_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new DeviceConfig();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeviceConfig(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>();
                mutable_bitField0_ |= 0x00000001;
              }
              configRules_.add(
                  input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          configRules_ = java.util.Collections.unmodifiableList(configRules_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_DeviceConfig_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_DeviceConfig_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.DeviceConfig.class, context.ContextOuterClass.DeviceConfig.Builder.class);
    }

    public static final int CONFIG_RULES_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.ConfigRule> configRules_;
    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() {
      return configRules_;
    }
    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> 
        getConfigRulesOrBuilderList() {
      return configRules_;
    }
    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
    public int getConfigRulesCount() {
      return configRules_.size();
    }
    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ConfigRule getConfigRules(int index) {
      return configRules_.get(index);
    }
    /**
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder(
        int index) {
      return configRules_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < configRules_.size(); i++) {
        output.writeMessage(1, configRules_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < configRules_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, configRules_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.DeviceConfig)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.DeviceConfig other = (context.ContextOuterClass.DeviceConfig) obj;

      if (!getConfigRulesList()
          .equals(other.getConfigRulesList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getConfigRulesCount() > 0) {
        hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER;
        hash = (53 * hash) + getConfigRulesList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.DeviceConfig parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceConfig parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceConfig parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceConfig parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceConfig parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceConfig parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceConfig parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceConfig parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceConfig parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceConfig parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceConfig parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceConfig parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.DeviceConfig prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.DeviceConfig}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.DeviceConfig)
        context.ContextOuterClass.DeviceConfigOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_DeviceConfig_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_DeviceConfig_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.DeviceConfig.class, context.ContextOuterClass.DeviceConfig.Builder.class);
      }

      // Construct using context.ContextOuterClass.DeviceConfig.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getConfigRulesFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (configRulesBuilder_ == null) {
          configRules_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          configRulesBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_DeviceConfig_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceConfig getDefaultInstanceForType() {
        return context.ContextOuterClass.DeviceConfig.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceConfig build() {
        context.ContextOuterClass.DeviceConfig result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceConfig buildPartial() {
        context.ContextOuterClass.DeviceConfig result = new context.ContextOuterClass.DeviceConfig(this);
        int from_bitField0_ = bitField0_;
        if (configRulesBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            configRules_ = java.util.Collections.unmodifiableList(configRules_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.configRules_ = configRules_;
        } else {
          result.configRules_ = configRulesBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.DeviceConfig) {
          return mergeFrom((context.ContextOuterClass.DeviceConfig)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.DeviceConfig other) {
        if (other == context.ContextOuterClass.DeviceConfig.getDefaultInstance()) return this;
        if (configRulesBuilder_ == null) {
          if (!other.configRules_.isEmpty()) {
            if (configRules_.isEmpty()) {
              configRules_ = other.configRules_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureConfigRulesIsMutable();
              configRules_.addAll(other.configRules_);
            }
            onChanged();
          }
        } else {
          if (!other.configRules_.isEmpty()) {
            if (configRulesBuilder_.isEmpty()) {
              configRulesBuilder_.dispose();
              configRulesBuilder_ = null;
              configRules_ = other.configRules_;
              bitField0_ = (bitField0_ & ~0x00000001);
              configRulesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getConfigRulesFieldBuilder() : null;
            } else {
              configRulesBuilder_.addAllMessages(other.configRules_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.DeviceConfig parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.DeviceConfig) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ =
        java.util.Collections.emptyList();
      private void ensureConfigRulesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_;

      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() {
        if (configRulesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(configRules_);
        } else {
          return configRulesBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public int getConfigRulesCount() {
        if (configRulesBuilder_ == null) {
          return configRules_.size();
        } else {
          return configRulesBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
20201 20202 20203 20204 20205 20206 20207 20208 20209 20210 20211 20212 20213 20214 20215 20216 20217 20218 20219 20220 20221 20222 20223 20224 20225 20226 20227 20228 20229 20230 20231 20232 20233 20234 20235 20236 20237 20238 20239 20240 20241 20242 20243 20244 20245 20246 20247 20248 20249 20250 20251 20252 20253 20254 20255 20256 20257 20258 20259 20260 20261 20262 20263 20264 20265 20266 20267 20268 20269 20270 20271 20272 20273 20274 20275 20276 20277 20278 20279 20280 20281 20282 20283 20284 20285 20286 20287 20288 20289 20290 20291 20292 20293 20294 20295 20296 20297 20298 20299 20300 20301 20302 20303 20304 20305 20306 20307 20308 20309 20310 20311 20312 20313 20314 20315 20316 20317 20318 20319 20320 20321 20322 20323 20324 20325 20326 20327 20328 20329 20330 20331 20332 20333 20334 20335 20336 20337 20338 20339 20340 20341 20342 20343 20344 20345 20346 20347 20348 20349 20350 20351 20352 20353 20354 20355 20356 20357 20358 20359 20360 20361 20362 20363 20364 20365 20366 20367 20368 20369 20370 20371 20372 20373 20374 20375 20376 20377 20378 20379 20380 20381 20382 20383 20384 20385 20386 20387 20388 20389 20390 20391 20392 20393 20394 20395 20396 20397 20398 20399 20400 20401 20402 20403 20404 20405 20406 20407 20408 20409 20410 20411 20412 20413 20414 20415 20416 20417 20418 20419 20420 20421 20422 20423 20424 20425 20426 20427 20428 20429 20430 20431 20432 20433 20434 20435 20436 20437 20438 20439 20440 20441 20442 20443 20444 20445 20446 20447 20448 20449 20450 20451 20452 20453 20454 20455 20456 20457 20458 20459 20460 20461 20462 20463 20464 20465 20466 20467 20468 20469 20470 20471 20472 20473 20474 20475 20476 20477 20478 20479 20480 20481 20482 20483 20484 20485 20486 20487 20488 20489 20490 20491 20492 20493 20494 20495 20496 20497 20498 20499 20500 20501 20502 20503 20504 20505 20506 20507 20508 20509 20510 20511 20512 20513 20514 20515 20516 20517 20518 20519 20520 20521 20522 20523 20524 20525 20526 20527 20528 20529 20530 20531 20532 20533 20534 20535 20536 20537 20538 20539 20540 20541 20542 20543 20544 20545 20546 20547 20548 20549 20550 20551 20552 20553 20554 20555 20556 20557 20558 20559 20560 20561 20562 20563 20564 20565 20566 20567 20568 20569 20570 20571 20572 20573 20574 20575 20576 20577 20578 20579 20580 20581 20582 20583 20584 20585 20586 20587 20588 20589 20590 20591 20592 20593 20594 20595 20596 20597 20598 20599 20600 20601 20602 20603 20604 20605 20606 20607 20608 20609 20610 20611 20612 20613 20614 20615 20616 20617 20618 20619 20620 20621 20622 20623 20624 20625 20626 20627 20628 20629 20630 20631 20632 20633 20634 20635 20636 20637 20638 20639 20640 20641 20642 20643 20644 20645 20646 20647 20648 20649 20650 20651 20652 20653 20654 20655 20656 20657 20658 20659 20660 20661 20662 20663 20664 20665 20666 20667 20668 20669 20670 20671 20672 20673 20674 20675 20676 20677 20678 20679 20680 20681 20682 20683 20684 20685 20686 20687 20688 20689 20690 20691 20692 20693 20694 20695 20696 20697 20698 20699 20700 20701 20702 20703 20704 20705 20706 20707 20708 20709 20710 20711 20712 20713 20714 20715 20716 20717 20718 20719 20720 20721 20722 20723 20724 20725 20726 20727 20728 20729 20730 20731 20732 20733 20734 20735 20736 20737 20738 20739 20740 20741 20742 20743 20744 20745 20746 20747 20748 20749 20750 20751 20752 20753 20754 20755 20756 20757 20758 20759 20760 20761 20762 20763 20764 20765 20766 20767 20768 20769 20770 20771 20772 20773 20774 20775 20776 20777 20778 20779 20780 20781 20782 20783 20784 20785 20786 20787 20788 20789 20790 20791 20792 20793 20794 20795 20796 20797 20798 20799 20800 20801 20802 20803 20804 20805 20806 20807 20808 20809 20810 20811 20812 20813 20814 20815 20816 20817 20818 20819 20820 20821 20822 20823 20824 20825 20826 20827 20828 20829 20830 20831 20832 20833 20834 20835 20836 20837 20838 20839 20840 20841 20842 20843 20844 20845 20846 20847 20848 20849 20850 20851 20852 20853 20854 20855 20856 20857 20858 20859 20860 20861 20862 20863 20864 20865 20866 20867 20868 20869 20870 20871 20872 20873 20874 20875 20876 20877 20878 20879 20880 20881 20882 20883 20884 20885 20886 20887 20888 20889 20890 20891 20892 20893 20894 20895 20896 20897 20898 20899 20900 20901 20902 20903 20904 20905 20906 20907 20908 20909 20910 20911 20912 20913 20914 20915 20916 20917 20918 20919 20920 20921 20922 20923 20924 20925 20926 20927 20928 20929 20930 20931 20932 20933 20934 20935 20936 20937 20938 20939 20940 20941 20942 20943 20944 20945 20946 20947 20948 20949 20950 20951 20952 20953 20954 20955 20956 20957 20958 20959 20960 20961 20962 20963 20964 20965 20966 20967 20968 20969 20970 20971 20972 20973 20974 20975 20976 20977 20978 20979 20980 20981 20982 20983 20984 20985 20986 20987 20988 20989 20990 20991 20992 20993 20994 20995 20996 20997 20998 20999 21000 21001 21002 21003 21004 21005 21006 21007 21008 21009 21010 21011 21012 21013 21014 21015 21016 21017 21018 21019 21020 21021 21022 21023 21024 21025 21026 21027 21028 21029 21030 21031 21032 21033 21034 21035 21036 21037 21038 21039 21040 21041 21042 21043 21044 21045 21046 21047 21048 21049 21050 21051 21052 21053 21054 21055 21056 21057 21058 21059 21060 21061 21062 21063 21064 21065 21066 21067 21068 21069 21070 21071 21072 21073 21074 21075 21076 21077 21078 21079 21080 21081 21082 21083 21084 21085 21086 21087 21088 21089 21090 21091 21092 21093 21094 21095 21096 21097 21098 21099 21100 21101 21102 21103 21104 21105 21106 21107 21108 21109 21110 21111 21112 21113 21114 21115 21116 21117 21118 21119 21120 21121 21122 21123 21124 21125 21126 21127 21128 21129 21130 21131 21132 21133 21134 21135 21136 21137 21138 21139 21140 21141 21142 21143 21144 21145 21146 21147 21148 21149 21150 21151 21152 21153 21154 21155 21156 21157 21158 21159 21160 21161 21162 21163 21164 21165 21166 21167 21168 21169 21170 21171 21172 21173 21174 21175 21176 21177 21178 21179 21180 21181 21182 21183 21184 21185 21186 21187 21188 21189 21190 21191 21192 21193 21194 21195 21196 21197 21198 21199 21200 21201 21202 21203 21204 21205 21206 21207 21208 21209 21210 21211 21212 21213 21214 21215 21216 21217 21218 21219 21220 21221 21222 21223 21224 21225 21226 21227 21228 21229 21230 21231 21232 21233 21234 21235 21236 21237 21238 21239 21240 21241 21242 21243 21244 21245 21246 21247 21248 21249 21250 21251 21252 21253 21254 21255 21256 21257 21258 21259 21260 21261 21262 21263 21264 21265 21266 21267 21268 21269 21270 21271 21272 21273 21274 21275 21276 21277 21278 21279 21280 21281 21282 21283 21284 21285 21286 21287 21288 21289 21290 21291 21292 21293 21294 21295 21296 21297 21298 21299 21300 21301 21302 21303 21304 21305 21306 21307 21308 21309 21310 21311 21312 21313 21314 21315 21316 21317 21318 21319 21320 21321 21322 21323 21324 21325 21326 21327 21328 21329 21330 21331 21332 21333 21334 21335 21336 21337 21338 21339 21340 21341 21342 21343 21344 21345 21346 21347 21348 21349 21350 21351 21352 21353 21354 21355 21356 21357 21358 21359 21360 21361 21362 21363 21364 21365 21366 21367 21368 21369 21370 21371 21372 21373 21374 21375 21376 21377 21378 21379 21380 21381 21382 21383 21384 21385 21386 21387 21388 21389 21390 21391 21392 21393 21394 21395 21396 21397 21398 21399 21400 21401 21402 21403 21404 21405 21406 21407 21408 21409 21410 21411 21412 21413 21414 21415 21416 21417 21418 21419 21420 21421 21422 21423 21424 21425 21426 21427 21428 21429 21430 21431 21432 21433 21434 21435 21436 21437 21438 21439 21440 21441 21442 21443 21444 21445 21446 21447 21448 21449 21450 21451 21452 21453 21454 21455 21456 21457 21458 21459 21460 21461 21462 21463 21464 21465 21466 21467 21468 21469 21470 21471 21472 21473 21474 21475 21476 21477 21478 21479 21480 21481 21482 21483 21484 21485 21486 21487 21488 21489 21490 21491 21492 21493 21494 21495 21496 21497 21498 21499 21500 21501 21502 21503 21504 21505 21506 21507 21508 21509 21510 21511 21512 21513 21514 21515 21516 21517 21518 21519 21520 21521 21522 21523 21524 21525 21526 21527 21528 21529 21530 21531 21532 21533 21534 21535 21536 21537 21538 21539 21540 21541 21542 21543 21544 21545 21546 21547 21548 21549 21550 21551 21552 21553 21554 21555 21556 21557 21558 21559 21560 21561 21562 21563 21564 21565 21566 21567 21568 21569 21570 21571 21572 21573 21574 21575 21576 21577 21578 21579 21580 21581 21582 21583 21584 21585 21586 21587 21588 21589 21590 21591 21592 21593 21594 21595 21596 21597 21598 21599 21600 21601 21602 21603 21604 21605 21606 21607 21608 21609 21610 21611 21612 21613 21614 21615 21616 21617 21618 21619 21620 21621 21622 21623 21624 21625 21626 21627 21628 21629 21630 21631 21632 21633 21634 21635 21636 21637 21638 21639 21640 21641 21642 21643 21644 21645 21646 21647 21648 21649 21650 21651 21652 21653 21654 21655 21656 21657 21658 21659 21660 21661 21662 21663 21664 21665 21666 21667 21668 21669 21670 21671 21672 21673 21674 21675 21676 21677 21678 21679 21680 21681 21682 21683 21684 21685 21686 21687 21688 21689 21690 21691 21692 21693 21694 21695 21696 21697 21698 21699 21700 21701 21702 21703 21704 21705 21706 21707 21708 21709 21710 21711 21712 21713 21714 21715 21716 21717 21718 21719 21720 21721 21722 21723 21724 21725 21726 21727 21728 21729 21730 21731 21732 21733 21734 21735 21736 21737 21738 21739 21740 21741 21742 21743 21744 21745 21746 21747 21748 21749 21750 21751 21752 21753 21754 21755 21756 21757 21758 21759 21760 21761 21762 21763 21764 21765 21766 21767 21768 21769 21770 21771 21772 21773 21774 21775 21776 21777 21778 21779 21780 21781 21782 21783 21784 21785 21786 21787 21788 21789 21790 21791 21792 21793 21794 21795 21796 21797 21798 21799 21800 21801 21802 21803 21804 21805 21806 21807 21808 21809 21810 21811 21812 21813 21814 21815 21816 21817 21818 21819 21820 21821 21822 21823 21824 21825 21826 21827 21828 21829 21830 21831 21832 21833 21834 21835 21836 21837 21838 21839 21840 21841 21842 21843 21844 21845 21846 21847 21848 21849 21850 21851 21852 21853 21854 21855 21856 21857 21858 21859 21860 21861 21862 21863 21864 21865 21866 21867 21868 21869 21870 21871 21872 21873 21874 21875 21876 21877 21878 21879 21880 21881 21882 21883 21884 21885 21886 21887 21888 21889 21890 21891 21892 21893 21894 21895 21896 21897 21898 21899 21900 21901 21902 21903 21904 21905 21906 21907 21908 21909 21910 21911 21912 21913 21914 21915 21916 21917 21918 21919 21920 21921 21922 21923 21924 21925 21926 21927 21928 21929 21930 21931 21932 21933 21934 21935 21936 21937 21938 21939 21940 21941 21942 21943 21944 21945 21946 21947 21948 21949 21950 21951 21952 21953 21954 21955 21956 21957 21958 21959 21960 21961 21962 21963 21964 21965 21966 21967 21968 21969 21970 21971 21972 21973 21974 21975 21976 21977 21978 21979 21980 21981 21982 21983 21984 21985 21986 21987 21988 21989 21990 21991 21992 21993 21994 21995 21996 21997 21998 21999 22000 22001 22002 22003 22004 22005 22006 22007 22008 22009 22010 22011 22012 22013 22014 22015 22016 22017 22018 22019 22020 22021 22022 22023 22024 22025 22026 22027 22028 22029 22030 22031 22032 22033 22034 22035 22036 22037 22038 22039 22040 22041 22042 22043
      public context.ContextOuterClass.ConfigRule getConfigRules(int index) {
        if (configRulesBuilder_ == null) {
          return configRules_.get(index);
        } else {
          return configRulesBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder setConfigRules(
          int index, context.ContextOuterClass.ConfigRule value) {
        if (configRulesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigRulesIsMutable();
          configRules_.set(index, value);
          onChanged();
        } else {
          configRulesBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder setConfigRules(
          int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          configRules_.set(index, builderForValue.build());
          onChanged();
        } else {
          configRulesBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) {
        if (configRulesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigRulesIsMutable();
          configRules_.add(value);
          onChanged();
        } else {
          configRulesBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder addConfigRules(
          int index, context.ContextOuterClass.ConfigRule value) {
        if (configRulesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigRulesIsMutable();
          configRules_.add(index, value);
          onChanged();
        } else {
          configRulesBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder addConfigRules(
          context.ContextOuterClass.ConfigRule.Builder builderForValue) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          configRules_.add(builderForValue.build());
          onChanged();
        } else {
          configRulesBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder addConfigRules(
          int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          configRules_.add(index, builderForValue.build());
          onChanged();
        } else {
          configRulesBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder addAllConfigRules(
          java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, configRules_);
          onChanged();
        } else {
          configRulesBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder clearConfigRules() {
        if (configRulesBuilder_ == null) {
          configRules_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          configRulesBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder removeConfigRules(int index) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          configRules_.remove(index);
          onChanged();
        } else {
          configRulesBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder(
          int index) {
        return getConfigRulesFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder(
          int index) {
        if (configRulesBuilder_ == null) {
          return configRules_.get(index);  } else {
          return configRulesBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> 
           getConfigRulesOrBuilderList() {
        if (configRulesBuilder_ != null) {
          return configRulesBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(configRules_);
        }
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() {
        return getConfigRulesFieldBuilder().addBuilder(
            context.ContextOuterClass.ConfigRule.getDefaultInstance());
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder(
          int index) {
        return getConfigRulesFieldBuilder().addBuilder(
            index, context.ContextOuterClass.ConfigRule.getDefaultInstance());
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.ConfigRule.Builder> 
           getConfigRulesBuilderList() {
        return getConfigRulesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> 
          getConfigRulesFieldBuilder() {
        if (configRulesBuilder_ == null) {
          configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>(
                  configRules_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          configRules_ = null;
        }
        return configRulesBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.DeviceConfig)
    }

    // @@protoc_insertion_point(class_scope:context.DeviceConfig)
    private static final context.ContextOuterClass.DeviceConfig DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceConfig();
    }

    public static context.ContextOuterClass.DeviceConfig getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<DeviceConfig>
        PARSER = new com.google.protobuf.AbstractParser<DeviceConfig>() {
      @java.lang.Override
      public DeviceConfig parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DeviceConfig(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<DeviceConfig> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<DeviceConfig> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.DeviceConfig getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface DeviceIdListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.DeviceIdList)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    java.util.List<context.ContextOuterClass.DeviceId> 
        getDeviceIdsList();
    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    context.ContextOuterClass.DeviceId getDeviceIds(int index);
    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    int getDeviceIdsCount();
    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> 
        getDeviceIdsOrBuilderList();
    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code context.DeviceIdList}
   */
  public static final class DeviceIdList extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.DeviceIdList)
      DeviceIdListOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeviceIdList.newBuilder() to construct.
    private DeviceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private DeviceIdList() {
      deviceIds_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new DeviceIdList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeviceIdList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>();
                mutable_bitField0_ |= 0x00000001;
              }
              deviceIds_.add(
                  input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_DeviceIdList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_DeviceIdList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.DeviceIdList.class, context.ContextOuterClass.DeviceIdList.Builder.class);
    }

    public static final int DEVICE_IDS_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_;
    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() {
      return deviceIds_;
    }
    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> 
        getDeviceIdsOrBuilderList() {
      return deviceIds_;
    }
    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    @java.lang.Override
    public int getDeviceIdsCount() {
      return deviceIds_.size();
    }
    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceId getDeviceIds(int index) {
      return deviceIds_.get(index);
    }
    /**
     * <code>repeated .context.DeviceId device_ids = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder(
        int index) {
      return deviceIds_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < deviceIds_.size(); i++) {
        output.writeMessage(1, deviceIds_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < deviceIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, deviceIds_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.DeviceIdList)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.DeviceIdList other = (context.ContextOuterClass.DeviceIdList) obj;

      if (!getDeviceIdsList()
          .equals(other.getDeviceIdsList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getDeviceIdsCount() > 0) {
        hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getDeviceIdsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.DeviceIdList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceIdList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceIdList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceIdList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceIdList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceIdList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceIdList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceIdList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceIdList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceIdList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceIdList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceIdList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.DeviceIdList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.DeviceIdList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.DeviceIdList)
        context.ContextOuterClass.DeviceIdListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_DeviceIdList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_DeviceIdList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.DeviceIdList.class, context.ContextOuterClass.DeviceIdList.Builder.class);
      }

      // Construct using context.ContextOuterClass.DeviceIdList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getDeviceIdsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (deviceIdsBuilder_ == null) {
          deviceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          deviceIdsBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_DeviceIdList_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceIdList getDefaultInstanceForType() {
        return context.ContextOuterClass.DeviceIdList.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceIdList build() {
        context.ContextOuterClass.DeviceIdList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceIdList buildPartial() {
        context.ContextOuterClass.DeviceIdList result = new context.ContextOuterClass.DeviceIdList(this);
        int from_bitField0_ = bitField0_;
        if (deviceIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.deviceIds_ = deviceIds_;
        } else {
          result.deviceIds_ = deviceIdsBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.DeviceIdList) {
          return mergeFrom((context.ContextOuterClass.DeviceIdList)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.DeviceIdList other) {
        if (other == context.ContextOuterClass.DeviceIdList.getDefaultInstance()) return this;
        if (deviceIdsBuilder_ == null) {
          if (!other.deviceIds_.isEmpty()) {
            if (deviceIds_.isEmpty()) {
              deviceIds_ = other.deviceIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureDeviceIdsIsMutable();
              deviceIds_.addAll(other.deviceIds_);
            }
            onChanged();
          }
        } else {
          if (!other.deviceIds_.isEmpty()) {
            if (deviceIdsBuilder_.isEmpty()) {
              deviceIdsBuilder_.dispose();
              deviceIdsBuilder_ = null;
              deviceIds_ = other.deviceIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
              deviceIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getDeviceIdsFieldBuilder() : null;
            } else {
              deviceIdsBuilder_.addAllMessages(other.deviceIds_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.DeviceIdList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.DeviceIdList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_ =
        java.util.Collections.emptyList();
      private void ensureDeviceIdsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(deviceIds_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdsBuilder_;

      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() {
        if (deviceIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(deviceIds_);
        } else {
          return deviceIdsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public int getDeviceIdsCount() {
        if (deviceIdsBuilder_ == null) {
          return deviceIds_.size();
        } else {
          return deviceIdsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public context.ContextOuterClass.DeviceId getDeviceIds(int index) {
        if (deviceIdsBuilder_ == null) {
          return deviceIds_.get(index);
        } else {
          return deviceIdsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public Builder setDeviceIds(
          int index, context.ContextOuterClass.DeviceId value) {
        if (deviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDeviceIdsIsMutable();
          deviceIds_.set(index, value);
          onChanged();
        } else {
          deviceIdsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public Builder setDeviceIds(
          int index, context.ContextOuterClass.DeviceId.Builder builderForValue) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          deviceIds_.set(index, builderForValue.build());
          onChanged();
        } else {
          deviceIdsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public Builder addDeviceIds(context.ContextOuterClass.DeviceId value) {
        if (deviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDeviceIdsIsMutable();
          deviceIds_.add(value);
          onChanged();
        } else {
          deviceIdsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public Builder addDeviceIds(
          int index, context.ContextOuterClass.DeviceId value) {
        if (deviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDeviceIdsIsMutable();
          deviceIds_.add(index, value);
          onChanged();
        } else {
          deviceIdsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public Builder addDeviceIds(
          context.ContextOuterClass.DeviceId.Builder builderForValue) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          deviceIds_.add(builderForValue.build());
          onChanged();
        } else {
          deviceIdsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public Builder addDeviceIds(
          int index, context.ContextOuterClass.DeviceId.Builder builderForValue) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          deviceIds_.add(index, builderForValue.build());
          onChanged();
        } else {
          deviceIdsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public Builder addAllDeviceIds(
          java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, deviceIds_);
          onChanged();
        } else {
          deviceIdsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public Builder clearDeviceIds() {
        if (deviceIdsBuilder_ == null) {
          deviceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          deviceIdsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public Builder removeDeviceIds(int index) {
        if (deviceIdsBuilder_ == null) {
          ensureDeviceIdsIsMutable();
          deviceIds_.remove(index);
          onChanged();
        } else {
          deviceIdsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public context.ContextOuterClass.DeviceId.Builder getDeviceIdsBuilder(
          int index) {
        return getDeviceIdsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder(
          int index) {
        if (deviceIdsBuilder_ == null) {
          return deviceIds_.get(index);  } else {
          return deviceIdsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> 
           getDeviceIdsOrBuilderList() {
        if (deviceIdsBuilder_ != null) {
          return deviceIdsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(deviceIds_);
        }
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder() {
        return getDeviceIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.DeviceId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder(
          int index) {
        return getDeviceIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.DeviceId.getDefaultInstance());
      }
      /**
       * <code>repeated .context.DeviceId device_ids = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.DeviceId.Builder> 
           getDeviceIdsBuilderList() {
        return getDeviceIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> 
          getDeviceIdsFieldBuilder() {
        if (deviceIdsBuilder_ == null) {
          deviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>(
                  deviceIds_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          deviceIds_ = null;
        }
        return deviceIdsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.DeviceIdList)
    }

    // @@protoc_insertion_point(class_scope:context.DeviceIdList)
    private static final context.ContextOuterClass.DeviceIdList DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceIdList();
    }

    public static context.ContextOuterClass.DeviceIdList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<DeviceIdList>
        PARSER = new com.google.protobuf.AbstractParser<DeviceIdList>() {
      @java.lang.Override
      public DeviceIdList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DeviceIdList(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<DeviceIdList> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<DeviceIdList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.DeviceIdList getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface DeviceListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.DeviceList)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    java.util.List<context.ContextOuterClass.Device> 
        getDevicesList();
    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    context.ContextOuterClass.Device getDevices(int index);
    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    int getDevicesCount();
    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> 
        getDevicesOrBuilderList();
    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code context.DeviceList}
   */
  public static final class DeviceList extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.DeviceList)
      DeviceListOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeviceList.newBuilder() to construct.
    private DeviceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private DeviceList() {
      devices_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new DeviceList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeviceList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>();
                mutable_bitField0_ |= 0x00000001;
              }
              devices_.add(
                  input.readMessage(context.ContextOuterClass.Device.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          devices_ = java.util.Collections.unmodifiableList(devices_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_DeviceList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_DeviceList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.DeviceList.class, context.ContextOuterClass.DeviceList.Builder.class);
    }

    public static final int DEVICES_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.Device> devices_;
    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.Device> getDevicesList() {
      return devices_;
    }
    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> 
        getDevicesOrBuilderList() {
      return devices_;
    }
    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    @java.lang.Override
    public int getDevicesCount() {
      return devices_.size();
    }
    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.Device getDevices(int index) {
      return devices_.get(index);
    }
    /**
     * <code>repeated .context.Device devices = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder(
        int index) {
      return devices_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < devices_.size(); i++) {
        output.writeMessage(1, devices_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < devices_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, devices_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.DeviceList)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.DeviceList other = (context.ContextOuterClass.DeviceList) obj;

      if (!getDevicesList()
          .equals(other.getDevicesList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getDevicesCount() > 0) {
        hash = (37 * hash) + DEVICES_FIELD_NUMBER;
        hash = (53 * hash) + getDevicesList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.DeviceList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.DeviceList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.DeviceList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.DeviceList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.DeviceList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.DeviceList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.DeviceList)
        context.ContextOuterClass.DeviceListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_DeviceList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_DeviceList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.DeviceList.class, context.ContextOuterClass.DeviceList.Builder.class);
      }

      // Construct using context.ContextOuterClass.DeviceList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getDevicesFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (devicesBuilder_ == null) {
          devices_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          devicesBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_DeviceList_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceList getDefaultInstanceForType() {
        return context.ContextOuterClass.DeviceList.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceList build() {
        context.ContextOuterClass.DeviceList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.DeviceList buildPartial() {
        context.ContextOuterClass.DeviceList result = new context.ContextOuterClass.DeviceList(this);
        int from_bitField0_ = bitField0_;
        if (devicesBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            devices_ = java.util.Collections.unmodifiableList(devices_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.devices_ = devices_;
        } else {
          result.devices_ = devicesBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.DeviceList) {
          return mergeFrom((context.ContextOuterClass.DeviceList)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.DeviceList other) {
        if (other == context.ContextOuterClass.DeviceList.getDefaultInstance()) return this;
        if (devicesBuilder_ == null) {
          if (!other.devices_.isEmpty()) {
            if (devices_.isEmpty()) {
              devices_ = other.devices_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureDevicesIsMutable();
              devices_.addAll(other.devices_);
            }
            onChanged();
          }
        } else {
          if (!other.devices_.isEmpty()) {
            if (devicesBuilder_.isEmpty()) {
              devicesBuilder_.dispose();
              devicesBuilder_ = null;
              devices_ = other.devices_;
              bitField0_ = (bitField0_ & ~0x00000001);
              devicesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getDevicesFieldBuilder() : null;
            } else {
              devicesBuilder_.addAllMessages(other.devices_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.DeviceList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.DeviceList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<context.ContextOuterClass.Device> devices_ =
        java.util.Collections.emptyList();
      private void ensureDevicesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>(devices_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> devicesBuilder_;

      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.Device> getDevicesList() {
        if (devicesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(devices_);
        } else {
          return devicesBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public int getDevicesCount() {
        if (devicesBuilder_ == null) {
          return devices_.size();
        } else {
          return devicesBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public context.ContextOuterClass.Device getDevices(int index) {
        if (devicesBuilder_ == null) {
          return devices_.get(index);
        } else {
          return devicesBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public Builder setDevices(
          int index, context.ContextOuterClass.Device value) {
        if (devicesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDevicesIsMutable();
          devices_.set(index, value);
          onChanged();
        } else {
          devicesBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public Builder setDevices(
          int index, context.ContextOuterClass.Device.Builder builderForValue) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          devices_.set(index, builderForValue.build());
          onChanged();
        } else {
          devicesBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public Builder addDevices(context.ContextOuterClass.Device value) {
        if (devicesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDevicesIsMutable();
          devices_.add(value);
          onChanged();
        } else {
          devicesBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public Builder addDevices(
          int index, context.ContextOuterClass.Device value) {
        if (devicesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureDevicesIsMutable();
          devices_.add(index, value);
          onChanged();
        } else {
          devicesBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public Builder addDevices(
          context.ContextOuterClass.Device.Builder builderForValue) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          devices_.add(builderForValue.build());
          onChanged();
        } else {
          devicesBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public Builder addDevices(
          int index, context.ContextOuterClass.Device.Builder builderForValue) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          devices_.add(index, builderForValue.build());
          onChanged();
        } else {
          devicesBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public Builder addAllDevices(
          java.lang.Iterable<? extends context.ContextOuterClass.Device> values) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, devices_);
          onChanged();
        } else {
          devicesBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public Builder clearDevices() {
        if (devicesBuilder_ == null) {
          devices_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          devicesBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public Builder removeDevices(int index) {
        if (devicesBuilder_ == null) {
          ensureDevicesIsMutable();
          devices_.remove(index);
          onChanged();
        } else {
          devicesBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public context.ContextOuterClass.Device.Builder getDevicesBuilder(
          int index) {
        return getDevicesFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder(
          int index) {
        if (devicesBuilder_ == null) {
          return devices_.get(index);  } else {
          return devicesBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> 
           getDevicesOrBuilderList() {
        if (devicesBuilder_ != null) {
          return devicesBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(devices_);
        }
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public context.ContextOuterClass.Device.Builder addDevicesBuilder() {
        return getDevicesFieldBuilder().addBuilder(
            context.ContextOuterClass.Device.getDefaultInstance());
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public context.ContextOuterClass.Device.Builder addDevicesBuilder(
          int index) {
        return getDevicesFieldBuilder().addBuilder(
            index, context.ContextOuterClass.Device.getDefaultInstance());
      }
      /**
       * <code>repeated .context.Device devices = 1;</code>
       */
      public java.util.List<context.ContextOuterClass.Device.Builder> 
           getDevicesBuilderList() {
        return getDevicesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> 
          getDevicesFieldBuilder() {
        if (devicesBuilder_ == null) {
          devicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder>(
                  devices_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          devices_ = null;
        }
        return devicesBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.DeviceList)
    }

    // @@protoc_insertion_point(class_scope:context.DeviceList)
    private static final context.ContextOuterClass.DeviceList DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceList();
    }

    public static context.ContextOuterClass.DeviceList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<DeviceList>
        PARSER = new com.google.protobuf.AbstractParser<DeviceList>() {
      @java.lang.Override
      public DeviceList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DeviceList(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<DeviceList> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<DeviceList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.DeviceList getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

famelis's avatar
famelis committed
  public interface DeviceFilterOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.DeviceFilter)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>.context.DeviceIdList device_ids = 1;</code>
     * @return Whether the deviceIds field is set.
famelis's avatar
famelis committed
    boolean hasDeviceIds();
famelis's avatar
famelis committed
     * <code>.context.DeviceIdList device_ids = 1;</code>
     * @return The deviceIds.
famelis's avatar
famelis committed
    context.ContextOuterClass.DeviceIdList getDeviceIds();
famelis's avatar
famelis committed
     * <code>.context.DeviceIdList device_ids = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.DeviceIdListOrBuilder getDeviceIdsOrBuilder();
famelis's avatar
famelis committed
     * <code>bool include_endpoints = 2;</code>
     * @return The includeEndpoints.
famelis's avatar
famelis committed
    boolean getIncludeEndpoints();
famelis's avatar
famelis committed
     * <code>bool include_config_rules = 3;</code>
     * @return The includeConfigRules.
famelis's avatar
famelis committed
    boolean getIncludeConfigRules();

famelis's avatar
famelis committed
     * <code>bool include_components = 4;</code>
     * @return The includeComponents.
famelis's avatar
famelis committed
    boolean getIncludeComponents();
famelis's avatar
famelis committed
   * Protobuf type {@code context.DeviceFilter}
famelis's avatar
famelis committed
  public static final class DeviceFilter extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.DeviceFilter)
      DeviceFilterOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use DeviceFilter.newBuilder() to construct.
    private DeviceFilter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private DeviceFilter() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new DeviceFilter();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private DeviceFilter(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
famelis's avatar
famelis committed
              context.ContextOuterClass.DeviceIdList.Builder subBuilder = null;
              if (deviceIds_ != null) {
                subBuilder = deviceIds_.toBuilder();
famelis's avatar
famelis committed
              deviceIds_ = input.readMessage(context.ContextOuterClass.DeviceIdList.parser(), extensionRegistry);
              if (subBuilder != null) {
famelis's avatar
famelis committed
                subBuilder.mergeFrom(deviceIds_);
                deviceIds_ = subBuilder.buildPartial();
famelis's avatar
famelis committed
            case 16: {
famelis's avatar
famelis committed
              includeEndpoints_ = input.readBool();
famelis's avatar
famelis committed
            case 24: {
famelis's avatar
famelis committed
              includeConfigRules_ = input.readBool();
              break;
            }
            case 32: {

              includeComponents_ = input.readBool();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_DeviceFilter_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_DeviceFilter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.DeviceFilter.class, context.ContextOuterClass.DeviceFilter.Builder.class);
famelis's avatar
famelis committed
    public static final int DEVICE_IDS_FIELD_NUMBER = 1;
    private context.ContextOuterClass.DeviceIdList deviceIds_;
famelis's avatar
famelis committed
     * <code>.context.DeviceIdList device_ids = 1;</code>
     * @return Whether the deviceIds field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasDeviceIds() {
      return deviceIds_ != null;
famelis's avatar
famelis committed
     * <code>.context.DeviceIdList device_ids = 1;</code>
     * @return The deviceIds.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.DeviceIdList getDeviceIds() {
      return deviceIds_ == null ? context.ContextOuterClass.DeviceIdList.getDefaultInstance() : deviceIds_;
famelis's avatar
famelis committed
     * <code>.context.DeviceIdList device_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.DeviceIdListOrBuilder getDeviceIdsOrBuilder() {
      return getDeviceIds();
famelis's avatar
famelis committed
    public static final int INCLUDE_ENDPOINTS_FIELD_NUMBER = 2;
    private boolean includeEndpoints_;
famelis's avatar
famelis committed
     * <code>bool include_endpoints = 2;</code>
     * @return The includeEndpoints.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean getIncludeEndpoints() {
      return includeEndpoints_;
famelis's avatar
famelis committed
    public static final int INCLUDE_CONFIG_RULES_FIELD_NUMBER = 3;
    private boolean includeConfigRules_;
famelis's avatar
famelis committed
     * <code>bool include_config_rules = 3;</code>
     * @return The includeConfigRules.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean getIncludeConfigRules() {
      return includeConfigRules_;
famelis's avatar
famelis committed

    public static final int INCLUDE_COMPONENTS_FIELD_NUMBER = 4;
    private boolean includeComponents_;
famelis's avatar
famelis committed
     * <code>bool include_components = 4;</code>
     * @return The includeComponents.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean getIncludeComponents() {
      return includeComponents_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      if (deviceIds_ != null) {
        output.writeMessage(1, getDeviceIds());
famelis's avatar
famelis committed
      if (includeEndpoints_ != false) {
        output.writeBool(2, includeEndpoints_);
famelis's avatar
famelis committed
      if (includeConfigRules_ != false) {
        output.writeBool(3, includeConfigRules_);
      }
      if (includeComponents_ != false) {
        output.writeBool(4, includeComponents_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      if (deviceIds_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, getDeviceIds());
famelis's avatar
famelis committed
      if (includeEndpoints_ != false) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeBoolSize(2, includeEndpoints_);
famelis's avatar
famelis committed
      if (includeConfigRules_ != false) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeBoolSize(3, includeConfigRules_);
      }
      if (includeComponents_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(4, includeComponents_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.DeviceFilter)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.DeviceFilter other = (context.ContextOuterClass.DeviceFilter) obj;
famelis's avatar
famelis committed
      if (hasDeviceIds() != other.hasDeviceIds()) return false;
      if (hasDeviceIds()) {
        if (!getDeviceIds()
            .equals(other.getDeviceIds())) return false;
famelis's avatar
famelis committed
      if (getIncludeEndpoints()
          != other.getIncludeEndpoints()) return false;
      if (getIncludeConfigRules()
          != other.getIncludeConfigRules()) return false;
      if (getIncludeComponents()
          != other.getIncludeComponents()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (hasDeviceIds()) {
        hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getDeviceIds().hashCode();
famelis's avatar
famelis committed
      hash = (37 * hash) + INCLUDE_ENDPOINTS_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getIncludeEndpoints());
      hash = (37 * hash) + INCLUDE_CONFIG_RULES_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getIncludeConfigRules());
      hash = (37 * hash) + INCLUDE_COMPONENTS_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getIncludeComponents());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.DeviceFilter prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.DeviceFilter}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.DeviceFilter)
        context.ContextOuterClass.DeviceFilterOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_DeviceFilter_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_DeviceFilter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.DeviceFilter.class, context.ContextOuterClass.DeviceFilter.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.DeviceFilter.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (deviceIdsBuilder_ == null) {
          deviceIds_ = null;
famelis's avatar
famelis committed
          deviceIds_ = null;
          deviceIdsBuilder_ = null;
famelis's avatar
famelis committed
        includeEndpoints_ = false;

        includeConfigRules_ = false;

        includeComponents_ = false;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_DeviceFilter_descriptor;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.DeviceFilter getDefaultInstanceForType() {
        return context.ContextOuterClass.DeviceFilter.getDefaultInstance();
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.DeviceFilter build() {
        context.ContextOuterClass.DeviceFilter result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.DeviceFilter buildPartial() {
        context.ContextOuterClass.DeviceFilter result = new context.ContextOuterClass.DeviceFilter(this);
        if (deviceIdsBuilder_ == null) {
          result.deviceIds_ = deviceIds_;
famelis's avatar
famelis committed
          result.deviceIds_ = deviceIdsBuilder_.build();
famelis's avatar
famelis committed
        result.includeEndpoints_ = includeEndpoints_;
        result.includeConfigRules_ = includeConfigRules_;
        result.includeComponents_ = includeComponents_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.DeviceFilter) {
          return mergeFrom((context.ContextOuterClass.DeviceFilter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.DeviceFilter other) {
        if (other == context.ContextOuterClass.DeviceFilter.getDefaultInstance()) return this;
        if (other.hasDeviceIds()) {
          mergeDeviceIds(other.getDeviceIds());
famelis's avatar
famelis committed
        if (other.getIncludeEndpoints() != false) {
          setIncludeEndpoints(other.getIncludeEndpoints());
famelis's avatar
famelis committed
        if (other.getIncludeConfigRules() != false) {
          setIncludeConfigRules(other.getIncludeConfigRules());
        }
        if (other.getIncludeComponents() != false) {
          setIncludeComponents(other.getIncludeComponents());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.DeviceFilter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.DeviceFilter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

famelis's avatar
famelis committed
      private context.ContextOuterClass.DeviceIdList deviceIds_;
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.DeviceIdList, context.ContextOuterClass.DeviceIdList.Builder, context.ContextOuterClass.DeviceIdListOrBuilder> deviceIdsBuilder_;
famelis's avatar
famelis committed
       * <code>.context.DeviceIdList device_ids = 1;</code>
       * @return Whether the deviceIds field is set.
famelis's avatar
famelis committed
      public boolean hasDeviceIds() {
        return deviceIdsBuilder_ != null || deviceIds_ != null;
famelis's avatar
famelis committed
       * <code>.context.DeviceIdList device_ids = 1;</code>
       * @return The deviceIds.
famelis's avatar
famelis committed
      public context.ContextOuterClass.DeviceIdList getDeviceIds() {
        if (deviceIdsBuilder_ == null) {
          return deviceIds_ == null ? context.ContextOuterClass.DeviceIdList.getDefaultInstance() : deviceIds_;
famelis's avatar
famelis committed
          return deviceIdsBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.DeviceIdList device_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder setDeviceIds(context.ContextOuterClass.DeviceIdList value) {
        if (deviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          deviceIds_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          deviceIdsBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.DeviceIdList device_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder setDeviceIds(
          context.ContextOuterClass.DeviceIdList.Builder builderForValue) {
        if (deviceIdsBuilder_ == null) {
          deviceIds_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          deviceIdsBuilder_.setMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>.context.DeviceIdList device_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder mergeDeviceIds(context.ContextOuterClass.DeviceIdList value) {
        if (deviceIdsBuilder_ == null) {
          if (deviceIds_ != null) {
            deviceIds_ =
              context.ContextOuterClass.DeviceIdList.newBuilder(deviceIds_).mergeFrom(value).buildPartial();
famelis's avatar
famelis committed
            deviceIds_ = value;
          }
          onChanged();
        } else {
famelis's avatar
famelis committed
          deviceIdsBuilder_.mergeFrom(value);
famelis's avatar
famelis committed
       * <code>.context.DeviceIdList device_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder clearDeviceIds() {
        if (deviceIdsBuilder_ == null) {
          deviceIds_ = null;
          onChanged();
        } else {
famelis's avatar
famelis committed
          deviceIds_ = null;
          deviceIdsBuilder_ = null;
famelis's avatar
famelis committed
       * <code>.context.DeviceIdList device_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.DeviceIdList.Builder getDeviceIdsBuilder() {
famelis's avatar
famelis committed
        return getDeviceIdsFieldBuilder().getBuilder();
famelis's avatar
famelis committed
       * <code>.context.DeviceIdList device_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.DeviceIdListOrBuilder getDeviceIdsOrBuilder() {
        if (deviceIdsBuilder_ != null) {
          return deviceIdsBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return deviceIds_ == null ?
              context.ContextOuterClass.DeviceIdList.getDefaultInstance() : deviceIds_;
famelis's avatar
famelis committed
       * <code>.context.DeviceIdList device_ids = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.DeviceIdList, context.ContextOuterClass.DeviceIdList.Builder, context.ContextOuterClass.DeviceIdListOrBuilder> 
          getDeviceIdsFieldBuilder() {
        if (deviceIdsBuilder_ == null) {
          deviceIdsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.DeviceIdList, context.ContextOuterClass.DeviceIdList.Builder, context.ContextOuterClass.DeviceIdListOrBuilder>(
                  getDeviceIds(),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          deviceIds_ = null;
famelis's avatar
famelis committed
        return deviceIdsBuilder_;
famelis's avatar
famelis committed
      private boolean includeEndpoints_ ;
famelis's avatar
famelis committed
       * <code>bool include_endpoints = 2;</code>
       * @return The includeEndpoints.
famelis's avatar
famelis committed
      @java.lang.Override
      public boolean getIncludeEndpoints() {
        return includeEndpoints_;
famelis's avatar
famelis committed
       * <code>bool include_endpoints = 2;</code>
       * @param value The includeEndpoints to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setIncludeEndpoints(boolean value) {
        
        includeEndpoints_ = value;
        onChanged();
famelis's avatar
famelis committed
       * <code>bool include_endpoints = 2;</code>
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder clearIncludeEndpoints() {
        
        includeEndpoints_ = false;
        onChanged();
famelis's avatar
famelis committed
      private boolean includeConfigRules_ ;
famelis's avatar
famelis committed
       * <code>bool include_config_rules = 3;</code>
       * @return The includeConfigRules.
famelis's avatar
famelis committed
      @java.lang.Override
      public boolean getIncludeConfigRules() {
        return includeConfigRules_;
famelis's avatar
famelis committed
       * <code>bool include_config_rules = 3;</code>
       * @param value The includeConfigRules to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setIncludeConfigRules(boolean value) {
famelis's avatar
famelis committed
        includeConfigRules_ = value;
        onChanged();
        return this;
      }
      /**
famelis's avatar
famelis committed
       * <code>bool include_config_rules = 3;</code>
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder clearIncludeConfigRules() {
        
        includeConfigRules_ = false;
        onChanged();
famelis's avatar
famelis committed
      private boolean includeComponents_ ;
famelis's avatar
famelis committed
       * <code>bool include_components = 4;</code>
       * @return The includeComponents.
famelis's avatar
famelis committed
      @java.lang.Override
      public boolean getIncludeComponents() {
        return includeComponents_;
famelis's avatar
famelis committed
       * <code>bool include_components = 4;</code>
       * @param value The includeComponents to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setIncludeComponents(boolean value) {
famelis's avatar
famelis committed
        includeComponents_ = value;
        onChanged();
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
       * <code>bool include_components = 4;</code>
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder clearIncludeComponents() {
        
        includeComponents_ = false;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.DeviceFilter)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.DeviceFilter)
    private static final context.ContextOuterClass.DeviceFilter DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceFilter();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceFilter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<DeviceFilter>
        PARSER = new com.google.protobuf.AbstractParser<DeviceFilter>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public DeviceFilter parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new DeviceFilter(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<DeviceFilter> parser() {
      return PARSER;
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<DeviceFilter> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.DeviceFilter getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface DeviceEventOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.DeviceEvent)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
famelis's avatar
famelis committed
    boolean hasEvent();
famelis's avatar
famelis committed
     * <code>.context.Event event = 1;</code>
     * @return The event.
famelis's avatar
famelis committed
    context.ContextOuterClass.Event getEvent();
famelis's avatar
famelis committed
     * <code>.context.Event event = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.EventOrBuilder getEventOrBuilder();

    /**
     * <code>.context.DeviceId device_id = 2;</code>
     * @return Whether the deviceId field is set.
     */
    boolean hasDeviceId();
    /**
     * <code>.context.DeviceId device_id = 2;</code>
     * @return The deviceId.
     */
    context.ContextOuterClass.DeviceId getDeviceId();
    /**
     * <code>.context.DeviceId device_id = 2;</code>
     */
    context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder();

    /**
     * <code>.context.DeviceConfig device_config = 3;</code>
     * @return Whether the deviceConfig field is set.
     */
    boolean hasDeviceConfig();
    /**
     * <code>.context.DeviceConfig device_config = 3;</code>
     * @return The deviceConfig.
     */
    context.ContextOuterClass.DeviceConfig getDeviceConfig();
    /**
     * <code>.context.DeviceConfig device_config = 3;</code>
     */
    context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder();
famelis's avatar
famelis committed
   * Protobuf type {@code context.DeviceEvent}
famelis's avatar
famelis committed
  public static final class DeviceEvent extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.DeviceEvent)
      DeviceEventOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use DeviceEvent.newBuilder() to construct.
    private DeviceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private DeviceEvent() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new DeviceEvent();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private DeviceEvent(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
famelis's avatar
famelis committed
              context.ContextOuterClass.Event.Builder subBuilder = null;
              if (event_ != null) {
                subBuilder = event_.toBuilder();
famelis's avatar
famelis committed
              event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry);
              if (subBuilder != null) {
famelis's avatar
famelis committed
                subBuilder.mergeFrom(event_);
                event_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              context.ContextOuterClass.DeviceId.Builder subBuilder = null;
              if (deviceId_ != null) {
                subBuilder = deviceId_.toBuilder();
              }
              deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(deviceId_);
                deviceId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 26: {
              context.ContextOuterClass.DeviceConfig.Builder subBuilder = null;
              if (deviceConfig_ != null) {
                subBuilder = deviceConfig_.toBuilder();
              }
              deviceConfig_ = input.readMessage(context.ContextOuterClass.DeviceConfig.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(deviceConfig_);
                deviceConfig_ = subBuilder.buildPartial();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class);
famelis's avatar
famelis committed
    public static final int EVENT_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Event event_;
famelis's avatar
famelis committed
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasEvent() {
      return event_ != null;
famelis's avatar
famelis committed
     * <code>.context.Event event = 1;</code>
     * @return The event.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.Event getEvent() {
      return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
famelis's avatar
famelis committed
     * <code>.context.Event event = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
      return getEvent();
    }

    public static final int DEVICE_ID_FIELD_NUMBER = 2;
    private context.ContextOuterClass.DeviceId deviceId_;
    /**
     * <code>.context.DeviceId device_id = 2;</code>
     * @return Whether the deviceId field is set.
     */
    @java.lang.Override
    public boolean hasDeviceId() {
      return deviceId_ != null;
    }
    /**
     * <code>.context.DeviceId device_id = 2;</code>
     * @return The deviceId.
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceId getDeviceId() {
      return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_;
    }
    /**
     * <code>.context.DeviceId device_id = 2;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() {
      return getDeviceId();
    }

    public static final int DEVICE_CONFIG_FIELD_NUMBER = 3;
    private context.ContextOuterClass.DeviceConfig deviceConfig_;
    /**
     * <code>.context.DeviceConfig device_config = 3;</code>
     * @return Whether the deviceConfig field is set.
     */
    @java.lang.Override
    public boolean hasDeviceConfig() {
      return deviceConfig_ != null;
    }
    /**
     * <code>.context.DeviceConfig device_config = 3;</code>
     * @return The deviceConfig.
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceConfig getDeviceConfig() {
      return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_;
    }
    /**
     * <code>.context.DeviceConfig device_config = 3;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() {
      return getDeviceConfig();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      if (event_ != null) {
        output.writeMessage(1, getEvent());
famelis's avatar
famelis committed
      if (deviceId_ != null) {
        output.writeMessage(2, getDeviceId());
      }
      if (deviceConfig_ != null) {
        output.writeMessage(3, getDeviceConfig());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      if (event_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, getEvent());
      }
      if (deviceId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getDeviceId());
      }
      if (deviceConfig_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, getDeviceConfig());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.DeviceEvent)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.DeviceEvent other = (context.ContextOuterClass.DeviceEvent) obj;
famelis's avatar
famelis committed
      if (hasEvent() != other.hasEvent()) return false;
      if (hasEvent()) {
        if (!getEvent()
            .equals(other.getEvent())) return false;
      }
      if (hasDeviceId() != other.hasDeviceId()) return false;
      if (hasDeviceId()) {
        if (!getDeviceId()
            .equals(other.getDeviceId())) return false;
      }
      if (hasDeviceConfig() != other.hasDeviceConfig()) return false;
      if (hasDeviceConfig()) {
        if (!getDeviceConfig()
            .equals(other.getDeviceConfig())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (hasEvent()) {
        hash = (37 * hash) + EVENT_FIELD_NUMBER;
        hash = (53 * hash) + getEvent().hashCode();
      }
      if (hasDeviceId()) {
        hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER;
        hash = (53 * hash) + getDeviceId().hashCode();
      }
      if (hasDeviceConfig()) {
        hash = (37 * hash) + DEVICE_CONFIG_FIELD_NUMBER;
        hash = (53 * hash) + getDeviceConfig().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.DeviceEvent parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.DeviceEvent prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.DeviceEvent}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.DeviceEvent)
        context.ContextOuterClass.DeviceEventOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.DeviceEvent.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (eventBuilder_ == null) {
          event_ = null;
famelis's avatar
famelis committed
          event_ = null;
          eventBuilder_ = null;
        }
        if (deviceIdBuilder_ == null) {
          deviceId_ = null;
        } else {
          deviceId_ = null;
          deviceIdBuilder_ = null;
        }
        if (deviceConfigBuilder_ == null) {
          deviceConfig_ = null;
        } else {
          deviceConfig_ = null;
          deviceConfigBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() {
        return context.ContextOuterClass.DeviceEvent.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.DeviceEvent build() {
        context.ContextOuterClass.DeviceEvent result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.DeviceEvent buildPartial() {
        context.ContextOuterClass.DeviceEvent result = new context.ContextOuterClass.DeviceEvent(this);
        if (eventBuilder_ == null) {
          result.event_ = event_;
famelis's avatar
famelis committed
          result.event_ = eventBuilder_.build();
        }
        if (deviceIdBuilder_ == null) {
          result.deviceId_ = deviceId_;
        } else {
          result.deviceId_ = deviceIdBuilder_.build();
        }
        if (deviceConfigBuilder_ == null) {
          result.deviceConfig_ = deviceConfig_;
        } else {
          result.deviceConfig_ = deviceConfigBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.DeviceEvent) {
          return mergeFrom((context.ContextOuterClass.DeviceEvent)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.DeviceEvent other) {
        if (other == context.ContextOuterClass.DeviceEvent.getDefaultInstance()) return this;
        if (other.hasEvent()) {
          mergeEvent(other.getEvent());
        }
        if (other.hasDeviceId()) {
          mergeDeviceId(other.getDeviceId());
        }
        if (other.hasDeviceConfig()) {
          mergeDeviceConfig(other.getDeviceConfig());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.DeviceEvent parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.DeviceEvent) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

famelis's avatar
famelis committed
      private context.ContextOuterClass.Event event_;
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_;
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
       * @return Whether the event field is set.
famelis's avatar
famelis committed
      public boolean hasEvent() {
        return eventBuilder_ != null || event_ != null;
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
       * @return The event.
famelis's avatar
famelis committed
      public context.ContextOuterClass.Event getEvent() {
        if (eventBuilder_ == null) {
          return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
famelis's avatar
famelis committed
          return eventBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
famelis's avatar
famelis committed
      public Builder setEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          event_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          eventBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
famelis's avatar
famelis committed
      public Builder setEvent(
          context.ContextOuterClass.Event.Builder builderForValue) {
        if (eventBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          eventBuilder_.setMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
famelis's avatar
famelis committed
      public Builder mergeEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (event_ != null) {
            event_ =
              context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial();
famelis's avatar
famelis committed
            event_ = value;
          }
          onChanged();
        } else {
famelis's avatar
famelis committed
          eventBuilder_.mergeFrom(value);
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
famelis's avatar
famelis committed
      public Builder clearEvent() {
        if (eventBuilder_ == null) {
          event_ = null;
          onChanged();
        } else {
famelis's avatar
famelis committed
          event_ = null;
          eventBuilder_ = null;
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Event.Builder getEventBuilder() {
famelis's avatar
famelis committed
        return getEventFieldBuilder().getBuilder();
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
        if (eventBuilder_ != null) {
          return eventBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return event_ == null ?
              context.ContextOuterClass.Event.getDefaultInstance() : event_;
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> 
          getEventFieldBuilder() {
        if (eventBuilder_ == null) {
          eventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder>(
                  getEvent(),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          event_ = null;
famelis's avatar
famelis committed
        return eventBuilder_;
famelis's avatar
famelis committed
      private context.ContextOuterClass.DeviceId deviceId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_;
      /**
       * <code>.context.DeviceId device_id = 2;</code>
       * @return Whether the deviceId field is set.
       */
      public boolean hasDeviceId() {
        return deviceIdBuilder_ != null || deviceId_ != null;
famelis's avatar
famelis committed
      /**
       * <code>.context.DeviceId device_id = 2;</code>
       * @return The deviceId.
       */
      public context.ContextOuterClass.DeviceId getDeviceId() {
        if (deviceIdBuilder_ == null) {
          return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_;
        } else {
          return deviceIdBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.DeviceId device_id = 2;</code>
       */
      public Builder setDeviceId(context.ContextOuterClass.DeviceId value) {
        if (deviceIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          deviceId_ = value;
          onChanged();
        } else {
          deviceIdBuilder_.setMessage(value);
        }
famelis's avatar
famelis committed
        return this;
      }
      /**
       * <code>.context.DeviceId device_id = 2;</code>
       */
      public Builder setDeviceId(
          context.ContextOuterClass.DeviceId.Builder builderForValue) {
        if (deviceIdBuilder_ == null) {
          deviceId_ = builderForValue.build();
          onChanged();
        } else {
          deviceIdBuilder_.setMessage(builderForValue.build());
        }
famelis's avatar
famelis committed
        return this;
      }
      /**
       * <code>.context.DeviceId device_id = 2;</code>
       */
      public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) {
        if (deviceIdBuilder_ == null) {
          if (deviceId_ != null) {
            deviceId_ =
              context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial();
          } else {
            deviceId_ = value;
          }
          onChanged();
        } else {
          deviceIdBuilder_.mergeFrom(value);
        }
famelis's avatar
famelis committed
        return this;
      }
      /**
       * <code>.context.DeviceId device_id = 2;</code>
       */
      public Builder clearDeviceId() {
        if (deviceIdBuilder_ == null) {
          deviceId_ = null;
          onChanged();
        } else {
          deviceId_ = null;
          deviceIdBuilder_ = null;
        }
famelis's avatar
famelis committed
        return this;
      }
      /**
       * <code>.context.DeviceId device_id = 2;</code>
       */
      public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() {
        
        onChanged();
        return getDeviceIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.DeviceId device_id = 2;</code>
       */
      public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() {
        if (deviceIdBuilder_ != null) {
          return deviceIdBuilder_.getMessageOrBuilder();
        } else {
          return deviceId_ == null ?
              context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_;
        }
      }
      /**
       * <code>.context.DeviceId device_id = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> 
          getDeviceIdFieldBuilder() {
        if (deviceIdBuilder_ == null) {
          deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>(
                  getDeviceId(),
                  getParentForChildren(),
                  isClean());
          deviceId_ = null;
        }
        return deviceIdBuilder_;
famelis's avatar
famelis committed
      private context.ContextOuterClass.DeviceConfig deviceConfig_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> deviceConfigBuilder_;
      /**
       * <code>.context.DeviceConfig device_config = 3;</code>
       * @return Whether the deviceConfig field is set.
       */
      public boolean hasDeviceConfig() {
        return deviceConfigBuilder_ != null || deviceConfig_ != null;
      }
      /**
       * <code>.context.DeviceConfig device_config = 3;</code>
       * @return The deviceConfig.
       */
      public context.ContextOuterClass.DeviceConfig getDeviceConfig() {
        if (deviceConfigBuilder_ == null) {
          return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_;
        } else {
          return deviceConfigBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.DeviceConfig device_config = 3;</code>
       */
      public Builder setDeviceConfig(context.ContextOuterClass.DeviceConfig value) {
        if (deviceConfigBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          deviceConfig_ = value;
          onChanged();
        } else {
          deviceConfigBuilder_.setMessage(value);
        }
famelis's avatar
famelis committed
        return this;
      }
      /**
       * <code>.context.DeviceConfig device_config = 3;</code>
       */
      public Builder setDeviceConfig(
          context.ContextOuterClass.DeviceConfig.Builder builderForValue) {
        if (deviceConfigBuilder_ == null) {
          deviceConfig_ = builderForValue.build();
          onChanged();
        } else {
          deviceConfigBuilder_.setMessage(builderForValue.build());
        }
famelis's avatar
famelis committed
        return this;
      }
      /**
       * <code>.context.DeviceConfig device_config = 3;</code>
       */
      public Builder mergeDeviceConfig(context.ContextOuterClass.DeviceConfig value) {
        if (deviceConfigBuilder_ == null) {
          if (deviceConfig_ != null) {
            deviceConfig_ =
              context.ContextOuterClass.DeviceConfig.newBuilder(deviceConfig_).mergeFrom(value).buildPartial();
          } else {
            deviceConfig_ = value;
          }
          onChanged();
        } else {
          deviceConfigBuilder_.mergeFrom(value);
        }
famelis's avatar
famelis committed
        return this;
      }
      /**
       * <code>.context.DeviceConfig device_config = 3;</code>
       */
      public Builder clearDeviceConfig() {
        if (deviceConfigBuilder_ == null) {
          deviceConfig_ = null;
          onChanged();
        } else {
          deviceConfig_ = null;
          deviceConfigBuilder_ = null;
        }
famelis's avatar
famelis committed
        return this;
      }
      /**
       * <code>.context.DeviceConfig device_config = 3;</code>
       */
      public context.ContextOuterClass.DeviceConfig.Builder getDeviceConfigBuilder() {
        
        onChanged();
        return getDeviceConfigFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.DeviceConfig device_config = 3;</code>
       */
      public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() {
        if (deviceConfigBuilder_ != null) {
          return deviceConfigBuilder_.getMessageOrBuilder();
        } else {
          return deviceConfig_ == null ?
              context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_;
        }
      }
      /**
       * <code>.context.DeviceConfig device_config = 3;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> 
          getDeviceConfigFieldBuilder() {
        if (deviceConfigBuilder_ == null) {
          deviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder>(
                  getDeviceConfig(),
                  getParentForChildren(),
                  isClean());
          deviceConfig_ = null;
        }
        return deviceConfigBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
famelis's avatar
famelis committed
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
famelis's avatar
famelis committed

      // @@protoc_insertion_point(builder_scope:context.DeviceEvent)
    }

    // @@protoc_insertion_point(class_scope:context.DeviceEvent)
    private static final context.ContextOuterClass.DeviceEvent DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceEvent();
    }

    public static context.ContextOuterClass.DeviceEvent getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<DeviceEvent>
        PARSER = new com.google.protobuf.AbstractParser<DeviceEvent>() {
      @java.lang.Override
      public DeviceEvent parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DeviceEvent(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<DeviceEvent> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<DeviceEvent> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface LinkIdOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.LinkId)
      com.google.protobuf.MessageOrBuilder {
famelis's avatar
famelis committed
     * <code>.context.Uuid link_uuid = 1;</code>
     * @return Whether the linkUuid field is set.
famelis's avatar
famelis committed
    boolean hasLinkUuid();
famelis's avatar
famelis committed
     * <code>.context.Uuid link_uuid = 1;</code>
     * @return The linkUuid.
famelis's avatar
famelis committed
    context.ContextOuterClass.Uuid getLinkUuid();
famelis's avatar
famelis committed
     * <code>.context.Uuid link_uuid = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder();
famelis's avatar
famelis committed
   * <pre>
   * ----- Link ----------------------------------------------------------------------------------------------------------
   * </pre>
   *
   * Protobuf type {@code context.LinkId}
famelis's avatar
famelis committed
  public static final class LinkId extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.LinkId)
      LinkIdOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use LinkId.newBuilder() to construct.
    private LinkId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private LinkId() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new LinkId();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private LinkId(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
famelis's avatar
famelis committed
              context.ContextOuterClass.Uuid.Builder subBuilder = null;
              if (linkUuid_ != null) {
                subBuilder = linkUuid_.toBuilder();
famelis's avatar
famelis committed
              linkUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry);
              if (subBuilder != null) {
famelis's avatar
famelis committed
                subBuilder.mergeFrom(linkUuid_);
                linkUuid_ = subBuilder.buildPartial();
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_LinkId_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class);
famelis's avatar
famelis committed
    public static final int LINK_UUID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Uuid linkUuid_;
famelis's avatar
famelis committed
     * <code>.context.Uuid link_uuid = 1;</code>
     * @return Whether the linkUuid field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasLinkUuid() {
      return linkUuid_ != null;
famelis's avatar
famelis committed
     * <code>.context.Uuid link_uuid = 1;</code>
     * @return The linkUuid.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.Uuid getLinkUuid() {
      return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_;
famelis's avatar
famelis committed
     * <code>.context.Uuid link_uuid = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() {
      return getLinkUuid();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      if (linkUuid_ != null) {
        output.writeMessage(1, getLinkUuid());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      if (linkUuid_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, getLinkUuid());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.LinkId)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.LinkId other = (context.ContextOuterClass.LinkId) obj;
famelis's avatar
famelis committed
      if (hasLinkUuid() != other.hasLinkUuid()) return false;
      if (hasLinkUuid()) {
        if (!getLinkUuid()
            .equals(other.getLinkUuid())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (hasLinkUuid()) {
        hash = (37 * hash) + LINK_UUID_FIELD_NUMBER;
        hash = (53 * hash) + getLinkUuid().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.LinkId prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * <pre>
     * ----- Link ----------------------------------------------------------------------------------------------------------
     * </pre>
     *
     * Protobuf type {@code context.LinkId}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.LinkId)
        context.ContextOuterClass.LinkIdOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkId_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.LinkId.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (linkUuidBuilder_ == null) {
          linkUuid_ = null;
famelis's avatar
famelis committed
          linkUuid_ = null;
          linkUuidBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkId_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId getDefaultInstanceForType() {
        return context.ContextOuterClass.LinkId.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId build() {
        context.ContextOuterClass.LinkId result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId buildPartial() {
        context.ContextOuterClass.LinkId result = new context.ContextOuterClass.LinkId(this);
        if (linkUuidBuilder_ == null) {
          result.linkUuid_ = linkUuid_;
famelis's avatar
famelis committed
          result.linkUuid_ = linkUuidBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.LinkId) {
          return mergeFrom((context.ContextOuterClass.LinkId)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.LinkId other) {
        if (other == context.ContextOuterClass.LinkId.getDefaultInstance()) return this;
        if (other.hasLinkUuid()) {
          mergeLinkUuid(other.getLinkUuid());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.LinkId parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.LinkId) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

famelis's avatar
famelis committed
      private context.ContextOuterClass.Uuid linkUuid_;
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> linkUuidBuilder_;
famelis's avatar
famelis committed
       * <code>.context.Uuid link_uuid = 1;</code>
       * @return Whether the linkUuid field is set.
famelis's avatar
famelis committed
      public boolean hasLinkUuid() {
        return linkUuidBuilder_ != null || linkUuid_ != null;
famelis's avatar
famelis committed
       * <code>.context.Uuid link_uuid = 1;</code>
       * @return The linkUuid.
famelis's avatar
famelis committed
      public context.ContextOuterClass.Uuid getLinkUuid() {
        if (linkUuidBuilder_ == null) {
          return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_;
famelis's avatar
famelis committed
          return linkUuidBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.Uuid link_uuid = 1;</code>
famelis's avatar
famelis committed
      public Builder setLinkUuid(context.ContextOuterClass.Uuid value) {
        if (linkUuidBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          linkUuid_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkUuidBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.Uuid link_uuid = 1;</code>
famelis's avatar
famelis committed
      public Builder setLinkUuid(
          context.ContextOuterClass.Uuid.Builder builderForValue) {
        if (linkUuidBuilder_ == null) {
          linkUuid_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkUuidBuilder_.setMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>.context.Uuid link_uuid = 1;</code>
famelis's avatar
famelis committed
      public Builder mergeLinkUuid(context.ContextOuterClass.Uuid value) {
        if (linkUuidBuilder_ == null) {
          if (linkUuid_ != null) {
            linkUuid_ =
              context.ContextOuterClass.Uuid.newBuilder(linkUuid_).mergeFrom(value).buildPartial();
famelis's avatar
famelis committed
            linkUuid_ = value;
          }
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkUuidBuilder_.mergeFrom(value);
famelis's avatar
famelis committed
       * <code>.context.Uuid link_uuid = 1;</code>
famelis's avatar
famelis committed
      public Builder clearLinkUuid() {
        if (linkUuidBuilder_ == null) {
          linkUuid_ = null;
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkUuid_ = null;
          linkUuidBuilder_ = null;
famelis's avatar
famelis committed
       * <code>.context.Uuid link_uuid = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Uuid.Builder getLinkUuidBuilder() {
famelis's avatar
famelis committed
        return getLinkUuidFieldBuilder().getBuilder();
famelis's avatar
famelis committed
       * <code>.context.Uuid link_uuid = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() {
        if (linkUuidBuilder_ != null) {
          return linkUuidBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return linkUuid_ == null ?
              context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_;
famelis's avatar
famelis committed
       * <code>.context.Uuid link_uuid = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> 
          getLinkUuidFieldBuilder() {
        if (linkUuidBuilder_ == null) {
          linkUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>(
                  getLinkUuid(),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          linkUuid_ = null;
famelis's avatar
famelis committed
        return linkUuidBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.LinkId)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.LinkId)
    private static final context.ContextOuterClass.LinkId DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.LinkId();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkId getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<LinkId>
        PARSER = new com.google.protobuf.AbstractParser<LinkId>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public LinkId parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new LinkId(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<LinkId> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<LinkId> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkId getDefaultInstanceForType() {
24534 24535 24536 24537 24538 24539 24540 24541 24542 24543 24544 24545 24546 24547 24548 24549 24550 24551 24552 24553 24554 24555 24556 24557 24558 24559 24560 24561 24562 24563 24564 24565 24566 24567 24568 24569 24570 24571 24572 24573 24574 24575 24576 24577 24578 24579 24580 24581 24582 24583 24584 24585 24586 24587 24588 24589 24590 24591 24592 24593 24594 24595 24596 24597 24598 24599 24600 24601 24602 24603 24604 24605 24606 24607 24608 24609 24610 24611 24612 24613 24614 24615 24616 24617 24618 24619 24620 24621 24622 24623 24624 24625 24626 24627 24628 24629 24630 24631 24632 24633 24634 24635 24636 24637 24638 24639 24640 24641 24642 24643 24644 24645 24646 24647 24648 24649 24650 24651 24652 24653 24654 24655 24656 24657 24658 24659 24660 24661 24662 24663 24664 24665 24666 24667 24668 24669 24670 24671 24672 24673 24674 24675 24676 24677 24678 24679 24680 24681 24682 24683 24684 24685 24686 24687 24688 24689 24690 24691 24692 24693 24694 24695 24696 24697 24698 24699 24700 24701 24702 24703 24704 24705 24706 24707 24708 24709 24710 24711 24712 24713 24714 24715 24716 24717 24718 24719 24720 24721 24722 24723 24724 24725 24726 24727 24728 24729 24730 24731 24732 24733 24734 24735 24736 24737 24738 24739 24740 24741 24742 24743 24744 24745 24746 24747 24748 24749 24750 24751 24752 24753 24754 24755 24756 24757 24758 24759 24760 24761 24762 24763 24764 24765 24766 24767 24768 24769 24770 24771 24772 24773 24774 24775 24776 24777 24778 24779 24780 24781 24782 24783 24784 24785 24786 24787 24788 24789 24790 24791 24792 24793 24794 24795 24796 24797 24798 24799 24800 24801 24802 24803 24804 24805 24806 24807 24808 24809 24810 24811 24812 24813 24814 24815 24816 24817 24818 24819 24820 24821 24822 24823 24824 24825 24826 24827 24828 24829 24830 24831 24832 24833 24834 24835 24836 24837 24838 24839 24840 24841 24842 24843 24844 24845 24846 24847 24848 24849 24850 24851 24852 24853 24854 24855 24856 24857 24858 24859 24860 24861 24862 24863 24864 24865 24866 24867 24868 24869 24870 24871 24872 24873 24874 24875 24876 24877 24878 24879 24880 24881 24882 24883 24884 24885 24886 24887 24888 24889 24890 24891 24892 24893 24894 24895 24896 24897 24898 24899 24900 24901 24902 24903 24904 24905 24906 24907 24908 24909 24910 24911 24912 24913 24914 24915 24916 24917 24918 24919 24920 24921 24922 24923 24924 24925 24926 24927 24928 24929 24930 24931 24932 24933 24934 24935 24936 24937 24938 24939 24940 24941 24942 24943 24944 24945 24946 24947 24948 24949 24950 24951 24952 24953 24954 24955 24956 24957 24958 24959 24960 24961 24962 24963 24964 24965 24966 24967 24968 24969 24970 24971 24972 24973 24974 24975 24976 24977 24978 24979 24980 24981 24982 24983 24984 24985 24986 24987 24988 24989 24990 24991 24992 24993 24994 24995 24996 24997 24998 24999 25000 25001 25002 25003 25004 25005 25006 25007 25008 25009 25010 25011 25012 25013 25014 25015 25016 25017 25018 25019 25020 25021 25022 25023 25024 25025 25026 25027 25028 25029 25030 25031 25032 25033 25034 25035 25036 25037 25038 25039 25040 25041 25042 25043 25044 25045 25046 25047 25048 25049 25050 25051 25052 25053 25054 25055 25056 25057 25058 25059 25060 25061 25062 25063 25064 25065 25066 25067 25068 25069 25070 25071 25072 25073 25074 25075 25076 25077 25078 25079 25080 25081 25082 25083 25084 25085 25086 25087 25088 25089 25090 25091 25092 25093 25094 25095
  public interface LinkAttributesOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.LinkAttributes)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>float total_capacity_gbps = 1;</code>
     * @return The totalCapacityGbps.
     */
    float getTotalCapacityGbps();

    /**
     * <code>float used_capacity_gbps = 2;</code>
     * @return The usedCapacityGbps.
     */
    float getUsedCapacityGbps();
  }
  /**
   * Protobuf type {@code context.LinkAttributes}
   */
  public static final class LinkAttributes extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.LinkAttributes)
      LinkAttributesOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use LinkAttributes.newBuilder() to construct.
    private LinkAttributes(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private LinkAttributes() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new LinkAttributes();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private LinkAttributes(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 13: {

              totalCapacityGbps_ = input.readFloat();
              break;
            }
            case 21: {

              usedCapacityGbps_ = input.readFloat();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_LinkAttributes_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_LinkAttributes_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.LinkAttributes.class, context.ContextOuterClass.LinkAttributes.Builder.class);
    }

    public static final int TOTAL_CAPACITY_GBPS_FIELD_NUMBER = 1;
    private float totalCapacityGbps_;
    /**
     * <code>float total_capacity_gbps = 1;</code>
     * @return The totalCapacityGbps.
     */
    @java.lang.Override
    public float getTotalCapacityGbps() {
      return totalCapacityGbps_;
    }

    public static final int USED_CAPACITY_GBPS_FIELD_NUMBER = 2;
    private float usedCapacityGbps_;
    /**
     * <code>float used_capacity_gbps = 2;</code>
     * @return The usedCapacityGbps.
     */
    @java.lang.Override
    public float getUsedCapacityGbps() {
      return usedCapacityGbps_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (totalCapacityGbps_ != 0F) {
        output.writeFloat(1, totalCapacityGbps_);
      }
      if (usedCapacityGbps_ != 0F) {
        output.writeFloat(2, usedCapacityGbps_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (totalCapacityGbps_ != 0F) {
        size += com.google.protobuf.CodedOutputStream
          .computeFloatSize(1, totalCapacityGbps_);
      }
      if (usedCapacityGbps_ != 0F) {
        size += com.google.protobuf.CodedOutputStream
          .computeFloatSize(2, usedCapacityGbps_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.LinkAttributes)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.LinkAttributes other = (context.ContextOuterClass.LinkAttributes) obj;

      if (java.lang.Float.floatToIntBits(getTotalCapacityGbps())
          != java.lang.Float.floatToIntBits(
              other.getTotalCapacityGbps())) return false;
      if (java.lang.Float.floatToIntBits(getUsedCapacityGbps())
          != java.lang.Float.floatToIntBits(
              other.getUsedCapacityGbps())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TOTAL_CAPACITY_GBPS_FIELD_NUMBER;
      hash = (53 * hash) + java.lang.Float.floatToIntBits(
          getTotalCapacityGbps());
      hash = (37 * hash) + USED_CAPACITY_GBPS_FIELD_NUMBER;
      hash = (53 * hash) + java.lang.Float.floatToIntBits(
          getUsedCapacityGbps());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.LinkAttributes parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.LinkAttributes parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.LinkAttributes parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.LinkAttributes parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.LinkAttributes parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.LinkAttributes parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.LinkAttributes parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.LinkAttributes parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.LinkAttributes parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.LinkAttributes parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.LinkAttributes parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.LinkAttributes parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.LinkAttributes prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.LinkAttributes}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.LinkAttributes)
        context.ContextOuterClass.LinkAttributesOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_LinkAttributes_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_LinkAttributes_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.LinkAttributes.class, context.ContextOuterClass.LinkAttributes.Builder.class);
      }

      // Construct using context.ContextOuterClass.LinkAttributes.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        totalCapacityGbps_ = 0F;

        usedCapacityGbps_ = 0F;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_LinkAttributes_descriptor;
      }

      @java.lang.Override
      public context.ContextOuterClass.LinkAttributes getDefaultInstanceForType() {
        return context.ContextOuterClass.LinkAttributes.getDefaultInstance();
      }

      @java.lang.Override
      public context.ContextOuterClass.LinkAttributes build() {
        context.ContextOuterClass.LinkAttributes result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.LinkAttributes buildPartial() {
        context.ContextOuterClass.LinkAttributes result = new context.ContextOuterClass.LinkAttributes(this);
        result.totalCapacityGbps_ = totalCapacityGbps_;
        result.usedCapacityGbps_ = usedCapacityGbps_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.LinkAttributes) {
          return mergeFrom((context.ContextOuterClass.LinkAttributes)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.LinkAttributes other) {
        if (other == context.ContextOuterClass.LinkAttributes.getDefaultInstance()) return this;
        if (other.getTotalCapacityGbps() != 0F) {
          setTotalCapacityGbps(other.getTotalCapacityGbps());
        }
        if (other.getUsedCapacityGbps() != 0F) {
          setUsedCapacityGbps(other.getUsedCapacityGbps());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.LinkAttributes parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.LinkAttributes) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private float totalCapacityGbps_ ;
      /**
       * <code>float total_capacity_gbps = 1;</code>
       * @return The totalCapacityGbps.
       */
      @java.lang.Override
      public float getTotalCapacityGbps() {
        return totalCapacityGbps_;
      }
      /**
       * <code>float total_capacity_gbps = 1;</code>
       * @param value The totalCapacityGbps to set.
       * @return This builder for chaining.
       */
      public Builder setTotalCapacityGbps(float value) {
        
        totalCapacityGbps_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>float total_capacity_gbps = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTotalCapacityGbps() {
        
        totalCapacityGbps_ = 0F;
        onChanged();
        return this;
      }

      private float usedCapacityGbps_ ;
      /**
       * <code>float used_capacity_gbps = 2;</code>
       * @return The usedCapacityGbps.
       */
      @java.lang.Override
      public float getUsedCapacityGbps() {
        return usedCapacityGbps_;
      }
      /**
       * <code>float used_capacity_gbps = 2;</code>
       * @param value The usedCapacityGbps to set.
       * @return This builder for chaining.
       */
      public Builder setUsedCapacityGbps(float value) {
        
        usedCapacityGbps_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>float used_capacity_gbps = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearUsedCapacityGbps() {
        
        usedCapacityGbps_ = 0F;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.LinkAttributes)
    }

    // @@protoc_insertion_point(class_scope:context.LinkAttributes)
    private static final context.ContextOuterClass.LinkAttributes DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new context.ContextOuterClass.LinkAttributes();
    }

    public static context.ContextOuterClass.LinkAttributes getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<LinkAttributes>
        PARSER = new com.google.protobuf.AbstractParser<LinkAttributes>() {
      @java.lang.Override
      public LinkAttributes parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new LinkAttributes(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<LinkAttributes> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<LinkAttributes> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.LinkAttributes getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

famelis's avatar
famelis committed
  public interface LinkOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Link)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 1;</code>
     * @return Whether the linkId field is set.
famelis's avatar
famelis committed
    boolean hasLinkId();
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 1;</code>
     * @return The linkId.
famelis's avatar
famelis committed
    context.ContextOuterClass.LinkId getLinkId();
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder();

famelis's avatar
famelis committed
     * <code>string name = 2;</code>
     * @return The name.
famelis's avatar
famelis committed
    java.lang.String getName();
famelis's avatar
famelis committed
     * <code>string name = 2;</code>
     * @return The bytes for name.
famelis's avatar
famelis committed
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    java.util.List<context.ContextOuterClass.EndPointId> 
        getLinkEndpointIdsList();
    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    context.ContextOuterClass.EndPointId getLinkEndpointIds(int index);
    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    int getLinkEndpointIdsCount();
    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> 
        getLinkEndpointIdsOrBuilderList();
    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder(
        int index);

    /**
     * <code>.context.LinkAttributes attributes = 4;</code>
     * @return Whether the attributes field is set.
     */
    boolean hasAttributes();
    /**
     * <code>.context.LinkAttributes attributes = 4;</code>
     * @return The attributes.
     */
    context.ContextOuterClass.LinkAttributes getAttributes();
    /**
     * <code>.context.LinkAttributes attributes = 4;</code>
     */
    context.ContextOuterClass.LinkAttributesOrBuilder getAttributesOrBuilder();
famelis's avatar
famelis committed
   * Protobuf type {@code context.Link}
famelis's avatar
famelis committed
  public static final class Link extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.Link)
      LinkOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use Link.newBuilder() to construct.
    private Link(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private Link() {
      name_ = "";
      linkEndpointIds_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new Link();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private Link(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
famelis's avatar
famelis committed
              context.ContextOuterClass.LinkId.Builder subBuilder = null;
              if (linkId_ != null) {
                subBuilder = linkId_.toBuilder();
              }
              linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(linkId_);
                linkId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>();
                mutable_bitField0_ |= 0x00000001;
famelis's avatar
famelis committed
              linkEndpointIds_.add(
                  input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry));
            case 34: {
              context.ContextOuterClass.LinkAttributes.Builder subBuilder = null;
              if (attributes_ != null) {
                subBuilder = attributes_.toBuilder();
              }
              attributes_ = input.readMessage(context.ContextOuterClass.LinkAttributes.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(attributes_);
                attributes_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_Link_descriptor;
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class);
famelis's avatar
famelis committed
    public static final int LINK_ID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.LinkId linkId_;
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 1;</code>
     * @return Whether the linkId field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasLinkId() {
      return linkId_ != null;
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 1;</code>
     * @return The linkId.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkId getLinkId() {
      return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_;
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 1;</code>
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() {
      return getLinkId();
famelis's avatar
famelis committed

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
famelis's avatar
famelis committed
     * <code>string name = 2;</code>
     * @return The name.
famelis's avatar
famelis committed
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
famelis's avatar
famelis committed
     * <code>string name = 2;</code>
     * @return The bytes for name.
famelis's avatar
famelis committed
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int LINK_ENDPOINT_IDS_FIELD_NUMBER = 3;
    private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_;
    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() {
      return linkEndpointIds_;
    }
    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> 
        getLinkEndpointIdsOrBuilderList() {
      return linkEndpointIds_;
    }
    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    @java.lang.Override
    public int getLinkEndpointIdsCount() {
      return linkEndpointIds_.size();
    }
    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) {
      return linkEndpointIds_.get(index);
    }
    /**
     * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder(
        int index) {
famelis's avatar
famelis committed
      return linkEndpointIds_.get(index);
    public static final int ATTRIBUTES_FIELD_NUMBER = 4;
    private context.ContextOuterClass.LinkAttributes attributes_;
    /**
     * <code>.context.LinkAttributes attributes = 4;</code>
     * @return Whether the attributes field is set.
     */
    @java.lang.Override
    public boolean hasAttributes() {
      return attributes_ != null;
    }
    /**
     * <code>.context.LinkAttributes attributes = 4;</code>
     * @return The attributes.
     */
    @java.lang.Override
    public context.ContextOuterClass.LinkAttributes getAttributes() {
      return attributes_ == null ? context.ContextOuterClass.LinkAttributes.getDefaultInstance() : attributes_;
    }
    /**
     * <code>.context.LinkAttributes attributes = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.LinkAttributesOrBuilder getAttributesOrBuilder() {
      return getAttributes();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      if (linkId_ != null) {
        output.writeMessage(1, getLinkId());
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      for (int i = 0; i < linkEndpointIds_.size(); i++) {
        output.writeMessage(3, linkEndpointIds_.get(i));
      if (attributes_ != null) {
        output.writeMessage(4, getAttributes());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      if (linkId_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, getLinkId());
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      for (int i = 0; i < linkEndpointIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, linkEndpointIds_.get(i));
      if (attributes_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, getAttributes());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.Link)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.Link other = (context.ContextOuterClass.Link) obj;
famelis's avatar
famelis committed
      if (hasLinkId() != other.hasLinkId()) return false;
      if (hasLinkId()) {
        if (!getLinkId()
            .equals(other.getLinkId())) return false;
      }
      if (!getName()
          .equals(other.getName())) return false;
      if (!getLinkEndpointIdsList()
          .equals(other.getLinkEndpointIdsList())) return false;
      if (hasAttributes() != other.hasAttributes()) return false;
      if (hasAttributes()) {
        if (!getAttributes()
            .equals(other.getAttributes())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (hasLinkId()) {
        hash = (37 * hash) + LINK_ID_FIELD_NUMBER;
        hash = (53 * hash) + getLinkId().hashCode();
      }
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      if (getLinkEndpointIdsCount() > 0) {
        hash = (37 * hash) + LINK_ENDPOINT_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getLinkEndpointIdsList().hashCode();
      if (hasAttributes()) {
        hash = (37 * hash) + ATTRIBUTES_FIELD_NUMBER;
        hash = (53 * hash) + getAttributes().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.Link prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.Link}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.Link)
        context.ContextOuterClass.LinkOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_Link_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.Link.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
famelis's avatar
famelis committed
          getLinkEndpointIdsFieldBuilder();
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (linkIdBuilder_ == null) {
          linkId_ = null;
        } else {
          linkId_ = null;
          linkIdBuilder_ = null;
        }
        name_ = "";

        if (linkEndpointIdsBuilder_ == null) {
          linkEndpointIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
          linkEndpointIdsBuilder_.clear();
        if (attributesBuilder_ == null) {
          attributes_ = null;
        } else {
          attributes_ = null;
          attributesBuilder_ = null;
        }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_Link_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.Link getDefaultInstanceForType() {
        return context.ContextOuterClass.Link.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.Link build() {
        context.ContextOuterClass.Link result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.Link buildPartial() {
        context.ContextOuterClass.Link result = new context.ContextOuterClass.Link(this);
        int from_bitField0_ = bitField0_;
famelis's avatar
famelis committed
        if (linkIdBuilder_ == null) {
          result.linkId_ = linkId_;
        } else {
          result.linkId_ = linkIdBuilder_.build();
        }
        result.name_ = name_;
        if (linkEndpointIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
            linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
famelis's avatar
famelis committed
          result.linkEndpointIds_ = linkEndpointIds_;
famelis's avatar
famelis committed
          result.linkEndpointIds_ = linkEndpointIdsBuilder_.build();
        if (attributesBuilder_ == null) {
          result.attributes_ = attributes_;
        } else {
          result.attributes_ = attributesBuilder_.build();
        }
        onBuilt();
        return result;

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.Link) {
          return mergeFrom((context.ContextOuterClass.Link)other);
          super.mergeFrom(other);
          return this;
        }
      }

famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.Link other) {
        if (other == context.ContextOuterClass.Link.getDefaultInstance()) return this;
        if (other.hasLinkId()) {
          mergeLinkId(other.getLinkId());
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (linkEndpointIdsBuilder_ == null) {
          if (!other.linkEndpointIds_.isEmpty()) {
            if (linkEndpointIds_.isEmpty()) {
              linkEndpointIds_ = other.linkEndpointIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
famelis's avatar
famelis committed
              ensureLinkEndpointIdsIsMutable();
              linkEndpointIds_.addAll(other.linkEndpointIds_);
famelis's avatar
famelis committed
          if (!other.linkEndpointIds_.isEmpty()) {
            if (linkEndpointIdsBuilder_.isEmpty()) {
              linkEndpointIdsBuilder_.dispose();
              linkEndpointIdsBuilder_ = null;
              linkEndpointIds_ = other.linkEndpointIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
              linkEndpointIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
famelis's avatar
famelis committed
                   getLinkEndpointIdsFieldBuilder() : null;
famelis's avatar
famelis committed
              linkEndpointIdsBuilder_.addAllMessages(other.linkEndpointIds_);
        if (other.hasAttributes()) {
          mergeAttributes(other.getAttributes());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.Link parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.Link) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
      private int bitField0_;
famelis's avatar
famelis committed
      private context.ContextOuterClass.LinkId linkId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 1;</code>
       * @return Whether the linkId field is set.
famelis's avatar
famelis committed
      public boolean hasLinkId() {
        return linkIdBuilder_ != null || linkId_ != null;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 1;</code>
       * @return The linkId.
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId getLinkId() {
        if (linkIdBuilder_ == null) {
          return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_;
famelis's avatar
famelis committed
          return linkIdBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 1;</code>
famelis's avatar
famelis committed
      public Builder setLinkId(context.ContextOuterClass.LinkId value) {
        if (linkIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          linkId_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 1;</code>
famelis's avatar
famelis committed
      public Builder setLinkId(
          context.ContextOuterClass.LinkId.Builder builderForValue) {
        if (linkIdBuilder_ == null) {
          linkId_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdBuilder_.setMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 1;</code>
famelis's avatar
famelis committed
      public Builder mergeLinkId(context.ContextOuterClass.LinkId value) {
        if (linkIdBuilder_ == null) {
          if (linkId_ != null) {
            linkId_ =
              context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial();
          } else {
            linkId_ = value;
          }
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdBuilder_.mergeFrom(value);
        return this;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 1;</code>
famelis's avatar
famelis committed
      public Builder clearLinkId() {
        if (linkIdBuilder_ == null) {
          linkId_ = null;
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkId_ = null;
          linkIdBuilder_ = null;
        return this;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() {
        
        onChanged();
        return getLinkIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.LinkId link_id = 1;</code>
       */
      public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() {
        if (linkIdBuilder_ != null) {
          return linkIdBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return linkId_ == null ?
              context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 1;</code>
famelis's avatar
famelis committed
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> 
          getLinkIdFieldBuilder() {
        if (linkIdBuilder_ == null) {
          linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>(
                  getLinkId(),
                  getParentForChildren(),
                  isClean());
          linkId_ = null;
famelis's avatar
famelis committed
        return linkIdBuilder_;
famelis's avatar
famelis committed

      private java.lang.Object name_ = "";
famelis's avatar
famelis committed
       * <code>string name = 2;</code>
       * @return The name.
famelis's avatar
famelis committed
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
famelis's avatar
famelis committed
          return (java.lang.String) ref;
famelis's avatar
famelis committed
       * <code>string name = 2;</code>
       * @return The bytes for name.
famelis's avatar
famelis committed
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
famelis's avatar
famelis committed
          return (com.google.protobuf.ByteString) ref;
famelis's avatar
famelis committed
       * <code>string name = 2;</code>
       * @param value The name to set.
       * @return This builder for chaining.
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       * @param value The bytes for name to set.
       * @return This builder for chaining.
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_ =
        java.util.Collections.emptyList();
      private void ensureLinkEndpointIdsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(linkEndpointIds_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> linkEndpointIdsBuilder_;

      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() {
        if (linkEndpointIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(linkEndpointIds_);
        } else {
          return linkEndpointIdsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public int getLinkEndpointIdsCount() {
        if (linkEndpointIdsBuilder_ == null) {
          return linkEndpointIds_.size();
        } else {
          return linkEndpointIdsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) {
        if (linkEndpointIdsBuilder_ == null) {
          return linkEndpointIds_.get(index);
        } else {
          return linkEndpointIdsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public Builder setLinkEndpointIds(
          int index, context.ContextOuterClass.EndPointId value) {
        if (linkEndpointIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLinkEndpointIdsIsMutable();
          linkEndpointIds_.set(index, value);
famelis's avatar
famelis committed
          linkEndpointIdsBuilder_.setMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
famelis's avatar
famelis committed
      public Builder setLinkEndpointIds(
          int index, context.ContextOuterClass.EndPointId.Builder builderForValue) {
        if (linkEndpointIdsBuilder_ == null) {
          ensureLinkEndpointIdsIsMutable();
          linkEndpointIds_.set(index, builderForValue.build());
          onChanged();
        } else {
          linkEndpointIdsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public Builder addLinkEndpointIds(context.ContextOuterClass.EndPointId value) {
        if (linkEndpointIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLinkEndpointIdsIsMutable();
          linkEndpointIds_.add(value);
          onChanged();
        } else {
          linkEndpointIdsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public Builder addLinkEndpointIds(
          int index, context.ContextOuterClass.EndPointId value) {
        if (linkEndpointIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLinkEndpointIdsIsMutable();
          linkEndpointIds_.add(index, value);
          onChanged();
        } else {
          linkEndpointIdsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public Builder addLinkEndpointIds(
          context.ContextOuterClass.EndPointId.Builder builderForValue) {
        if (linkEndpointIdsBuilder_ == null) {
          ensureLinkEndpointIdsIsMutable();
          linkEndpointIds_.add(builderForValue.build());
          onChanged();
        } else {
          linkEndpointIdsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public Builder addLinkEndpointIds(
          int index, context.ContextOuterClass.EndPointId.Builder builderForValue) {
        if (linkEndpointIdsBuilder_ == null) {
          ensureLinkEndpointIdsIsMutable();
          linkEndpointIds_.add(index, builderForValue.build());
          onChanged();
        } else {
          linkEndpointIdsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public Builder addAllLinkEndpointIds(
          java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) {
        if (linkEndpointIdsBuilder_ == null) {
          ensureLinkEndpointIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, linkEndpointIds_);
          onChanged();
        } else {
          linkEndpointIdsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public Builder clearLinkEndpointIds() {
        if (linkEndpointIdsBuilder_ == null) {
          linkEndpointIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          linkEndpointIdsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public Builder removeLinkEndpointIds(int index) {
        if (linkEndpointIdsBuilder_ == null) {
famelis's avatar
famelis committed
          ensureLinkEndpointIdsIsMutable();
          linkEndpointIds_.remove(index);
          onChanged();
        } else {
          linkEndpointIdsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
       */
      public context.ContextOuterClass.EndPointId.Builder getLinkEndpointIdsBuilder(
          int index) {
famelis's avatar
famelis committed
        return getLinkEndpointIdsFieldBuilder().getBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder(
          int index) {
famelis's avatar
famelis committed
        if (linkEndpointIdsBuilder_ == null) {
          return linkEndpointIds_.get(index);  } else {
          return linkEndpointIdsBuilder_.getMessageOrBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
famelis's avatar
famelis committed
      public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> 
           getLinkEndpointIdsOrBuilderList() {
        if (linkEndpointIdsBuilder_ != null) {
          return linkEndpointIdsBuilder_.getMessageOrBuilderList();
famelis's avatar
famelis committed
          return java.util.Collections.unmodifiableList(linkEndpointIds_);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder() {
        return getLinkEndpointIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.EndPointId.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder(
          int index) {
famelis's avatar
famelis committed
        return getLinkEndpointIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.EndPointId.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.EndPointId.Builder> 
           getLinkEndpointIdsBuilderList() {
        return getLinkEndpointIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> 
          getLinkEndpointIdsFieldBuilder() {
        if (linkEndpointIdsBuilder_ == null) {
          linkEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>(
                  linkEndpointIds_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          linkEndpointIds_ = null;
famelis's avatar
famelis committed
        return linkEndpointIdsBuilder_;

      private context.ContextOuterClass.LinkAttributes attributes_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.LinkAttributes, context.ContextOuterClass.LinkAttributes.Builder, context.ContextOuterClass.LinkAttributesOrBuilder> attributesBuilder_;
      /**
       * <code>.context.LinkAttributes attributes = 4;</code>
       * @return Whether the attributes field is set.
       */
      public boolean hasAttributes() {
        return attributesBuilder_ != null || attributes_ != null;
      }
      /**
       * <code>.context.LinkAttributes attributes = 4;</code>
       * @return The attributes.
       */
      public context.ContextOuterClass.LinkAttributes getAttributes() {
        if (attributesBuilder_ == null) {
          return attributes_ == null ? context.ContextOuterClass.LinkAttributes.getDefaultInstance() : attributes_;
        } else {
          return attributesBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.LinkAttributes attributes = 4;</code>
       */
      public Builder setAttributes(context.ContextOuterClass.LinkAttributes value) {
        if (attributesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          attributes_ = value;
          onChanged();
        } else {
          attributesBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.context.LinkAttributes attributes = 4;</code>
       */
      public Builder setAttributes(
          context.ContextOuterClass.LinkAttributes.Builder builderForValue) {
        if (attributesBuilder_ == null) {
          attributes_ = builderForValue.build();
          onChanged();
        } else {
          attributesBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.LinkAttributes attributes = 4;</code>
       */
      public Builder mergeAttributes(context.ContextOuterClass.LinkAttributes value) {
        if (attributesBuilder_ == null) {
          if (attributes_ != null) {
            attributes_ =
              context.ContextOuterClass.LinkAttributes.newBuilder(attributes_).mergeFrom(value).buildPartial();
          } else {
            attributes_ = value;
          }
          onChanged();
        } else {
          attributesBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.LinkAttributes attributes = 4;</code>
       */
      public Builder clearAttributes() {
        if (attributesBuilder_ == null) {
          attributes_ = null;
          onChanged();
        } else {
          attributes_ = null;
          attributesBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.LinkAttributes attributes = 4;</code>
       */
      public context.ContextOuterClass.LinkAttributes.Builder getAttributesBuilder() {
        
        onChanged();
        return getAttributesFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.LinkAttributes attributes = 4;</code>
       */
      public context.ContextOuterClass.LinkAttributesOrBuilder getAttributesOrBuilder() {
        if (attributesBuilder_ != null) {
          return attributesBuilder_.getMessageOrBuilder();
        } else {
          return attributes_ == null ?
              context.ContextOuterClass.LinkAttributes.getDefaultInstance() : attributes_;
        }
      }
      /**
       * <code>.context.LinkAttributes attributes = 4;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.LinkAttributes, context.ContextOuterClass.LinkAttributes.Builder, context.ContextOuterClass.LinkAttributesOrBuilder> 
          getAttributesFieldBuilder() {
        if (attributesBuilder_ == null) {
          attributesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.LinkAttributes, context.ContextOuterClass.LinkAttributes.Builder, context.ContextOuterClass.LinkAttributesOrBuilder>(
                  getAttributes(),
                  getParentForChildren(),
                  isClean());
          attributes_ = null;
        }
        return attributesBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
famelis's avatar
famelis committed

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.Link)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.Link)
    private static final context.ContextOuterClass.Link DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.Link();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Link getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<Link>
        PARSER = new com.google.protobuf.AbstractParser<Link>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public Link parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new Link(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<Link> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<Link> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.Link getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface LinkIdListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.LinkIdList)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
    java.util.List<context.ContextOuterClass.LinkId> 
        getLinkIdsList();
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.LinkId getLinkIds(int index);
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
    int getLinkIdsCount();
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
    java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> 
        getLinkIdsOrBuilderList();
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder(
        int index);
famelis's avatar
famelis committed
   * Protobuf type {@code context.LinkIdList}
famelis's avatar
famelis committed
  public static final class LinkIdList extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.LinkIdList)
      LinkIdListOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use LinkIdList.newBuilder() to construct.
    private LinkIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private LinkIdList() {
      linkIds_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new LinkIdList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private LinkIdList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
famelis's avatar
famelis committed
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
                linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>();
                mutable_bitField0_ |= 0x00000001;
famelis's avatar
famelis committed
              linkIds_.add(
                  input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          linkIds_ = java.util.Collections.unmodifiableList(linkIds_);
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class);
famelis's avatar
famelis committed
    public static final int LINK_IDS_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.LinkId> linkIds_;
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() {
      return linkIds_;
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> 
        getLinkIdsOrBuilderList() {
      return linkIds_;
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public int getLinkIdsCount() {
      return linkIds_.size();
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkId getLinkIds(int index) {
      return linkIds_.get(index);
famelis's avatar
famelis committed
     * <code>repeated .context.LinkId link_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder(
        int index) {
famelis's avatar
famelis committed
      return linkIds_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      for (int i = 0; i < linkIds_.size(); i++) {
        output.writeMessage(1, linkIds_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      for (int i = 0; i < linkIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, linkIds_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.LinkIdList)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.LinkIdList other = (context.ContextOuterClass.LinkIdList) obj;
famelis's avatar
famelis committed
      if (!getLinkIdsList()
          .equals(other.getLinkIdsList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (getLinkIdsCount() > 0) {
        hash = (37 * hash) + LINK_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getLinkIdsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.LinkIdList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.LinkIdList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.LinkIdList)
        context.ContextOuterClass.LinkIdListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.LinkIdList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
famelis's avatar
famelis committed
          getLinkIdsFieldBuilder();
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (linkIdsBuilder_ == null) {
          linkIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
          linkIdsBuilder_.clear();

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor;

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() {
        return context.ContextOuterClass.LinkIdList.getDefaultInstance();

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkIdList build() {
        context.ContextOuterClass.LinkIdList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        return result;

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkIdList buildPartial() {
        context.ContextOuterClass.LinkIdList result = new context.ContextOuterClass.LinkIdList(this);
        int from_bitField0_ = bitField0_;
famelis's avatar
famelis committed
        if (linkIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
            linkIds_ = java.util.Collections.unmodifiableList(linkIds_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
famelis's avatar
famelis committed
          result.linkIds_ = linkIds_;
famelis's avatar
famelis committed
          result.linkIds_ = linkIdsBuilder_.build();
        onBuilt();
        return result;

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.LinkIdList) {
          return mergeFrom((context.ContextOuterClass.LinkIdList)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.LinkIdList other) {
        if (other == context.ContextOuterClass.LinkIdList.getDefaultInstance()) return this;
        if (linkIdsBuilder_ == null) {
          if (!other.linkIds_.isEmpty()) {
            if (linkIds_.isEmpty()) {
              linkIds_ = other.linkIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
famelis's avatar
famelis committed
              ensureLinkIdsIsMutable();
              linkIds_.addAll(other.linkIds_);
famelis's avatar
famelis committed
          if (!other.linkIds_.isEmpty()) {
            if (linkIdsBuilder_.isEmpty()) {
              linkIdsBuilder_.dispose();
              linkIdsBuilder_ = null;
              linkIds_ = other.linkIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
              linkIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
famelis's avatar
famelis committed
                   getLinkIdsFieldBuilder() : null;
famelis's avatar
famelis committed
              linkIdsBuilder_.addAllMessages(other.linkIds_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.LinkIdList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.LinkIdList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

famelis's avatar
famelis committed
      private java.util.List<context.ContextOuterClass.LinkId> linkIds_ =
        java.util.Collections.emptyList();
famelis's avatar
famelis committed
      private void ensureLinkIdsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(linkIds_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdsBuilder_;
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() {
        if (linkIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(linkIds_);
famelis's avatar
famelis committed
          return linkIdsBuilder_.getMessageList();
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public int getLinkIdsCount() {
        if (linkIdsBuilder_ == null) {
          return linkIds_.size();
famelis's avatar
famelis committed
          return linkIdsBuilder_.getCount();
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId getLinkIds(int index) {
        if (linkIdsBuilder_ == null) {
          return linkIds_.get(index);
famelis's avatar
famelis committed
          return linkIdsBuilder_.getMessage(index);
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder setLinkIds(
          int index, context.ContextOuterClass.LinkId value) {
        if (linkIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
famelis's avatar
famelis committed
          ensureLinkIdsIsMutable();
          linkIds_.set(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdsBuilder_.setMessage(index, value);
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder setLinkIds(
          int index, context.ContextOuterClass.LinkId.Builder builderForValue) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          linkIds_.set(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addLinkIds(context.ContextOuterClass.LinkId value) {
        if (linkIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureLinkIdsIsMutable();
          linkIds_.add(value);
          onChanged();
famelis's avatar
famelis committed
          linkIdsBuilder_.addMessage(value);
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addLinkIds(
          int index, context.ContextOuterClass.LinkId value) {
        if (linkIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureLinkIdsIsMutable();
          linkIds_.add(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdsBuilder_.addMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addLinkIds(
          context.ContextOuterClass.LinkId.Builder builderForValue) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          linkIds_.add(builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdsBuilder_.addMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addLinkIds(
          int index, context.ContextOuterClass.LinkId.Builder builderForValue) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          linkIds_.add(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdsBuilder_.addMessage(index, builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addAllLinkIds(
          java.lang.Iterable<? extends context.ContextOuterClass.LinkId> values) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
famelis's avatar
famelis committed
              values, linkIds_);
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdsBuilder_.addAllMessages(values);
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder clearLinkIds() {
        if (linkIdsBuilder_ == null) {
          linkIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdsBuilder_.clear();
        }
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder removeLinkIds(int index) {
        if (linkIdsBuilder_ == null) {
          ensureLinkIdsIsMutable();
          linkIds_.remove(index);
          onChanged();
famelis's avatar
famelis committed
          linkIdsBuilder_.remove(index);
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId.Builder getLinkIdsBuilder(
          int index) {
famelis's avatar
famelis committed
        return getLinkIdsFieldBuilder().getBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder(
          int index) {
famelis's avatar
famelis committed
        if (linkIdsBuilder_ == null) {
          return linkIds_.get(index);  } else {
          return linkIdsBuilder_.getMessageOrBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> 
           getLinkIdsOrBuilderList() {
        if (linkIdsBuilder_ != null) {
          return linkIdsBuilder_.getMessageOrBuilderList();
famelis's avatar
famelis committed
          return java.util.Collections.unmodifiableList(linkIds_);
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder() {
        return getLinkIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.LinkId.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder(
          int index) {
famelis's avatar
famelis committed
        return getLinkIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.LinkId.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.LinkId link_ids = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.LinkId.Builder> 
           getLinkIdsBuilderList() {
        return getLinkIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> 
          getLinkIdsFieldBuilder() {
        if (linkIdsBuilder_ == null) {
          linkIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>(
                  linkIds_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          linkIds_ = null;
famelis's avatar
famelis committed
        return linkIdsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.LinkIdList)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.LinkIdList)
    private static final context.ContextOuterClass.LinkIdList DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.LinkIdList();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkIdList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<LinkIdList>
        PARSER = new com.google.protobuf.AbstractParser<LinkIdList>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public LinkIdList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new LinkIdList(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<LinkIdList> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<LinkIdList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface LinkListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.LinkList)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
    java.util.List<context.ContextOuterClass.Link> 
        getLinksList();
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.Link getLinks(int index);
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
    int getLinksCount();
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
    java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> 
        getLinksOrBuilderList();
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder(
        int index);
famelis's avatar
famelis committed
   * Protobuf type {@code context.LinkList}
famelis's avatar
famelis committed
  public static final class LinkList extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.LinkList)
      LinkListOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use LinkList.newBuilder() to construct.
    private LinkList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private LinkList() {
      links_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new LinkList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private LinkList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
                links_ = new java.util.ArrayList<context.ContextOuterClass.Link>();
                mutable_bitField0_ |= 0x00000001;
              }
famelis's avatar
famelis committed
              links_.add(
                  input.readMessage(context.ContextOuterClass.Link.parser(), extensionRegistry));
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          links_ = java.util.Collections.unmodifiableList(links_);
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_LinkList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class);
famelis's avatar
famelis committed
    public static final int LINKS_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.Link> links_;
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<context.ContextOuterClass.Link> getLinksList() {
      return links_;
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> 
        getLinksOrBuilderList() {
      return links_;
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public int getLinksCount() {
      return links_.size();
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.Link getLinks(int index) {
      return links_.get(index);
famelis's avatar
famelis committed
     * <code>repeated .context.Link links = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder(
        int index) {
famelis's avatar
famelis committed
      return links_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      for (int i = 0; i < links_.size(); i++) {
        output.writeMessage(1, links_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      for (int i = 0; i < links_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, links_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.LinkList)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.LinkList other = (context.ContextOuterClass.LinkList) obj;
famelis's avatar
famelis committed
      if (!getLinksList()
          .equals(other.getLinksList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (getLinksCount() > 0) {
        hash = (37 * hash) + LINKS_FIELD_NUMBER;
        hash = (53 * hash) + getLinksList().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.LinkList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.LinkList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.LinkList)
        context.ContextOuterClass.LinkListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.LinkList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
famelis's avatar
famelis committed
          getLinksFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (linksBuilder_ == null) {
          links_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
          linksBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkList_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkList getDefaultInstanceForType() {
        return context.ContextOuterClass.LinkList.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkList build() {
        context.ContextOuterClass.LinkList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkList buildPartial() {
        context.ContextOuterClass.LinkList result = new context.ContextOuterClass.LinkList(this);
        int from_bitField0_ = bitField0_;
famelis's avatar
famelis committed
        if (linksBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
            links_ = java.util.Collections.unmodifiableList(links_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
famelis's avatar
famelis committed
          result.links_ = links_;
famelis's avatar
famelis committed
          result.links_ = linksBuilder_.build();
famelis's avatar
famelis committed
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.LinkList) {
          return mergeFrom((context.ContextOuterClass.LinkList)other);
famelis's avatar
famelis committed
          super.mergeFrom(other);
          return this;
famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.LinkList other) {
        if (other == context.ContextOuterClass.LinkList.getDefaultInstance()) return this;
        if (linksBuilder_ == null) {
          if (!other.links_.isEmpty()) {
            if (links_.isEmpty()) {
              links_ = other.links_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
famelis's avatar
famelis committed
              ensureLinksIsMutable();
              links_.addAll(other.links_);
famelis's avatar
famelis committed
          if (!other.links_.isEmpty()) {
            if (linksBuilder_.isEmpty()) {
              linksBuilder_.dispose();
              linksBuilder_ = null;
              links_ = other.links_;
              bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
              linksBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
famelis's avatar
famelis committed
                   getLinksFieldBuilder() : null;
famelis's avatar
famelis committed
              linksBuilder_.addAllMessages(other.links_);
famelis's avatar
famelis committed
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
famelis's avatar
famelis committed

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.LinkList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.LinkList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
famelis's avatar
famelis committed
      private int bitField0_;
famelis's avatar
famelis committed
      private java.util.List<context.ContextOuterClass.Link> links_ =
        java.util.Collections.emptyList();
famelis's avatar
famelis committed
      private void ensureLinksIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(links_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> linksBuilder_;
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.Link> getLinksList() {
        if (linksBuilder_ == null) {
          return java.util.Collections.unmodifiableList(links_);
famelis's avatar
famelis committed
          return linksBuilder_.getMessageList();
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public int getLinksCount() {
        if (linksBuilder_ == null) {
          return links_.size();
famelis's avatar
famelis committed
          return linksBuilder_.getCount();
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Link getLinks(int index) {
        if (linksBuilder_ == null) {
          return links_.get(index);
famelis's avatar
famelis committed
          return linksBuilder_.getMessage(index);
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public Builder setLinks(
          int index, context.ContextOuterClass.Link value) {
        if (linksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureLinksIsMutable();
          links_.set(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          linksBuilder_.setMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public Builder setLinks(
          int index, context.ContextOuterClass.Link.Builder builderForValue) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          links_.set(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          linksBuilder_.setMessage(index, builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public Builder addLinks(context.ContextOuterClass.Link value) {
        if (linksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureLinksIsMutable();
          links_.add(value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          linksBuilder_.addMessage(value);
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public Builder addLinks(
          int index, context.ContextOuterClass.Link value) {
        if (linksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureLinksIsMutable();
          links_.add(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          linksBuilder_.addMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public Builder addLinks(
          context.ContextOuterClass.Link.Builder builderForValue) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          links_.add(builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          linksBuilder_.addMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public Builder addLinks(
          int index, context.ContextOuterClass.Link.Builder builderForValue) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          links_.add(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          linksBuilder_.addMessage(index, builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public Builder addAllLinks(
          java.lang.Iterable<? extends context.ContextOuterClass.Link> values) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
famelis's avatar
famelis committed
              values, links_);
          onChanged();
famelis's avatar
famelis committed
          linksBuilder_.addAllMessages(values);
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public Builder clearLinks() {
        if (linksBuilder_ == null) {
          links_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
famelis's avatar
famelis committed
          linksBuilder_.clear();
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public Builder removeLinks(int index) {
        if (linksBuilder_ == null) {
          ensureLinksIsMutable();
          links_.remove(index);
          onChanged();
        } else {
famelis's avatar
famelis committed
          linksBuilder_.remove(index);
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Link.Builder getLinksBuilder(
          int index) {
famelis's avatar
famelis committed
        return getLinksFieldBuilder().getBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder(
          int index) {
famelis's avatar
famelis committed
        if (linksBuilder_ == null) {
          return links_.get(index);  } else {
          return linksBuilder_.getMessageOrBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> 
           getLinksOrBuilderList() {
        if (linksBuilder_ != null) {
          return linksBuilder_.getMessageOrBuilderList();
famelis's avatar
famelis committed
          return java.util.Collections.unmodifiableList(links_);
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Link.Builder addLinksBuilder() {
        return getLinksFieldBuilder().addBuilder(
            context.ContextOuterClass.Link.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Link.Builder addLinksBuilder(
          int index) {
famelis's avatar
famelis committed
        return getLinksFieldBuilder().addBuilder(
            index, context.ContextOuterClass.Link.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.Link links = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.Link.Builder> 
           getLinksBuilderList() {
        return getLinksFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> 
          getLinksFieldBuilder() {
        if (linksBuilder_ == null) {
          linksBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder>(
                  links_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          links_ = null;
famelis's avatar
famelis committed
        return linksBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.LinkList)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.LinkList)
    private static final context.ContextOuterClass.LinkList DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.LinkList();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<LinkList>
        PARSER = new com.google.protobuf.AbstractParser<LinkList>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public LinkList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new LinkList(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<LinkList> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<LinkList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkList getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface LinkEventOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.LinkEvent)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
    boolean hasEvent();
     * <code>.context.Event event = 1;</code>
     * @return The event.
    context.ContextOuterClass.Event getEvent();
     * <code>.context.Event event = 1;</code>
    context.ContextOuterClass.EventOrBuilder getEventOrBuilder();
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 2;</code>
     * @return Whether the linkId field is set.
famelis's avatar
famelis committed
    boolean hasLinkId();
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 2;</code>
     * @return The linkId.
famelis's avatar
famelis committed
    context.ContextOuterClass.LinkId getLinkId();
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 2;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder();
famelis's avatar
famelis committed
   * Protobuf type {@code context.LinkEvent}
famelis's avatar
famelis committed
  public static final class LinkEvent extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.LinkEvent)
      LinkEventOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use LinkEvent.newBuilder() to construct.
    private LinkEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private LinkEvent() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new LinkEvent();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private LinkEvent(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.Event.Builder subBuilder = null;
              if (event_ != null) {
                subBuilder = event_.toBuilder();
              event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(event_);
                event_ = subBuilder.buildPartial();
famelis's avatar
famelis committed
              context.ContextOuterClass.LinkId.Builder subBuilder = null;
              if (linkId_ != null) {
                subBuilder = linkId_.toBuilder();
famelis's avatar
famelis committed
              linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry);
              if (subBuilder != null) {
famelis's avatar
famelis committed
                subBuilder.mergeFrom(linkId_);
                linkId_ = subBuilder.buildPartial();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class);
    public static final int EVENT_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Event event_;
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
     */
    @java.lang.Override
    public boolean hasEvent() {
      return event_ != null;
     * <code>.context.Event event = 1;</code>
     * @return The event.
     */
    @java.lang.Override
    public context.ContextOuterClass.Event getEvent() {
      return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
famelis's avatar
famelis committed
    /**
     * <code>.context.Event event = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
      return getEvent();
famelis's avatar
famelis committed
    public static final int LINK_ID_FIELD_NUMBER = 2;
    private context.ContextOuterClass.LinkId linkId_;
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 2;</code>
     * @return Whether the linkId field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasLinkId() {
      return linkId_ != null;
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 2;</code>
     * @return The linkId.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkId getLinkId() {
      return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_;
famelis's avatar
famelis committed
     * <code>.context.LinkId link_id = 2;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() {
      return getLinkId();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (event_ != null) {
        output.writeMessage(1, getEvent());
famelis's avatar
famelis committed
      if (linkId_ != null) {
        output.writeMessage(2, getLinkId());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (event_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getEvent());
famelis's avatar
famelis committed
      if (linkId_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(2, getLinkId());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.LinkEvent)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.LinkEvent other = (context.ContextOuterClass.LinkEvent) obj;
      if (hasEvent() != other.hasEvent()) return false;
      if (hasEvent()) {
        if (!getEvent()
            .equals(other.getEvent())) return false;
famelis's avatar
famelis committed
      if (hasLinkId() != other.hasLinkId()) return false;
      if (hasLinkId()) {
        if (!getLinkId()
            .equals(other.getLinkId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasEvent()) {
        hash = (37 * hash) + EVENT_FIELD_NUMBER;
        hash = (53 * hash) + getEvent().hashCode();
famelis's avatar
famelis committed
      if (hasLinkId()) {
        hash = (37 * hash) + LINK_ID_FIELD_NUMBER;
        hash = (53 * hash) + getLinkId().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.LinkEvent prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.LinkEvent}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.LinkEvent)
        context.ContextOuterClass.LinkEventOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.LinkEvent.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (eventBuilder_ == null) {
          event_ = null;
          event_ = null;
          eventBuilder_ = null;
famelis's avatar
famelis committed
        if (linkIdBuilder_ == null) {
          linkId_ = null;
famelis's avatar
famelis committed
          linkId_ = null;
          linkIdBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() {
        return context.ContextOuterClass.LinkEvent.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkEvent build() {
        context.ContextOuterClass.LinkEvent result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkEvent buildPartial() {
        context.ContextOuterClass.LinkEvent result = new context.ContextOuterClass.LinkEvent(this);
        if (eventBuilder_ == null) {
          result.event_ = event_;
          result.event_ = eventBuilder_.build();
famelis's avatar
famelis committed
        if (linkIdBuilder_ == null) {
          result.linkId_ = linkId_;
famelis's avatar
famelis committed
          result.linkId_ = linkIdBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.LinkEvent) {
          return mergeFrom((context.ContextOuterClass.LinkEvent)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.LinkEvent other) {
        if (other == context.ContextOuterClass.LinkEvent.getDefaultInstance()) return this;
        if (other.hasEvent()) {
          mergeEvent(other.getEvent());
famelis's avatar
famelis committed
        if (other.hasLinkId()) {
          mergeLinkId(other.getLinkId());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.LinkEvent parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.LinkEvent) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

famelis's avatar
famelis committed
      private context.ContextOuterClass.Event event_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_;
      /**
       * <code>.context.Event event = 1;</code>
       * @return Whether the event field is set.
       */
      public boolean hasEvent() {
        return eventBuilder_ != null || event_ != null;
famelis's avatar
famelis committed
      /**
       * <code>.context.Event event = 1;</code>
       * @return The event.
       */
      public context.ContextOuterClass.Event getEvent() {
        if (eventBuilder_ == null) {
          return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
        } else {
          return eventBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public Builder setEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          event_ = value;
          onChanged();
        } else {
          eventBuilder_.setMessage(value);
        }
famelis's avatar
famelis committed
        return this;
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public Builder setEvent(
          context.ContextOuterClass.Event.Builder builderForValue) {
        if (eventBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
          eventBuilder_.setMessage(builderForValue.build());
        }
famelis's avatar
famelis committed
        return this;
      }
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
famelis's avatar
famelis committed
      public Builder mergeEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (event_ != null) {
            event_ =
              context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial();
          } else {
            event_ = value;
          }
          onChanged();
famelis's avatar
famelis committed
          eventBuilder_.mergeFrom(value);
famelis's avatar
famelis committed

        return this;
famelis's avatar
famelis committed
       * <code>.context.Event event = 1;</code>
famelis's avatar
famelis committed
      public Builder clearEvent() {
        if (eventBuilder_ == null) {
          event_ = null;
          onChanged();
famelis's avatar
famelis committed
          event_ = null;
          eventBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public context.ContextOuterClass.Event.Builder getEventBuilder() {
        
        onChanged();
        return getEventFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
        if (eventBuilder_ != null) {
          return eventBuilder_.getMessageOrBuilder();
        } else {
          return event_ == null ?
              context.ContextOuterClass.Event.getDefaultInstance() : event_;
        }
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> 
          getEventFieldBuilder() {
        if (eventBuilder_ == null) {
          eventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder>(
                  getEvent(),
                  getParentForChildren(),
                  isClean());
          event_ = null;
famelis's avatar
famelis committed
        return eventBuilder_;
famelis's avatar
famelis committed
      private context.ContextOuterClass.LinkId linkId_;
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 2;</code>
       * @return Whether the linkId field is set.
famelis's avatar
famelis committed
      public boolean hasLinkId() {
        return linkIdBuilder_ != null || linkId_ != null;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 2;</code>
       * @return The linkId.
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId getLinkId() {
        if (linkIdBuilder_ == null) {
          return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_;
famelis's avatar
famelis committed
          return linkIdBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 2;</code>
famelis's avatar
famelis committed
      public Builder setLinkId(context.ContextOuterClass.LinkId value) {
        if (linkIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          linkId_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 2;</code>
famelis's avatar
famelis committed
      public Builder setLinkId(
          context.ContextOuterClass.LinkId.Builder builderForValue) {
        if (linkIdBuilder_ == null) {
          linkId_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdBuilder_.setMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 2;</code>
famelis's avatar
famelis committed
      public Builder mergeLinkId(context.ContextOuterClass.LinkId value) {
        if (linkIdBuilder_ == null) {
          if (linkId_ != null) {
            linkId_ =
              context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial();
famelis's avatar
famelis committed
            linkId_ = value;
          }
          onChanged();
        } else {
famelis's avatar
famelis committed
          linkIdBuilder_.mergeFrom(value);
        return this;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 2;</code>
famelis's avatar
famelis committed
      public Builder clearLinkId() {
        if (linkIdBuilder_ == null) {
          linkId_ = null;
          onChanged();
famelis's avatar
famelis committed
          linkId_ = null;
          linkIdBuilder_ = null;
        return this;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 2;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() {
famelis's avatar
famelis committed
        return getLinkIdFieldBuilder().getBuilder();
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 2;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() {
        if (linkIdBuilder_ != null) {
          return linkIdBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return linkId_ == null ?
              context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_;
famelis's avatar
famelis committed
       * <code>.context.LinkId link_id = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> 
          getLinkIdFieldBuilder() {
        if (linkIdBuilder_ == null) {
          linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>(
                  getLinkId(),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          linkId_ = null;
famelis's avatar
famelis committed
        return linkIdBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.LinkEvent)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.LinkEvent)
    private static final context.ContextOuterClass.LinkEvent DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.LinkEvent();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.LinkEvent getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<LinkEvent>
        PARSER = new com.google.protobuf.AbstractParser<LinkEvent>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public LinkEvent parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new LinkEvent(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<LinkEvent> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<LinkEvent> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface ServiceIdOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ServiceId)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>.context.ContextId context_id = 1;</code>
     * @return Whether the contextId field is set.
famelis's avatar
famelis committed
    boolean hasContextId();
famelis's avatar
famelis committed
     * <code>.context.ContextId context_id = 1;</code>
     * @return The contextId.
famelis's avatar
famelis committed
    context.ContextOuterClass.ContextId getContextId();
famelis's avatar
famelis committed
     * <code>.context.ContextId context_id = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder();
famelis's avatar
famelis committed
     * <code>.context.Uuid service_uuid = 2;</code>
     * @return Whether the serviceUuid field is set.
famelis's avatar
famelis committed
    boolean hasServiceUuid();
famelis's avatar
famelis committed
     * <code>.context.Uuid service_uuid = 2;</code>
     * @return The serviceUuid.
famelis's avatar
famelis committed
    context.ContextOuterClass.Uuid getServiceUuid();
famelis's avatar
famelis committed
     * <code>.context.Uuid service_uuid = 2;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder();
famelis's avatar
famelis committed
   * ----- Service -------------------------------------------------------------------------------------------------------
famelis's avatar
famelis committed
   * Protobuf type {@code context.ServiceId}
famelis's avatar
famelis committed
  public static final class ServiceId extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.ServiceId)
      ServiceIdOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use ServiceId.newBuilder() to construct.
    private ServiceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private ServiceId() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new ServiceId();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private ServiceId(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
famelis's avatar
famelis committed
              context.ContextOuterClass.ContextId.Builder subBuilder = null;
              if (contextId_ != null) {
                subBuilder = contextId_.toBuilder();
famelis's avatar
famelis committed
              contextId_ = input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry);
              if (subBuilder != null) {
famelis's avatar
famelis committed
                subBuilder.mergeFrom(contextId_);
                contextId_ = subBuilder.buildPartial();
              context.ContextOuterClass.Uuid.Builder subBuilder = null;
famelis's avatar
famelis committed
              if (serviceUuid_ != null) {
                subBuilder = serviceUuid_.toBuilder();
famelis's avatar
famelis committed
              serviceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry);
              if (subBuilder != null) {
famelis's avatar
famelis committed
                subBuilder.mergeFrom(serviceUuid_);
                serviceUuid_ = subBuilder.buildPartial();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceId_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class);
famelis's avatar
famelis committed
    public static final int CONTEXT_ID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.ContextId contextId_;
famelis's avatar
famelis committed
     * <code>.context.ContextId context_id = 1;</code>
     * @return Whether the contextId field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasContextId() {
      return contextId_ != null;
famelis's avatar
famelis committed
     * <code>.context.ContextId context_id = 1;</code>
     * @return The contextId.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ContextId getContextId() {
      return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
famelis's avatar
famelis committed
     * <code>.context.ContextId context_id = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() {
      return getContextId();
famelis's avatar
famelis committed
    public static final int SERVICE_UUID_FIELD_NUMBER = 2;
    private context.ContextOuterClass.Uuid serviceUuid_;
famelis's avatar
famelis committed
     * <code>.context.Uuid service_uuid = 2;</code>
     * @return Whether the serviceUuid field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasServiceUuid() {
      return serviceUuid_ != null;
famelis's avatar
famelis committed
     * <code>.context.Uuid service_uuid = 2;</code>
     * @return The serviceUuid.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.Uuid getServiceUuid() {
      return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_;
famelis's avatar
famelis committed
     * <code>.context.Uuid service_uuid = 2;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() {
      return getServiceUuid();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      if (contextId_ != null) {
        output.writeMessage(1, getContextId());
famelis's avatar
famelis committed
      if (serviceUuid_ != null) {
        output.writeMessage(2, getServiceUuid());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      if (contextId_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, getContextId());
famelis's avatar
famelis committed
      if (serviceUuid_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(2, getServiceUuid());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.ServiceId)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.ServiceId other = (context.ContextOuterClass.ServiceId) obj;
famelis's avatar
famelis committed
      if (hasContextId() != other.hasContextId()) return false;
      if (hasContextId()) {
        if (!getContextId()
            .equals(other.getContextId())) return false;
famelis's avatar
famelis committed
      if (hasServiceUuid() != other.hasServiceUuid()) return false;
      if (hasServiceUuid()) {
        if (!getServiceUuid()
            .equals(other.getServiceUuid())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (hasContextId()) {
        hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER;
        hash = (53 * hash) + getContextId().hashCode();
famelis's avatar
famelis committed
      if (hasServiceUuid()) {
        hash = (37 * hash) + SERVICE_UUID_FIELD_NUMBER;
        hash = (53 * hash) + getServiceUuid().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.ServiceId prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * ----- Service -------------------------------------------------------------------------------------------------------
famelis's avatar
famelis committed
     * Protobuf type {@code context.ServiceId}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.ServiceId)
        context.ContextOuterClass.ServiceIdOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceId_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.ServiceId.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (contextIdBuilder_ == null) {
          contextId_ = null;
famelis's avatar
famelis committed
          contextId_ = null;
          contextIdBuilder_ = null;
famelis's avatar
famelis committed
        if (serviceUuidBuilder_ == null) {
          serviceUuid_ = null;
famelis's avatar
famelis committed
          serviceUuid_ = null;
          serviceUuidBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceId_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceId getDefaultInstanceForType() {
        return context.ContextOuterClass.ServiceId.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceId build() {
        context.ContextOuterClass.ServiceId result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceId buildPartial() {
        context.ContextOuterClass.ServiceId result = new context.ContextOuterClass.ServiceId(this);
        if (contextIdBuilder_ == null) {
          result.contextId_ = contextId_;
famelis's avatar
famelis committed
          result.contextId_ = contextIdBuilder_.build();
famelis's avatar
famelis committed
        if (serviceUuidBuilder_ == null) {
          result.serviceUuid_ = serviceUuid_;
famelis's avatar
famelis committed
          result.serviceUuid_ = serviceUuidBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.ServiceId) {
          return mergeFrom((context.ContextOuterClass.ServiceId)other);
famelis's avatar
famelis committed
          super.mergeFrom(other);
          return this;
famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.ServiceId other) {
        if (other == context.ContextOuterClass.ServiceId.getDefaultInstance()) return this;
        if (other.hasContextId()) {
          mergeContextId(other.getContextId());
famelis's avatar
famelis committed
        if (other.hasServiceUuid()) {
          mergeServiceUuid(other.getServiceUuid());
famelis's avatar
famelis committed
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.ServiceId parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.ServiceId) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

famelis's avatar
famelis committed
      private context.ContextOuterClass.ContextId contextId_;
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> contextIdBuilder_;
famelis's avatar
famelis committed
       * <code>.context.ContextId context_id = 1;</code>
       * @return Whether the contextId field is set.
famelis's avatar
famelis committed
      public boolean hasContextId() {
        return contextIdBuilder_ != null || contextId_ != null;
famelis's avatar
famelis committed
       * <code>.context.ContextId context_id = 1;</code>
       * @return The contextId.
famelis's avatar
famelis committed
      public context.ContextOuterClass.ContextId getContextId() {
        if (contextIdBuilder_ == null) {
          return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
famelis's avatar
famelis committed
          return contextIdBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.ContextId context_id = 1;</code>
famelis's avatar
famelis committed
      public Builder setContextId(context.ContextOuterClass.ContextId value) {
        if (contextIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          contextId_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          contextIdBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.ContextId context_id = 1;</code>
famelis's avatar
famelis committed
      public Builder setContextId(
          context.ContextOuterClass.ContextId.Builder builderForValue) {
        if (contextIdBuilder_ == null) {
          contextId_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          contextIdBuilder_.setMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>.context.ContextId context_id = 1;</code>
famelis's avatar
famelis committed
      public Builder mergeContextId(context.ContextOuterClass.ContextId value) {
        if (contextIdBuilder_ == null) {
          if (contextId_ != null) {
            contextId_ =
              context.ContextOuterClass.ContextId.newBuilder(contextId_).mergeFrom(value).buildPartial();
famelis's avatar
famelis committed
            contextId_ = value;
          }
          onChanged();
        } else {
famelis's avatar
famelis committed
          contextIdBuilder_.mergeFrom(value);
famelis's avatar
famelis committed
       * <code>.context.ContextId context_id = 1;</code>
famelis's avatar
famelis committed
      public Builder clearContextId() {
        if (contextIdBuilder_ == null) {
          contextId_ = null;
          onChanged();
        } else {
famelis's avatar
famelis committed
          contextId_ = null;
          contextIdBuilder_ = null;
famelis's avatar
famelis committed
       * <code>.context.ContextId context_id = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ContextId.Builder getContextIdBuilder() {
famelis's avatar
famelis committed
        return getContextIdFieldBuilder().getBuilder();
famelis's avatar
famelis committed
       * <code>.context.ContextId context_id = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() {
        if (contextIdBuilder_ != null) {
          return contextIdBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return contextId_ == null ?
              context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
famelis's avatar
famelis committed
       * <code>.context.ContextId context_id = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> 
          getContextIdFieldBuilder() {
        if (contextIdBuilder_ == null) {
          contextIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder>(
                  getContextId(),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          contextId_ = null;
famelis's avatar
famelis committed
        return contextIdBuilder_;
famelis's avatar
famelis committed
      private context.ContextOuterClass.Uuid serviceUuid_;
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> serviceUuidBuilder_;
famelis's avatar
famelis committed
       * <code>.context.Uuid service_uuid = 2;</code>
       * @return Whether the serviceUuid field is set.
famelis's avatar
famelis committed
      public boolean hasServiceUuid() {
        return serviceUuidBuilder_ != null || serviceUuid_ != null;
famelis's avatar
famelis committed
       * <code>.context.Uuid service_uuid = 2;</code>
       * @return The serviceUuid.
famelis's avatar
famelis committed
      public context.ContextOuterClass.Uuid getServiceUuid() {
        if (serviceUuidBuilder_ == null) {
          return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_;
famelis's avatar
famelis committed
          return serviceUuidBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.Uuid service_uuid = 2;</code>
famelis's avatar
famelis committed
      public Builder setServiceUuid(context.ContextOuterClass.Uuid value) {
        if (serviceUuidBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
famelis's avatar
famelis committed
          serviceUuid_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceUuidBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.Uuid service_uuid = 2;</code>
famelis's avatar
famelis committed
      public Builder setServiceUuid(
          context.ContextOuterClass.Uuid.Builder builderForValue) {
famelis's avatar
famelis committed
        if (serviceUuidBuilder_ == null) {
          serviceUuid_ = builderForValue.build();
          onChanged();
famelis's avatar
famelis committed
          serviceUuidBuilder_.setMessage(builderForValue.build());
        return this;
famelis's avatar
famelis committed
       * <code>.context.Uuid service_uuid = 2;</code>
famelis's avatar
famelis committed
      public Builder mergeServiceUuid(context.ContextOuterClass.Uuid value) {
        if (serviceUuidBuilder_ == null) {
          if (serviceUuid_ != null) {
            serviceUuid_ =
              context.ContextOuterClass.Uuid.newBuilder(serviceUuid_).mergeFrom(value).buildPartial();
famelis's avatar
famelis committed
            serviceUuid_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceUuidBuilder_.mergeFrom(value);
famelis's avatar
famelis committed
       * <code>.context.Uuid service_uuid = 2;</code>
famelis's avatar
famelis committed
      public Builder clearServiceUuid() {
        if (serviceUuidBuilder_ == null) {
          serviceUuid_ = null;
          onChanged();
famelis's avatar
famelis committed
          serviceUuid_ = null;
          serviceUuidBuilder_ = null;
        return this;
famelis's avatar
famelis committed
       * <code>.context.Uuid service_uuid = 2;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Uuid.Builder getServiceUuidBuilder() {
famelis's avatar
famelis committed
        return getServiceUuidFieldBuilder().getBuilder();
famelis's avatar
famelis committed
       * <code>.context.Uuid service_uuid = 2;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() {
        if (serviceUuidBuilder_ != null) {
          return serviceUuidBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return serviceUuid_ == null ?
              context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_;
famelis's avatar
famelis committed
       * <code>.context.Uuid service_uuid = 2;</code>
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> 
famelis's avatar
famelis committed
          getServiceUuidFieldBuilder() {
        if (serviceUuidBuilder_ == null) {
          serviceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>(
famelis's avatar
famelis committed
                  getServiceUuid(),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          serviceUuid_ = null;
famelis's avatar
famelis committed
        return serviceUuidBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.ServiceId)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.ServiceId)
    private static final context.ContextOuterClass.ServiceId DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceId();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceId getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<ServiceId>
        PARSER = new com.google.protobuf.AbstractParser<ServiceId>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public ServiceId parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new ServiceId(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<ServiceId> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<ServiceId> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceId getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface ServiceOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.Service)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>.context.ServiceId service_id = 1;</code>
     * @return Whether the serviceId field is set.
famelis's avatar
famelis committed
    boolean hasServiceId();
famelis's avatar
famelis committed
     * <code>.context.ServiceId service_id = 1;</code>
     * @return The serviceId.
famelis's avatar
famelis committed
    context.ContextOuterClass.ServiceId getServiceId();
famelis's avatar
famelis committed
     * <code>.context.ServiceId service_id = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder();

    /**
     * <code>string name = 2;</code>
     * @return The name.
     */
    java.lang.String getName();
    /**
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    com.google.protobuf.ByteString
        getNameBytes();
famelis's avatar
famelis committed
     * <code>.context.ServiceTypeEnum service_type = 3;</code>
     * @return The enum numeric value on the wire for serviceType.
     */
    int getServiceTypeValue();
    /**
     * <code>.context.ServiceTypeEnum service_type = 3;</code>
     * @return The serviceType.
     */
    context.ContextOuterClass.ServiceTypeEnum getServiceType();

    /**
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
    java.util.List<context.ContextOuterClass.EndPointId> 
famelis's avatar
famelis committed
        getServiceEndpointIdsList();
famelis's avatar
famelis committed
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.EndPointId getServiceEndpointIds(int index);
famelis's avatar
famelis committed
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
    int getServiceEndpointIdsCount();
famelis's avatar
famelis committed
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
     */
    java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> 
famelis's avatar
famelis committed
        getServiceEndpointIdsOrBuilderList();
famelis's avatar
famelis committed
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder(
        int index);

    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    java.util.List<context.ContextOuterClass.Constraint> 
        getServiceConstraintsList();
    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    context.ContextOuterClass.Constraint getServiceConstraints(int index);
    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    int getServiceConstraintsCount();
    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> 
        getServiceConstraintsOrBuilderList();
    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder(
        int index);
famelis's avatar
famelis committed

    /**
     * <code>.context.ServiceStatus service_status = 6;</code>
     * @return Whether the serviceStatus field is set.
     */
    boolean hasServiceStatus();
    /**
     * <code>.context.ServiceStatus service_status = 6;</code>
     * @return The serviceStatus.
     */
    context.ContextOuterClass.ServiceStatus getServiceStatus();
    /**
     * <code>.context.ServiceStatus service_status = 6;</code>
     */
    context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder();

    /**
     * <code>.context.ServiceConfig service_config = 7;</code>
     * @return Whether the serviceConfig field is set.
     */
    boolean hasServiceConfig();
    /**
     * <code>.context.ServiceConfig service_config = 7;</code>
     * @return The serviceConfig.
     */
    context.ContextOuterClass.ServiceConfig getServiceConfig();
    /**
     * <code>.context.ServiceConfig service_config = 7;</code>
     */
    context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder();

    /**
     * <code>.context.Timestamp timestamp = 8;</code>
     * @return Whether the timestamp field is set.
     */
    boolean hasTimestamp();
    /**
     * <code>.context.Timestamp timestamp = 8;</code>
     * @return The timestamp.
     */
    context.ContextOuterClass.Timestamp getTimestamp();
    /**
     * <code>.context.Timestamp timestamp = 8;</code>
     */
    context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder();
famelis's avatar
famelis committed
   * Protobuf type {@code context.Service}
famelis's avatar
famelis committed
  public static final class Service extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.Service)
      ServiceOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use Service.newBuilder() to construct.
    private Service(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private Service() {
      name_ = "";
      serviceType_ = 0;
      serviceEndpointIds_ = java.util.Collections.emptyList();
      serviceConstraints_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new Service();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private Service(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
famelis's avatar
famelis committed
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
famelis's avatar
famelis committed
              context.ContextOuterClass.ServiceId.Builder subBuilder = null;
              if (serviceId_ != null) {
                subBuilder = serviceId_.toBuilder();
famelis's avatar
famelis committed
              serviceId_ = input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry);
              if (subBuilder != null) {
famelis's avatar
famelis committed
                subBuilder.mergeFrom(serviceId_);
                serviceId_ = subBuilder.buildPartial();
famelis's avatar
famelis committed
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 24: {
              int rawValue = input.readEnum();

              serviceType_ = rawValue;
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
                serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>();
                mutable_bitField0_ |= 0x00000001;
              }
famelis's avatar
famelis committed
              serviceEndpointIds_.add(
                  input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry));
famelis's avatar
famelis committed
            case 42: {
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                serviceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>();
                mutable_bitField0_ |= 0x00000002;
              }
              serviceConstraints_.add(
                  input.readMessage(context.ContextOuterClass.Constraint.parser(), extensionRegistry));
              break;
            }
            case 50: {
              context.ContextOuterClass.ServiceStatus.Builder subBuilder = null;
              if (serviceStatus_ != null) {
                subBuilder = serviceStatus_.toBuilder();
              }
              serviceStatus_ = input.readMessage(context.ContextOuterClass.ServiceStatus.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(serviceStatus_);
                serviceStatus_ = subBuilder.buildPartial();
              }

              break;
            }
            case 58: {
              context.ContextOuterClass.ServiceConfig.Builder subBuilder = null;
              if (serviceConfig_ != null) {
                subBuilder = serviceConfig_.toBuilder();
              }
              serviceConfig_ = input.readMessage(context.ContextOuterClass.ServiceConfig.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(serviceConfig_);
                serviceConfig_ = subBuilder.buildPartial();
              }

              break;
            }
            case 66: {
              context.ContextOuterClass.Timestamp.Builder subBuilder = null;
              if (timestamp_ != null) {
                subBuilder = timestamp_.toBuilder();
              }
              timestamp_ = input.readMessage(context.ContextOuterClass.Timestamp.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(timestamp_);
                timestamp_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_);
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_Service_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class);
famelis's avatar
famelis committed
    public static final int SERVICE_ID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.ServiceId serviceId_;
famelis's avatar
famelis committed
     * <code>.context.ServiceId service_id = 1;</code>
     * @return Whether the serviceId field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasServiceId() {
      return serviceId_ != null;
famelis's avatar
famelis committed
     * <code>.context.ServiceId service_id = 1;</code>
     * @return The serviceId.
     */
    @java.lang.Override
    public context.ContextOuterClass.ServiceId getServiceId() {
      return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_;
    }
    /**
     * <code>.context.ServiceId service_id = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() {
      return getServiceId();
    }

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
    /**
     * <code>string name = 2;</code>
     * @return The name.
     */
    @java.lang.Override
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SERVICE_TYPE_FIELD_NUMBER = 3;
    private int serviceType_;
    /**
     * <code>.context.ServiceTypeEnum service_type = 3;</code>
     * @return The enum numeric value on the wire for serviceType.
     */
    @java.lang.Override public int getServiceTypeValue() {
      return serviceType_;
    }
    /**
     * <code>.context.ServiceTypeEnum service_type = 3;</code>
     * @return The serviceType.
     */
    @java.lang.Override public context.ContextOuterClass.ServiceTypeEnum getServiceType() {
      @SuppressWarnings("deprecation")
      context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_);
      return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result;
    }

    public static final int SERVICE_ENDPOINT_IDS_FIELD_NUMBER = 4;
    private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_;
    /**
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() {
      return serviceEndpointIds_;
    }
    /**
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> 
        getServiceEndpointIdsOrBuilderList() {
      return serviceEndpointIds_;
    }
    /**
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
     */
    @java.lang.Override
    public int getServiceEndpointIdsCount() {
      return serviceEndpointIds_.size();
    }
    /**
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) {
      return serviceEndpointIds_.get(index);
    }
    /**
     * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder(
        int index) {
      return serviceEndpointIds_.get(index);
    }

    public static final int SERVICE_CONSTRAINTS_FIELD_NUMBER = 5;
    private java.util.List<context.ContextOuterClass.Constraint> serviceConstraints_;
    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    @java.lang.Override
    public java.util.List<context.ContextOuterClass.Constraint> getServiceConstraintsList() {
      return serviceConstraints_;
    }
    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    @java.lang.Override
    public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> 
        getServiceConstraintsOrBuilderList() {
      return serviceConstraints_;
    }
    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    @java.lang.Override
    public int getServiceConstraintsCount() {
      return serviceConstraints_.size();
    }
    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.Constraint getServiceConstraints(int index) {
      return serviceConstraints_.get(index);
    }
    /**
     * <code>repeated .context.Constraint service_constraints = 5;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder(
        int index) {
      return serviceConstraints_.get(index);
    }

    public static final int SERVICE_STATUS_FIELD_NUMBER = 6;
    private context.ContextOuterClass.ServiceStatus serviceStatus_;
    /**
     * <code>.context.ServiceStatus service_status = 6;</code>
     * @return Whether the serviceStatus field is set.
     */
    @java.lang.Override
    public boolean hasServiceStatus() {
      return serviceStatus_ != null;
    }
    /**
     * <code>.context.ServiceStatus service_status = 6;</code>
     * @return The serviceStatus.
     */
    @java.lang.Override
    public context.ContextOuterClass.ServiceStatus getServiceStatus() {
      return serviceStatus_ == null ? context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_;
    }
    /**
     * <code>.context.ServiceStatus service_status = 6;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder() {
      return getServiceStatus();
famelis's avatar
famelis committed

    public static final int SERVICE_CONFIG_FIELD_NUMBER = 7;
    private context.ContextOuterClass.ServiceConfig serviceConfig_;
famelis's avatar
famelis committed
     * <code>.context.ServiceConfig service_config = 7;</code>
     * @return Whether the serviceConfig field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasServiceConfig() {
      return serviceConfig_ != null;
famelis's avatar
famelis committed
     * <code>.context.ServiceConfig service_config = 7;</code>
     * @return The serviceConfig.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceConfig getServiceConfig() {
      return serviceConfig_ == null ? context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_;
famelis's avatar
famelis committed
     * <code>.context.ServiceConfig service_config = 7;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder() {
      return getServiceConfig();
famelis's avatar
famelis committed

    public static final int TIMESTAMP_FIELD_NUMBER = 8;
    private context.ContextOuterClass.Timestamp timestamp_;
famelis's avatar
famelis committed
     * <code>.context.Timestamp timestamp = 8;</code>
     * @return Whether the timestamp field is set.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasTimestamp() {
      return timestamp_ != null;
famelis's avatar
famelis committed
     * <code>.context.Timestamp timestamp = 8;</code>
     * @return The timestamp.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.Timestamp getTimestamp() {
      return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_;
famelis's avatar
famelis committed
     * <code>.context.Timestamp timestamp = 8;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() {
      return getTimestamp();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      if (serviceId_ != null) {
        output.writeMessage(1, getServiceId());
famelis's avatar
famelis committed
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) {
        output.writeEnum(3, serviceType_);
      }
      for (int i = 0; i < serviceEndpointIds_.size(); i++) {
        output.writeMessage(4, serviceEndpointIds_.get(i));
      }
      for (int i = 0; i < serviceConstraints_.size(); i++) {
        output.writeMessage(5, serviceConstraints_.get(i));
      }
      if (serviceStatus_ != null) {
        output.writeMessage(6, getServiceStatus());
      }
      if (serviceConfig_ != null) {
        output.writeMessage(7, getServiceConfig());
      }
      if (timestamp_ != null) {
        output.writeMessage(8, getTimestamp());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      if (serviceId_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, getServiceId());
famelis's avatar
famelis committed
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(3, serviceType_);
      }
      for (int i = 0; i < serviceEndpointIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, serviceEndpointIds_.get(i));
      }
      for (int i = 0; i < serviceConstraints_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, serviceConstraints_.get(i));
      }
      if (serviceStatus_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, getServiceStatus());
      }
      if (serviceConfig_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(7, getServiceConfig());
      }
      if (timestamp_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(8, getTimestamp());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.Service)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.Service other = (context.ContextOuterClass.Service) obj;
famelis's avatar
famelis committed
      if (hasServiceId() != other.hasServiceId()) return false;
      if (hasServiceId()) {
        if (!getServiceId()
            .equals(other.getServiceId())) return false;
      }
      if (!getName()
          .equals(other.getName())) return false;
      if (serviceType_ != other.serviceType_) return false;
      if (!getServiceEndpointIdsList()
          .equals(other.getServiceEndpointIdsList())) return false;
      if (!getServiceConstraintsList()
          .equals(other.getServiceConstraintsList())) return false;
      if (hasServiceStatus() != other.hasServiceStatus()) return false;
      if (hasServiceStatus()) {
        if (!getServiceStatus()
            .equals(other.getServiceStatus())) return false;
      }
      if (hasServiceConfig() != other.hasServiceConfig()) return false;
      if (hasServiceConfig()) {
        if (!getServiceConfig()
            .equals(other.getServiceConfig())) return false;
      }
      if (hasTimestamp() != other.hasTimestamp()) return false;
      if (hasTimestamp()) {
        if (!getTimestamp()
            .equals(other.getTimestamp())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (hasServiceId()) {
        hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER;
        hash = (53 * hash) + getServiceId().hashCode();
famelis's avatar
famelis committed
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      hash = (37 * hash) + SERVICE_TYPE_FIELD_NUMBER;
      hash = (53 * hash) + serviceType_;
      if (getServiceEndpointIdsCount() > 0) {
        hash = (37 * hash) + SERVICE_ENDPOINT_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getServiceEndpointIdsList().hashCode();
      }
      if (getServiceConstraintsCount() > 0) {
        hash = (37 * hash) + SERVICE_CONSTRAINTS_FIELD_NUMBER;
        hash = (53 * hash) + getServiceConstraintsList().hashCode();
      }
      if (hasServiceStatus()) {
        hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER;
        hash = (53 * hash) + getServiceStatus().hashCode();
      }
      if (hasServiceConfig()) {
        hash = (37 * hash) + SERVICE_CONFIG_FIELD_NUMBER;
        hash = (53 * hash) + getServiceConfig().hashCode();
      }
      if (hasTimestamp()) {
        hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
        hash = (53 * hash) + getTimestamp().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.Service prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.Service}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.Service)
        context.ContextOuterClass.ServiceOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_Service_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.Service.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
famelis's avatar
famelis committed
          getServiceEndpointIdsFieldBuilder();
          getServiceConstraintsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (serviceIdBuilder_ == null) {
          serviceId_ = null;
famelis's avatar
famelis committed
          serviceId_ = null;
          serviceIdBuilder_ = null;
famelis's avatar
famelis committed
        name_ = "";

        serviceType_ = 0;

        if (serviceEndpointIdsBuilder_ == null) {
          serviceEndpointIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.clear();
        }
        if (serviceConstraintsBuilder_ == null) {
          serviceConstraints_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          serviceConstraintsBuilder_.clear();
        }
        if (serviceStatusBuilder_ == null) {
          serviceStatus_ = null;
        } else {
          serviceStatus_ = null;
          serviceStatusBuilder_ = null;
        }
        if (serviceConfigBuilder_ == null) {
          serviceConfig_ = null;
        } else {
          serviceConfig_ = null;
          serviceConfigBuilder_ = null;
        }
        if (timestampBuilder_ == null) {
          timestamp_ = null;
        } else {
          timestamp_ = null;
          timestampBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_Service_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.Service getDefaultInstanceForType() {
        return context.ContextOuterClass.Service.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.Service build() {
        context.ContextOuterClass.Service result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.Service buildPartial() {
        context.ContextOuterClass.Service result = new context.ContextOuterClass.Service(this);
        int from_bitField0_ = bitField0_;
famelis's avatar
famelis committed
        if (serviceIdBuilder_ == null) {
          result.serviceId_ = serviceId_;
famelis's avatar
famelis committed
          result.serviceId_ = serviceIdBuilder_.build();
famelis's avatar
famelis committed
        result.name_ = name_;
        result.serviceType_ = serviceType_;
        if (serviceEndpointIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
            serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
famelis's avatar
famelis committed
          result.serviceEndpointIds_ = serviceEndpointIds_;
famelis's avatar
famelis committed
          result.serviceEndpointIds_ = serviceEndpointIdsBuilder_.build();
        }
        if (serviceConstraintsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) != 0)) {
            serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.serviceConstraints_ = serviceConstraints_;
        } else {
          result.serviceConstraints_ = serviceConstraintsBuilder_.build();
        }
        if (serviceStatusBuilder_ == null) {
          result.serviceStatus_ = serviceStatus_;
        } else {
          result.serviceStatus_ = serviceStatusBuilder_.build();
        }
        if (serviceConfigBuilder_ == null) {
          result.serviceConfig_ = serviceConfig_;
        } else {
          result.serviceConfig_ = serviceConfigBuilder_.build();
        }
        if (timestampBuilder_ == null) {
          result.timestamp_ = timestamp_;
        } else {
          result.timestamp_ = timestampBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.Service) {
          return mergeFrom((context.ContextOuterClass.Service)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.Service other) {
        if (other == context.ContextOuterClass.Service.getDefaultInstance()) return this;
        if (other.hasServiceId()) {
          mergeServiceId(other.getServiceId());
famelis's avatar
famelis committed
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (other.serviceType_ != 0) {
          setServiceTypeValue(other.getServiceTypeValue());
        }
        if (serviceEndpointIdsBuilder_ == null) {
          if (!other.serviceEndpointIds_.isEmpty()) {
            if (serviceEndpointIds_.isEmpty()) {
              serviceEndpointIds_ = other.serviceEndpointIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
famelis's avatar
famelis committed
              ensureServiceEndpointIdsIsMutable();
              serviceEndpointIds_.addAll(other.serviceEndpointIds_);
famelis's avatar
famelis committed
          if (!other.serviceEndpointIds_.isEmpty()) {
            if (serviceEndpointIdsBuilder_.isEmpty()) {
              serviceEndpointIdsBuilder_.dispose();
              serviceEndpointIdsBuilder_ = null;
              serviceEndpointIds_ = other.serviceEndpointIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
              serviceEndpointIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
famelis's avatar
famelis committed
                   getServiceEndpointIdsFieldBuilder() : null;
famelis's avatar
famelis committed
              serviceEndpointIdsBuilder_.addAllMessages(other.serviceEndpointIds_);
            }
          }
        }
        if (serviceConstraintsBuilder_ == null) {
          if (!other.serviceConstraints_.isEmpty()) {
            if (serviceConstraints_.isEmpty()) {
              serviceConstraints_ = other.serviceConstraints_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureServiceConstraintsIsMutable();
              serviceConstraints_.addAll(other.serviceConstraints_);
            }
            onChanged();
          }
        } else {
          if (!other.serviceConstraints_.isEmpty()) {
            if (serviceConstraintsBuilder_.isEmpty()) {
              serviceConstraintsBuilder_.dispose();
              serviceConstraintsBuilder_ = null;
              serviceConstraints_ = other.serviceConstraints_;
              bitField0_ = (bitField0_ & ~0x00000002);
              serviceConstraintsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getServiceConstraintsFieldBuilder() : null;
            } else {
              serviceConstraintsBuilder_.addAllMessages(other.serviceConstraints_);
famelis's avatar
famelis committed
        if (other.hasServiceStatus()) {
          mergeServiceStatus(other.getServiceStatus());
        }
        if (other.hasServiceConfig()) {
          mergeServiceConfig(other.getServiceConfig());
        }
        if (other.hasTimestamp()) {
          mergeTimestamp(other.getTimestamp());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.Service parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.Service) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
famelis's avatar
famelis committed
      private int bitField0_;
famelis's avatar
famelis committed
      private context.ContextOuterClass.ServiceId serviceId_;
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_;
famelis's avatar
famelis committed
       * <code>.context.ServiceId service_id = 1;</code>
       * @return Whether the serviceId field is set.
famelis's avatar
famelis committed
      public boolean hasServiceId() {
        return serviceIdBuilder_ != null || serviceId_ != null;
famelis's avatar
famelis committed
       * <code>.context.ServiceId service_id = 1;</code>
       * @return The serviceId.
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceId getServiceId() {
        if (serviceIdBuilder_ == null) {
          return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_;
famelis's avatar
famelis committed
          return serviceIdBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.ServiceId service_id = 1;</code>
famelis's avatar
famelis committed
      public Builder setServiceId(context.ContextOuterClass.ServiceId value) {
        if (serviceIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          serviceId_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.ServiceId service_id = 1;</code>
famelis's avatar
famelis committed
      public Builder setServiceId(
          context.ContextOuterClass.ServiceId.Builder builderForValue) {
        if (serviceIdBuilder_ == null) {
          serviceId_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.context.ServiceId service_id = 1;</code>
       */
      public Builder mergeServiceId(context.ContextOuterClass.ServiceId value) {
        if (serviceIdBuilder_ == null) {
          if (serviceId_ != null) {
            serviceId_ =
              context.ContextOuterClass.ServiceId.newBuilder(serviceId_).mergeFrom(value).buildPartial();
          } else {
            serviceId_ = value;
          }
          onChanged();
        } else {
          serviceIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.context.ServiceId service_id = 1;</code>
       */
      public Builder clearServiceId() {
        if (serviceIdBuilder_ == null) {
          serviceId_ = null;
          onChanged();
        } else {
          serviceId_ = null;
          serviceIdBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.context.ServiceId service_id = 1;</code>
       */
      public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() {
        
        onChanged();
        return getServiceIdFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.ServiceId service_id = 1;</code>
       */
      public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() {
        if (serviceIdBuilder_ != null) {
          return serviceIdBuilder_.getMessageOrBuilder();
        } else {
          return serviceId_ == null ?
              context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_;
        }
      }
      /**
       * <code>.context.ServiceId service_id = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> 
          getServiceIdFieldBuilder() {
        if (serviceIdBuilder_ == null) {
          serviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>(
                  getServiceId(),
                  getParentForChildren(),
                  isClean());
          serviceId_ = null;
famelis's avatar
famelis committed
        return serviceIdBuilder_;
      }
famelis's avatar
famelis committed
      private java.lang.Object name_ = "";
      /**
       * <code>string name = 2;</code>
       * @return The name.
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @return The bytes for name.
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       * @param value The name to set.
       * @return This builder for chaining.
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
famelis's avatar
famelis committed
       * <code>string name = 2;</code>
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
famelis's avatar
famelis committed
       * <code>string name = 2;</code>
       * @param value The bytes for name to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
famelis's avatar
famelis committed

      private int serviceType_ = 0;
famelis's avatar
famelis committed
       * <code>.context.ServiceTypeEnum service_type = 3;</code>
       * @return The enum numeric value on the wire for serviceType.
famelis's avatar
famelis committed
      @java.lang.Override public int getServiceTypeValue() {
        return serviceType_;
      }
      /**
       * <code>.context.ServiceTypeEnum service_type = 3;</code>
       * @param value The enum numeric value on the wire for serviceType to set.
       * @return This builder for chaining.
       */
      public Builder setServiceTypeValue(int value) {
famelis's avatar
famelis committed
        serviceType_ = value;
        onChanged();
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
       * <code>.context.ServiceTypeEnum service_type = 3;</code>
       * @return The serviceType.
famelis's avatar
famelis committed
      @java.lang.Override
      public context.ContextOuterClass.ServiceTypeEnum getServiceType() {
        @SuppressWarnings("deprecation")
        context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_);
        return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result;
famelis's avatar
famelis committed
       * <code>.context.ServiceTypeEnum service_type = 3;</code>
       * @param value The serviceType to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setServiceType(context.ContextOuterClass.ServiceTypeEnum value) {
        if (value == null) {
          throw new NullPointerException();
famelis's avatar
famelis committed
        
        serviceType_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * <code>.context.ServiceTypeEnum service_type = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearServiceType() {
        
        serviceType_ = 0;
        onChanged();
        return this;
famelis's avatar
famelis committed
      private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_ =
        java.util.Collections.emptyList();
famelis's avatar
famelis committed
      private void ensureServiceEndpointIdsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(serviceEndpointIds_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> serviceEndpointIdsBuilder_;
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() {
        if (serviceEndpointIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(serviceEndpointIds_);
famelis's avatar
famelis committed
          return serviceEndpointIdsBuilder_.getMessageList();
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public int getServiceEndpointIdsCount() {
        if (serviceEndpointIdsBuilder_ == null) {
          return serviceEndpointIds_.size();
famelis's avatar
famelis committed
          return serviceEndpointIdsBuilder_.getCount();
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) {
        if (serviceEndpointIdsBuilder_ == null) {
          return serviceEndpointIds_.get(index);
famelis's avatar
famelis committed
          return serviceEndpointIdsBuilder_.getMessage(index);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public Builder setServiceEndpointIds(
          int index, context.ContextOuterClass.EndPointId value) {
famelis's avatar
famelis committed
        if (serviceEndpointIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureServiceEndpointIdsIsMutable();
          serviceEndpointIds_.set(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.setMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public Builder setServiceEndpointIds(
          int index, context.ContextOuterClass.EndPointId.Builder builderForValue) {
famelis's avatar
famelis committed
        if (serviceEndpointIdsBuilder_ == null) {
          ensureServiceEndpointIdsIsMutable();
          serviceEndpointIds_.set(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.setMessage(index, builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public Builder addServiceEndpointIds(context.ContextOuterClass.EndPointId value) {
        if (serviceEndpointIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureServiceEndpointIdsIsMutable();
          serviceEndpointIds_.add(value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.addMessage(value);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public Builder addServiceEndpointIds(
          int index, context.ContextOuterClass.EndPointId value) {
famelis's avatar
famelis committed
        if (serviceEndpointIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureServiceEndpointIdsIsMutable();
          serviceEndpointIds_.add(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.addMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public Builder addServiceEndpointIds(
          context.ContextOuterClass.EndPointId.Builder builderForValue) {
famelis's avatar
famelis committed
        if (serviceEndpointIdsBuilder_ == null) {
          ensureServiceEndpointIdsIsMutable();
          serviceEndpointIds_.add(builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.addMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public Builder addServiceEndpointIds(
          int index, context.ContextOuterClass.EndPointId.Builder builderForValue) {
famelis's avatar
famelis committed
        if (serviceEndpointIdsBuilder_ == null) {
          ensureServiceEndpointIdsIsMutable();
          serviceEndpointIds_.add(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.addMessage(index, builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public Builder addAllServiceEndpointIds(
          java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) {
famelis's avatar
famelis committed
        if (serviceEndpointIdsBuilder_ == null) {
          ensureServiceEndpointIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
famelis's avatar
famelis committed
              values, serviceEndpointIds_);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.addAllMessages(values);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public Builder clearServiceEndpointIds() {
        if (serviceEndpointIdsBuilder_ == null) {
          serviceEndpointIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.clear();
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public Builder removeServiceEndpointIds(int index) {
        if (serviceEndpointIdsBuilder_ == null) {
          ensureServiceEndpointIdsIsMutable();
          serviceEndpointIds_.remove(index);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceEndpointIdsBuilder_.remove(index);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.EndPointId.Builder getServiceEndpointIdsBuilder(
          int index) {
famelis's avatar
famelis committed
        return getServiceEndpointIdsFieldBuilder().getBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder(
          int index) {
        if (serviceEndpointIdsBuilder_ == null) {
          return serviceEndpointIds_.get(index);  } else {
          return serviceEndpointIdsBuilder_.getMessageOrBuilder(index);
        }
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> 
           getServiceEndpointIdsOrBuilderList() {
        if (serviceEndpointIdsBuilder_ != null) {
          return serviceEndpointIdsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(serviceEndpointIds_);
        }
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
       */
      public context.ContextOuterClass.EndPointId.Builder addServiceEndpointIdsBuilder() {
        return getServiceEndpointIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.EndPointId.getDefaultInstance());
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
       */
      public context.ContextOuterClass.EndPointId.Builder addServiceEndpointIdsBuilder(
          int index) {
        return getServiceEndpointIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.EndPointId.getDefaultInstance());
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code>
       */
      public java.util.List<context.ContextOuterClass.EndPointId.Builder> 
           getServiceEndpointIdsBuilderList() {
        return getServiceEndpointIdsFieldBuilder().getBuilderList();
famelis's avatar
famelis committed
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> 
          getServiceEndpointIdsFieldBuilder() {
        if (serviceEndpointIdsBuilder_ == null) {
          serviceEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>(
                  serviceEndpointIds_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          serviceEndpointIds_ = null;
        }
        return serviceEndpointIdsBuilder_;
famelis's avatar
famelis committed
      private java.util.List<context.ContextOuterClass.Constraint> serviceConstraints_ =
        java.util.Collections.emptyList();
      private void ensureServiceConstraintsIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          serviceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(serviceConstraints_);
          bitField0_ |= 0x00000002;
         }
famelis's avatar
famelis committed
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> serviceConstraintsBuilder_;
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public java.util.List<context.ContextOuterClass.Constraint> getServiceConstraintsList() {
        if (serviceConstraintsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(serviceConstraints_);
        } else {
          return serviceConstraintsBuilder_.getMessageList();
        }
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public int getServiceConstraintsCount() {
        if (serviceConstraintsBuilder_ == null) {
          return serviceConstraints_.size();
        } else {
          return serviceConstraintsBuilder_.getCount();
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public context.ContextOuterClass.Constraint getServiceConstraints(int index) {
        if (serviceConstraintsBuilder_ == null) {
          return serviceConstraints_.get(index);
famelis's avatar
famelis committed
          return serviceConstraintsBuilder_.getMessage(index);
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public Builder setServiceConstraints(
          int index, context.ContextOuterClass.Constraint value) {
        if (serviceConstraintsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureServiceConstraintsIsMutable();
          serviceConstraints_.set(index, value);
          onChanged();
        } else {
          serviceConstraintsBuilder_.setMessage(index, value);
        }
        return this;
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public Builder setServiceConstraints(
          int index, context.ContextOuterClass.Constraint.Builder builderForValue) {
        if (serviceConstraintsBuilder_ == null) {
          ensureServiceConstraintsIsMutable();
          serviceConstraints_.set(index, builderForValue.build());
          onChanged();
        } else {
          serviceConstraintsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public Builder addServiceConstraints(context.ContextOuterClass.Constraint value) {
        if (serviceConstraintsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureServiceConstraintsIsMutable();
          serviceConstraints_.add(value);
          onChanged();
        } else {
          serviceConstraintsBuilder_.addMessage(value);
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public Builder addServiceConstraints(
          int index, context.ContextOuterClass.Constraint value) {
        if (serviceConstraintsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
famelis's avatar
famelis committed
          ensureServiceConstraintsIsMutable();
          serviceConstraints_.add(index, value);
          onChanged();
famelis's avatar
famelis committed
          serviceConstraintsBuilder_.addMessage(index, value);
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public Builder addServiceConstraints(
          context.ContextOuterClass.Constraint.Builder builderForValue) {
        if (serviceConstraintsBuilder_ == null) {
          ensureServiceConstraintsIsMutable();
          serviceConstraints_.add(builderForValue.build());
          onChanged();
        } else {
          serviceConstraintsBuilder_.addMessage(builderForValue.build());
        }
        return this;
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public Builder addServiceConstraints(
          int index, context.ContextOuterClass.Constraint.Builder builderForValue) {
        if (serviceConstraintsBuilder_ == null) {
          ensureServiceConstraintsIsMutable();
          serviceConstraints_.add(index, builderForValue.build());
          onChanged();
        } else {
          serviceConstraintsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public Builder addAllServiceConstraints(
          java.lang.Iterable<? extends context.ContextOuterClass.Constraint> values) {
        if (serviceConstraintsBuilder_ == null) {
          ensureServiceConstraintsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, serviceConstraints_);
          onChanged();
        } else {
          serviceConstraintsBuilder_.addAllMessages(values);
        }
        return this;
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public Builder clearServiceConstraints() {
        if (serviceConstraintsBuilder_ == null) {
          serviceConstraints_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          serviceConstraintsBuilder_.clear();
        }
        return this;
      }
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public Builder removeServiceConstraints(int index) {
        if (serviceConstraintsBuilder_ == null) {
          ensureServiceConstraintsIsMutable();
          serviceConstraints_.remove(index);
          onChanged();
        } else {
          serviceConstraintsBuilder_.remove(index);
        }
        return this;
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public context.ContextOuterClass.Constraint.Builder getServiceConstraintsBuilder(
          int index) {
        return getServiceConstraintsFieldBuilder().getBuilder(index);
famelis's avatar
famelis committed
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder(
          int index) {
        if (serviceConstraintsBuilder_ == null) {
          return serviceConstraints_.get(index);  } else {
          return serviceConstraintsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> 
           getServiceConstraintsOrBuilderList() {
        if (serviceConstraintsBuilder_ != null) {
          return serviceConstraintsBuilder_.getMessageOrBuilderList();
famelis's avatar
famelis committed
          return java.util.Collections.unmodifiableList(serviceConstraints_);
        }
      }
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public context.ContextOuterClass.Constraint.Builder addServiceConstraintsBuilder() {
        return getServiceConstraintsFieldBuilder().addBuilder(
            context.ContextOuterClass.Constraint.getDefaultInstance());
      }
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public context.ContextOuterClass.Constraint.Builder addServiceConstraintsBuilder(
          int index) {
        return getServiceConstraintsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.Constraint.getDefaultInstance());
      }
      /**
       * <code>repeated .context.Constraint service_constraints = 5;</code>
       */
      public java.util.List<context.ContextOuterClass.Constraint.Builder> 
           getServiceConstraintsBuilderList() {
        return getServiceConstraintsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> 
          getServiceConstraintsFieldBuilder() {
        if (serviceConstraintsBuilder_ == null) {
          serviceConstraintsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder>(
                  serviceConstraints_,
                  ((bitField0_ & 0x00000002) != 0),
                  getParentForChildren(),
                  isClean());
          serviceConstraints_ = null;
famelis's avatar
famelis committed
        return serviceConstraintsBuilder_;
famelis's avatar
famelis committed
      private context.ContextOuterClass.ServiceStatus serviceStatus_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ServiceStatus, context.ContextOuterClass.ServiceStatus.Builder, context.ContextOuterClass.ServiceStatusOrBuilder> serviceStatusBuilder_;
      /**
       * <code>.context.ServiceStatus service_status = 6;</code>
       * @return Whether the serviceStatus field is set.
       */
      public boolean hasServiceStatus() {
        return serviceStatusBuilder_ != null || serviceStatus_ != null;
      }
      /**
       * <code>.context.ServiceStatus service_status = 6;</code>
       * @return The serviceStatus.
       */
      public context.ContextOuterClass.ServiceStatus getServiceStatus() {
        if (serviceStatusBuilder_ == null) {
          return serviceStatus_ == null ? context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_;
famelis's avatar
famelis committed
          return serviceStatusBuilder_.getMessage();
        }
      }
      /**
       * <code>.context.ServiceStatus service_status = 6;</code>
       */
      public Builder setServiceStatus(context.ContextOuterClass.ServiceStatus value) {
        if (serviceStatusBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
famelis's avatar
famelis committed
          serviceStatus_ = value;
          onChanged();
        } else {
          serviceStatusBuilder_.setMessage(value);
famelis's avatar
famelis committed
      /**
       * <code>.context.ServiceStatus service_status = 6;</code>
       */
      public Builder setServiceStatus(
          context.ContextOuterClass.ServiceStatus.Builder builderForValue) {
        if (serviceStatusBuilder_ == null) {
          serviceStatus_ = builderForValue.build();
          onChanged();
        } else {
          serviceStatusBuilder_.setMessage(builderForValue.build());
        }
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
      /**
       * <code>.context.ServiceStatus service_status = 6;</code>
       */
      public Builder mergeServiceStatus(context.ContextOuterClass.ServiceStatus value) {
        if (serviceStatusBuilder_ == null) {
          if (serviceStatus_ != null) {
            serviceStatus_ =
              context.ContextOuterClass.ServiceStatus.newBuilder(serviceStatus_).mergeFrom(value).buildPartial();
          } else {
            serviceStatus_ = value;
famelis's avatar
famelis committed
          onChanged();
        } else {
          serviceStatusBuilder_.mergeFrom(value);
famelis's avatar
famelis committed
      /**
       * <code>.context.ServiceStatus service_status = 6;</code>
       */
      public Builder clearServiceStatus() {
        if (serviceStatusBuilder_ == null) {
          serviceStatus_ = null;
          onChanged();
        } else {
          serviceStatus_ = null;
          serviceStatusBuilder_ = null;
        }
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
       * <code>.context.ServiceStatus service_status = 6;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceStatus.Builder getServiceStatusBuilder() {
        
        onChanged();
        return getServiceStatusFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.ServiceStatus service_status = 6;</code>
       */
      public context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder() {
        if (serviceStatusBuilder_ != null) {
          return serviceStatusBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return serviceStatus_ == null ?
              context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_;
famelis's avatar
famelis committed
       * <code>.context.ServiceStatus service_status = 6;</code>
famelis's avatar
famelis committed
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ServiceStatus, context.ContextOuterClass.ServiceStatus.Builder, context.ContextOuterClass.ServiceStatusOrBuilder> 
          getServiceStatusFieldBuilder() {
        if (serviceStatusBuilder_ == null) {
          serviceStatusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.ServiceStatus, context.ContextOuterClass.ServiceStatus.Builder, context.ContextOuterClass.ServiceStatusOrBuilder>(
                  getServiceStatus(),
                  getParentForChildren(),
                  isClean());
          serviceStatus_ = null;
famelis's avatar
famelis committed
        return serviceStatusBuilder_;
famelis's avatar
famelis committed

      private context.ContextOuterClass.ServiceConfig serviceConfig_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ServiceConfig, context.ContextOuterClass.ServiceConfig.Builder, context.ContextOuterClass.ServiceConfigOrBuilder> serviceConfigBuilder_;
famelis's avatar
famelis committed
       * <code>.context.ServiceConfig service_config = 7;</code>
       * @return Whether the serviceConfig field is set.
famelis's avatar
famelis committed
      public boolean hasServiceConfig() {
        return serviceConfigBuilder_ != null || serviceConfig_ != null;
      }
      /**
       * <code>.context.ServiceConfig service_config = 7;</code>
       * @return The serviceConfig.
       */
      public context.ContextOuterClass.ServiceConfig getServiceConfig() {
        if (serviceConfigBuilder_ == null) {
          return serviceConfig_ == null ? context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_;
famelis's avatar
famelis committed
          return serviceConfigBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.ServiceConfig service_config = 7;</code>
famelis's avatar
famelis committed
      public Builder setServiceConfig(context.ContextOuterClass.ServiceConfig value) {
        if (serviceConfigBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          serviceConfig_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceConfigBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.ServiceConfig service_config = 7;</code>
famelis's avatar
famelis committed
      public Builder setServiceConfig(
          context.ContextOuterClass.ServiceConfig.Builder builderForValue) {
        if (serviceConfigBuilder_ == null) {
          serviceConfig_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceConfigBuilder_.setMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>.context.ServiceConfig service_config = 7;</code>
famelis's avatar
famelis committed
      public Builder mergeServiceConfig(context.ContextOuterClass.ServiceConfig value) {
        if (serviceConfigBuilder_ == null) {
          if (serviceConfig_ != null) {
            serviceConfig_ =
              context.ContextOuterClass.ServiceConfig.newBuilder(serviceConfig_).mergeFrom(value).buildPartial();
          } else {
            serviceConfig_ = value;
          }
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceConfigBuilder_.mergeFrom(value);
famelis's avatar
famelis committed
       * <code>.context.ServiceConfig service_config = 7;</code>
famelis's avatar
famelis committed
      public Builder clearServiceConfig() {
        if (serviceConfigBuilder_ == null) {
          serviceConfig_ = null;
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceConfig_ = null;
          serviceConfigBuilder_ = null;
famelis's avatar
famelis committed
       * <code>.context.ServiceConfig service_config = 7;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceConfig.Builder getServiceConfigBuilder() {
        
        onChanged();
        return getServiceConfigFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.ServiceConfig service_config = 7;</code>
       */
      public context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder() {
        if (serviceConfigBuilder_ != null) {
          return serviceConfigBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return serviceConfig_ == null ?
              context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_;
famelis's avatar
famelis committed
       * <code>.context.ServiceConfig service_config = 7;</code>
famelis's avatar
famelis committed
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ServiceConfig, context.ContextOuterClass.ServiceConfig.Builder, context.ContextOuterClass.ServiceConfigOrBuilder> 
          getServiceConfigFieldBuilder() {
        if (serviceConfigBuilder_ == null) {
          serviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.ServiceConfig, context.ContextOuterClass.ServiceConfig.Builder, context.ContextOuterClass.ServiceConfigOrBuilder>(
                  getServiceConfig(),
                  getParentForChildren(),
                  isClean());
          serviceConfig_ = null;
famelis's avatar
famelis committed
        return serviceConfigBuilder_;
      }

      private context.ContextOuterClass.Timestamp timestamp_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> timestampBuilder_;
      /**
       * <code>.context.Timestamp timestamp = 8;</code>
       * @return Whether the timestamp field is set.
       */
      public boolean hasTimestamp() {
        return timestampBuilder_ != null || timestamp_ != null;
famelis's avatar
famelis committed
       * <code>.context.Timestamp timestamp = 8;</code>
       * @return The timestamp.
famelis's avatar
famelis committed
      public context.ContextOuterClass.Timestamp getTimestamp() {
        if (timestampBuilder_ == null) {
          return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_;
famelis's avatar
famelis committed
          return timestampBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.Timestamp timestamp = 8;</code>
famelis's avatar
famelis committed
      public Builder setTimestamp(context.ContextOuterClass.Timestamp value) {
        if (timestampBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          timestamp_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          timestampBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.Timestamp timestamp = 8;</code>
famelis's avatar
famelis committed
      public Builder setTimestamp(
          context.ContextOuterClass.Timestamp.Builder builderForValue) {
        if (timestampBuilder_ == null) {
          timestamp_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          timestampBuilder_.setMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>.context.Timestamp timestamp = 8;</code>
famelis's avatar
famelis committed
      public Builder mergeTimestamp(context.ContextOuterClass.Timestamp value) {
        if (timestampBuilder_ == null) {
          if (timestamp_ != null) {
            timestamp_ =
              context.ContextOuterClass.Timestamp.newBuilder(timestamp_).mergeFrom(value).buildPartial();
          } else {
            timestamp_ = value;
          }
          onChanged();
        } else {
          timestampBuilder_.mergeFrom(value);
famelis's avatar
famelis committed

        return this;
famelis's avatar
famelis committed
       * <code>.context.Timestamp timestamp = 8;</code>
famelis's avatar
famelis committed
      public Builder clearTimestamp() {
        if (timestampBuilder_ == null) {
          timestamp_ = null;
          onChanged();
famelis's avatar
famelis committed
          timestamp_ = null;
          timestampBuilder_ = null;
famelis's avatar
famelis committed

        return this;
famelis's avatar
famelis committed
       * <code>.context.Timestamp timestamp = 8;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() {
        
        onChanged();
        return getTimestampFieldBuilder().getBuilder();
famelis's avatar
famelis committed
       * <code>.context.Timestamp timestamp = 8;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() {
        if (timestampBuilder_ != null) {
          return timestampBuilder_.getMessageOrBuilder();
        } else {
          return timestamp_ == null ?
              context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_;
        }
famelis's avatar
famelis committed
       * <code>.context.Timestamp timestamp = 8;</code>
famelis's avatar
famelis committed
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> 
          getTimestampFieldBuilder() {
        if (timestampBuilder_ == null) {
          timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>(
                  getTimestamp(),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          timestamp_ = null;
famelis's avatar
famelis committed
        return timestampBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.Service)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.Service)
    private static final context.ContextOuterClass.Service DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.Service();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.Service getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<Service>
        PARSER = new com.google.protobuf.AbstractParser<Service>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public Service parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new Service(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<Service> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<Service> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.Service getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface ServiceStatusOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ServiceStatus)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>.context.ServiceStatusEnum service_status = 1;</code>
     * @return The enum numeric value on the wire for serviceStatus.
famelis's avatar
famelis committed
    int getServiceStatusValue();
famelis's avatar
famelis committed
     * <code>.context.ServiceStatusEnum service_status = 1;</code>
     * @return The serviceStatus.
famelis's avatar
famelis committed
    context.ContextOuterClass.ServiceStatusEnum getServiceStatus();
famelis's avatar
famelis committed
   * Protobuf type {@code context.ServiceStatus}
famelis's avatar
famelis committed
  public static final class ServiceStatus extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.ServiceStatus)
      ServiceStatusOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use ServiceStatus.newBuilder() to construct.
    private ServiceStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private ServiceStatus() {
      serviceStatus_ = 0;
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new ServiceStatus();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private ServiceStatus(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
famelis's avatar
famelis committed
            case 8: {
              int rawValue = input.readEnum();

              serviceStatus_ = rawValue;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class);
famelis's avatar
famelis committed
    public static final int SERVICE_STATUS_FIELD_NUMBER = 1;
    private int serviceStatus_;
famelis's avatar
famelis committed
     * <code>.context.ServiceStatusEnum service_status = 1;</code>
     * @return The enum numeric value on the wire for serviceStatus.
famelis's avatar
famelis committed
    @java.lang.Override public int getServiceStatusValue() {
      return serviceStatus_;
famelis's avatar
famelis committed
     * <code>.context.ServiceStatusEnum service_status = 1;</code>
     * @return The serviceStatus.
famelis's avatar
famelis committed
    @java.lang.Override public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() {
      @SuppressWarnings("deprecation")
      context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_);
      return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      if (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) {
        output.writeEnum(1, serviceStatus_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      if (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeEnumSize(1, serviceStatus_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.ServiceStatus)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.ServiceStatus other = (context.ContextOuterClass.ServiceStatus) obj;

      if (serviceStatus_ != other.serviceStatus_) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER;
      hash = (53 * hash) + serviceStatus_;
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.ServiceStatus prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.ServiceStatus}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.ServiceStatus)
        context.ContextOuterClass.ServiceStatusOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.ServiceStatus.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        serviceStatus_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor;

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() {
        return context.ContextOuterClass.ServiceStatus.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceStatus build() {
        context.ContextOuterClass.ServiceStatus result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        return result;

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceStatus buildPartial() {
        context.ContextOuterClass.ServiceStatus result = new context.ContextOuterClass.ServiceStatus(this);
        result.serviceStatus_ = serviceStatus_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.ServiceStatus) {
          return mergeFrom((context.ContextOuterClass.ServiceStatus)other);
          super.mergeFrom(other);
          return this;
famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.ServiceStatus other) {
        if (other == context.ContextOuterClass.ServiceStatus.getDefaultInstance()) return this;
        if (other.serviceStatus_ != 0) {
          setServiceStatusValue(other.getServiceStatusValue());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;

      @java.lang.Override
      public final boolean isInitialized() {
        return true;

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.ServiceStatus parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.ServiceStatus) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
famelis's avatar
famelis committed
      private int serviceStatus_ = 0;
famelis's avatar
famelis committed
       * <code>.context.ServiceStatusEnum service_status = 1;</code>
       * @return The enum numeric value on the wire for serviceStatus.
famelis's avatar
famelis committed
      @java.lang.Override public int getServiceStatusValue() {
        return serviceStatus_;
famelis's avatar
famelis committed
       * <code>.context.ServiceStatusEnum service_status = 1;</code>
       * @param value The enum numeric value on the wire for serviceStatus to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setServiceStatusValue(int value) {
famelis's avatar
famelis committed
        serviceStatus_ = value;
        onChanged();
        return this;
      }
      /**
famelis's avatar
famelis committed
       * <code>.context.ServiceStatusEnum service_status = 1;</code>
       * @return The serviceStatus.
famelis's avatar
famelis committed
      @java.lang.Override
      public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() {
        @SuppressWarnings("deprecation")
        context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_);
        return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result;
famelis's avatar
famelis committed
       * <code>.context.ServiceStatusEnum service_status = 1;</code>
       * @param value The serviceStatus to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setServiceStatus(context.ContextOuterClass.ServiceStatusEnum value) {
        if (value == null) {
          throw new NullPointerException();
famelis's avatar
famelis committed
        
        serviceStatus_ = value.getNumber();
        onChanged();
famelis's avatar
famelis committed
       * <code>.context.ServiceStatusEnum service_status = 1;</code>
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder clearServiceStatus() {
        
        serviceStatus_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.ServiceStatus)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.ServiceStatus)
    private static final context.ContextOuterClass.ServiceStatus DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceStatus();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceStatus getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<ServiceStatus>
        PARSER = new com.google.protobuf.AbstractParser<ServiceStatus>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public ServiceStatus parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new ServiceStatus(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<ServiceStatus> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<ServiceStatus> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface ServiceConfigOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ServiceConfig)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
    java.util.List<context.ContextOuterClass.ConfigRule> 
        getConfigRulesList();
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.ConfigRule getConfigRules(int index);
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
    int getConfigRulesCount();
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
    java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> 
        getConfigRulesOrBuilderList();
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder(
        int index);
famelis's avatar
famelis committed
   * Protobuf type {@code context.ServiceConfig}
famelis's avatar
famelis committed
  public static final class ServiceConfig extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.ServiceConfig)
      ServiceConfigOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use ServiceConfig.newBuilder() to construct.
    private ServiceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private ServiceConfig() {
      configRules_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new ServiceConfig();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private ServiceConfig(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
famelis's avatar
famelis committed
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
famelis's avatar
famelis committed
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>();
                mutable_bitField0_ |= 0x00000001;
famelis's avatar
famelis committed
              configRules_.add(
                  input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
famelis's avatar
famelis committed
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          configRules_ = java.util.Collections.unmodifiableList(configRules_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class);
famelis's avatar
famelis committed
    public static final int CONFIG_RULES_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.ConfigRule> configRules_;
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() {
      return configRules_;
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> 
        getConfigRulesOrBuilderList() {
      return configRules_;
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public int getConfigRulesCount() {
      return configRules_.size();
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ConfigRule getConfigRules(int index) {
      return configRules_.get(index);
famelis's avatar
famelis committed
     * <code>repeated .context.ConfigRule config_rules = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder(
        int index) {
      return configRules_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      for (int i = 0; i < configRules_.size(); i++) {
        output.writeMessage(1, configRules_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      for (int i = 0; i < configRules_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, configRules_.get(i));
famelis's avatar
famelis committed
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.ServiceConfig)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.ServiceConfig other = (context.ContextOuterClass.ServiceConfig) obj;
famelis's avatar
famelis committed
      if (!getConfigRulesList()
          .equals(other.getConfigRulesList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (getConfigRulesCount() > 0) {
        hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER;
        hash = (53 * hash) + getConfigRulesList().hashCode();
famelis's avatar
famelis committed
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.ServiceConfig prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.ServiceConfig}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.ServiceConfig)
        context.ContextOuterClass.ServiceConfigOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.ServiceConfig.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
famelis's avatar
famelis committed

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
famelis's avatar
famelis committed
          getConfigRulesFieldBuilder();
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (configRulesBuilder_ == null) {
          configRules_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
          configRulesBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() {
        return context.ContextOuterClass.ServiceConfig.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceConfig build() {
        context.ContextOuterClass.ServiceConfig result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
famelis's avatar
famelis committed
        return result;
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceConfig buildPartial() {
        context.ContextOuterClass.ServiceConfig result = new context.ContextOuterClass.ServiceConfig(this);
        int from_bitField0_ = bitField0_;
        if (configRulesBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            configRules_ = java.util.Collections.unmodifiableList(configRules_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.configRules_ = configRules_;
famelis's avatar
famelis committed
          result.configRules_ = configRulesBuilder_.build();
famelis's avatar
famelis committed
        onBuilt();
        return result;
      }
famelis's avatar
famelis committed
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.ServiceConfig) {
          return mergeFrom((context.ContextOuterClass.ServiceConfig)other);
famelis's avatar
famelis committed
          super.mergeFrom(other);
          return this;
famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.ServiceConfig other) {
        if (other == context.ContextOuterClass.ServiceConfig.getDefaultInstance()) return this;
        if (configRulesBuilder_ == null) {
          if (!other.configRules_.isEmpty()) {
            if (configRules_.isEmpty()) {
              configRules_ = other.configRules_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureConfigRulesIsMutable();
              configRules_.addAll(other.configRules_);
            }
            onChanged();
          }
        } else {
          if (!other.configRules_.isEmpty()) {
            if (configRulesBuilder_.isEmpty()) {
              configRulesBuilder_.dispose();
              configRulesBuilder_ = null;
              configRules_ = other.configRules_;
              bitField0_ = (bitField0_ & ~0x00000001);
              configRulesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getConfigRulesFieldBuilder() : null;
            } else {
              configRulesBuilder_.addAllMessages(other.configRules_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

famelis's avatar
famelis committed
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.ServiceConfig parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.ServiceConfig) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
      private int bitField0_;

      private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ =
        java.util.Collections.emptyList();
      private void ensureConfigRulesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_);
          bitField0_ |= 0x00000001;
         }
famelis's avatar
famelis committed
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_;
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() {
        if (configRulesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(configRules_);
        } else {
          return configRulesBuilder_.getMessageList();
        }
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public int getConfigRulesCount() {
        if (configRulesBuilder_ == null) {
          return configRules_.size();
famelis's avatar
famelis committed
          return configRulesBuilder_.getCount();
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ConfigRule getConfigRules(int index) {
        if (configRulesBuilder_ == null) {
          return configRules_.get(index);
        } else {
          return configRulesBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public Builder setConfigRules(
          int index, context.ContextOuterClass.ConfigRule value) {
        if (configRulesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureConfigRulesIsMutable();
          configRules_.set(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          configRulesBuilder_.setMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public Builder setConfigRules(
          int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          configRules_.set(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          configRulesBuilder_.setMessage(index, builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) {
        if (configRulesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
famelis's avatar
famelis committed
          ensureConfigRulesIsMutable();
          configRules_.add(value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          configRulesBuilder_.addMessage(value);
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public Builder addConfigRules(
          int index, context.ContextOuterClass.ConfigRule value) {
        if (configRulesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigRulesIsMutable();
          configRules_.add(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          configRulesBuilder_.addMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public Builder addConfigRules(
          context.ContextOuterClass.ConfigRule.Builder builderForValue) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          configRules_.add(builderForValue.build());
          onChanged();
famelis's avatar
famelis committed
          configRulesBuilder_.addMessage(builderForValue.build());
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public Builder addConfigRules(
          int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          configRules_.add(index, builderForValue.build());
          onChanged();
        } else {
          configRulesBuilder_.addMessage(index, builderForValue.build());
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public Builder addAllConfigRules(
          java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, configRules_);
          onChanged();
famelis's avatar
famelis committed
          configRulesBuilder_.addAllMessages(values);
famelis's avatar
famelis committed
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public Builder clearConfigRules() {
        if (configRulesBuilder_ == null) {
          configRules_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
famelis's avatar
famelis committed
          configRulesBuilder_.clear();
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public Builder removeConfigRules(int index) {
        if (configRulesBuilder_ == null) {
          ensureConfigRulesIsMutable();
          configRules_.remove(index);
          onChanged();
        } else {
famelis's avatar
famelis committed
          configRulesBuilder_.remove(index);
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder(
          int index) {
        return getConfigRulesFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
       */
      public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder(
          int index) {
        if (configRulesBuilder_ == null) {
          return configRules_.get(index);  } else {
          return configRulesBuilder_.getMessageOrBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> 
           getConfigRulesOrBuilderList() {
        if (configRulesBuilder_ != null) {
          return configRulesBuilder_.getMessageOrBuilderList();
famelis's avatar
famelis committed
          return java.util.Collections.unmodifiableList(configRules_);
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() {
        return getConfigRulesFieldBuilder().addBuilder(
            context.ContextOuterClass.ConfigRule.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder(
          int index) {
        return getConfigRulesFieldBuilder().addBuilder(
            index, context.ContextOuterClass.ConfigRule.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.ConfigRule config_rules = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.ConfigRule.Builder> 
           getConfigRulesBuilderList() {
        return getConfigRulesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> 
          getConfigRulesFieldBuilder() {
        if (configRulesBuilder_ == null) {
          configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>(
                  configRules_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          configRules_ = null;
famelis's avatar
famelis committed
        return configRulesBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.ServiceConfig)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.ServiceConfig)
    private static final context.ContextOuterClass.ServiceConfig DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceConfig();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceConfig getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<ServiceConfig>
        PARSER = new com.google.protobuf.AbstractParser<ServiceConfig>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public ServiceConfig parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new ServiceConfig(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<ServiceConfig> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<ServiceConfig> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface ServiceIdListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ServiceIdList)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
    java.util.List<context.ContextOuterClass.ServiceId> 
        getServiceIdsList();
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.ServiceId getServiceIds(int index);
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
    int getServiceIdsCount();
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
    java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> 
        getServiceIdsOrBuilderList();
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder(
        int index);
famelis's avatar
famelis committed
   * Protobuf type {@code context.ServiceIdList}
famelis's avatar
famelis committed
  public static final class ServiceIdList extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.ServiceIdList)
      ServiceIdListOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use ServiceIdList.newBuilder() to construct.
    private ServiceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private ServiceIdList() {
      serviceIds_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new ServiceIdList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
famelis's avatar
famelis committed
    private ServiceIdList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
                serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>();
                mutable_bitField0_ |= 0x00000001;
              }
famelis's avatar
famelis committed
              serviceIds_.add(
                  input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class);
famelis's avatar
famelis committed
    public static final int SERVICE_IDS_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_;
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() {
      return serviceIds_;
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> 
        getServiceIdsOrBuilderList() {
      return serviceIds_;
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public int getServiceIdsCount() {
      return serviceIds_.size();
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceId getServiceIds(int index) {
      return serviceIds_.get(index);
famelis's avatar
famelis committed
     * <code>repeated .context.ServiceId service_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder(
        int index) {
famelis's avatar
famelis committed
      return serviceIds_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      for (int i = 0; i < serviceIds_.size(); i++) {
        output.writeMessage(1, serviceIds_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      for (int i = 0; i < serviceIds_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, serviceIds_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.ServiceIdList)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.ServiceIdList other = (context.ContextOuterClass.ServiceIdList) obj;
famelis's avatar
famelis committed
      if (!getServiceIdsList()
          .equals(other.getServiceIdsList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (getServiceIdsCount() > 0) {
        hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getServiceIdsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.ServiceIdList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.ServiceIdList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.ServiceIdList)
        context.ContextOuterClass.ServiceIdListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.ServiceIdList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
famelis's avatar
famelis committed
          getServiceIdsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (serviceIdsBuilder_ == null) {
          serviceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() {
        return context.ContextOuterClass.ServiceIdList.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceIdList build() {
        context.ContextOuterClass.ServiceIdList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceIdList buildPartial() {
        context.ContextOuterClass.ServiceIdList result = new context.ContextOuterClass.ServiceIdList(this);
        int from_bitField0_ = bitField0_;
famelis's avatar
famelis committed
        if (serviceIdsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
            serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
famelis's avatar
famelis committed
          result.serviceIds_ = serviceIds_;
famelis's avatar
famelis committed
          result.serviceIds_ = serviceIdsBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.ServiceIdList) {
          return mergeFrom((context.ContextOuterClass.ServiceIdList)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.ServiceIdList other) {
        if (other == context.ContextOuterClass.ServiceIdList.getDefaultInstance()) return this;
        if (serviceIdsBuilder_ == null) {
          if (!other.serviceIds_.isEmpty()) {
            if (serviceIds_.isEmpty()) {
              serviceIds_ = other.serviceIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
famelis's avatar
famelis committed
              ensureServiceIdsIsMutable();
              serviceIds_.addAll(other.serviceIds_);
famelis's avatar
famelis committed
          if (!other.serviceIds_.isEmpty()) {
            if (serviceIdsBuilder_.isEmpty()) {
              serviceIdsBuilder_.dispose();
              serviceIdsBuilder_ = null;
              serviceIds_ = other.serviceIds_;
              bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
              serviceIdsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
famelis's avatar
famelis committed
                   getServiceIdsFieldBuilder() : null;
famelis's avatar
famelis committed
              serviceIdsBuilder_.addAllMessages(other.serviceIds_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.ServiceIdList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.ServiceIdList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

famelis's avatar
famelis committed
      private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_ =
        java.util.Collections.emptyList();
famelis's avatar
famelis committed
      private void ensureServiceIdsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(serviceIds_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdsBuilder_;
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() {
        if (serviceIdsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(serviceIds_);
famelis's avatar
famelis committed
          return serviceIdsBuilder_.getMessageList();
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public int getServiceIdsCount() {
        if (serviceIdsBuilder_ == null) {
          return serviceIds_.size();
famelis's avatar
famelis committed
          return serviceIdsBuilder_.getCount();
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceId getServiceIds(int index) {
        if (serviceIdsBuilder_ == null) {
          return serviceIds_.get(index);
famelis's avatar
famelis committed
          return serviceIdsBuilder_.getMessage(index);
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder setServiceIds(
          int index, context.ContextOuterClass.ServiceId value) {
        if (serviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureServiceIdsIsMutable();
          serviceIds_.set(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.setMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder setServiceIds(
          int index, context.ContextOuterClass.ServiceId.Builder builderForValue) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          serviceIds_.set(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.setMessage(index, builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addServiceIds(context.ContextOuterClass.ServiceId value) {
        if (serviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureServiceIdsIsMutable();
          serviceIds_.add(value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.addMessage(value);
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addServiceIds(
          int index, context.ContextOuterClass.ServiceId value) {
        if (serviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureServiceIdsIsMutable();
          serviceIds_.add(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.addMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addServiceIds(
          context.ContextOuterClass.ServiceId.Builder builderForValue) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          serviceIds_.add(builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.addMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addServiceIds(
          int index, context.ContextOuterClass.ServiceId.Builder builderForValue) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          serviceIds_.add(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.addMessage(index, builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder addAllServiceIds(
          java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
famelis's avatar
famelis committed
              values, serviceIds_);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.addAllMessages(values);
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder clearServiceIds() {
        if (serviceIdsBuilder_ == null) {
          serviceIds_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.clear();
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder removeServiceIds(int index) {
        if (serviceIdsBuilder_ == null) {
          ensureServiceIdsIsMutable();
          serviceIds_.remove(index);
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.remove(index);
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceId.Builder getServiceIdsBuilder(
          int index) {
famelis's avatar
famelis committed
        return getServiceIdsFieldBuilder().getBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder(
          int index) {
famelis's avatar
famelis committed
        if (serviceIdsBuilder_ == null) {
          return serviceIds_.get(index);  } else {
          return serviceIdsBuilder_.getMessageOrBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> 
           getServiceIdsOrBuilderList() {
        if (serviceIdsBuilder_ != null) {
          return serviceIdsBuilder_.getMessageOrBuilderList();
famelis's avatar
famelis committed
          return java.util.Collections.unmodifiableList(serviceIds_);
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder() {
        return getServiceIdsFieldBuilder().addBuilder(
            context.ContextOuterClass.ServiceId.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder(
          int index) {
famelis's avatar
famelis committed
        return getServiceIdsFieldBuilder().addBuilder(
            index, context.ContextOuterClass.ServiceId.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.ServiceId service_ids = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.ServiceId.Builder> 
           getServiceIdsBuilderList() {
        return getServiceIdsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> 
          getServiceIdsFieldBuilder() {
        if (serviceIdsBuilder_ == null) {
          serviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>(
                  serviceIds_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          serviceIds_ = null;
famelis's avatar
famelis committed
        return serviceIdsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.ServiceIdList)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.ServiceIdList)
    private static final context.ContextOuterClass.ServiceIdList DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceIdList();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceIdList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<ServiceIdList>
        PARSER = new com.google.protobuf.AbstractParser<ServiceIdList>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public ServiceIdList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new ServiceIdList(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<ServiceIdList> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<ServiceIdList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface ServiceListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ServiceList)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
    java.util.List<context.ContextOuterClass.Service> 
        getServicesList();
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.Service getServices(int index);
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
    int getServicesCount();
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
    java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> 
        getServicesOrBuilderList();
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder(
famelis's avatar
famelis committed
   * Protobuf type {@code context.ServiceList}
famelis's avatar
famelis committed
  public static final class ServiceList extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.ServiceList)
      ServiceListOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use ServiceList.newBuilder() to construct.
    private ServiceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private ServiceList() {
      services_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new ServiceList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private ServiceList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
                services_ = new java.util.ArrayList<context.ContextOuterClass.Service>();
                mutable_bitField0_ |= 0x00000001;
              }
famelis's avatar
famelis committed
              services_.add(
                  input.readMessage(context.ContextOuterClass.Service.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          services_ = java.util.Collections.unmodifiableList(services_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class);
famelis's avatar
famelis committed
    public static final int SERVICES_FIELD_NUMBER = 1;
    private java.util.List<context.ContextOuterClass.Service> services_;
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<context.ContextOuterClass.Service> getServicesList() {
      return services_;
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> 
        getServicesOrBuilderList() {
      return services_;
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public int getServicesCount() {
      return services_.size();
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.Service getServices(int index) {
      return services_.get(index);
famelis's avatar
famelis committed
     * <code>repeated .context.Service services = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder(
        int index) {
famelis's avatar
famelis committed
      return services_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      for (int i = 0; i < services_.size(); i++) {
        output.writeMessage(1, services_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      for (int i = 0; i < services_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, services_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.ServiceList)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.ServiceList other = (context.ContextOuterClass.ServiceList) obj;
famelis's avatar
famelis committed
      if (!getServicesList()
          .equals(other.getServicesList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (getServicesCount() > 0) {
        hash = (37 * hash) + SERVICES_FIELD_NUMBER;
        hash = (53 * hash) + getServicesList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.ServiceList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.ServiceList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.ServiceList)
        context.ContextOuterClass.ServiceListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.ServiceList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
famelis's avatar
famelis committed
          getServicesFieldBuilder();
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (servicesBuilder_ == null) {
          services_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
          servicesBuilder_.clear();

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceList_descriptor;

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceList getDefaultInstanceForType() {
        return context.ContextOuterClass.ServiceList.getDefaultInstance();
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceList build() {
        context.ContextOuterClass.ServiceList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        return result;

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceList buildPartial() {
        context.ContextOuterClass.ServiceList result = new context.ContextOuterClass.ServiceList(this);
        int from_bitField0_ = bitField0_;
famelis's avatar
famelis committed
        if (servicesBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
            services_ = java.util.Collections.unmodifiableList(services_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
famelis's avatar
famelis committed
          result.services_ = services_;
famelis's avatar
famelis committed
          result.services_ = servicesBuilder_.build();
        onBuilt();
        return result;

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.ServiceList) {
          return mergeFrom((context.ContextOuterClass.ServiceList)other);
          super.mergeFrom(other);
          return this;
famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.ServiceList other) {
        if (other == context.ContextOuterClass.ServiceList.getDefaultInstance()) return this;
        if (servicesBuilder_ == null) {
          if (!other.services_.isEmpty()) {
            if (services_.isEmpty()) {
              services_ = other.services_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
famelis's avatar
famelis committed
              ensureServicesIsMutable();
              services_.addAll(other.services_);
            }
            onChanged();
famelis's avatar
famelis committed
          if (!other.services_.isEmpty()) {
            if (servicesBuilder_.isEmpty()) {
              servicesBuilder_.dispose();
              servicesBuilder_ = null;
              services_ = other.services_;
              bitField0_ = (bitField0_ & ~0x00000001);
famelis's avatar
famelis committed
              servicesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
famelis's avatar
famelis committed
                   getServicesFieldBuilder() : null;
famelis's avatar
famelis committed
              servicesBuilder_.addAllMessages(other.services_);
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
      @java.lang.Override
      public final boolean isInitialized() {
        return true;

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.ServiceList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.ServiceList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
      private int bitField0_;
famelis's avatar
famelis committed
      private java.util.List<context.ContextOuterClass.Service> services_ =
        java.util.Collections.emptyList();
famelis's avatar
famelis committed
      private void ensureServicesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
famelis's avatar
famelis committed
          services_ = new java.util.ArrayList<context.ContextOuterClass.Service>(services_);
          bitField0_ |= 0x00000001;
         }

      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> servicesBuilder_;
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.Service> getServicesList() {
        if (servicesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(services_);
famelis's avatar
famelis committed
          return servicesBuilder_.getMessageList();
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public int getServicesCount() {
        if (servicesBuilder_ == null) {
          return services_.size();
famelis's avatar
famelis committed
          return servicesBuilder_.getCount();
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Service getServices(int index) {
        if (servicesBuilder_ == null) {
          return services_.get(index);
famelis's avatar
famelis committed
          return servicesBuilder_.getMessage(index);
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public Builder setServices(
          int index, context.ContextOuterClass.Service value) {
        if (servicesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureServicesIsMutable();
          services_.set(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          servicesBuilder_.setMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public Builder setServices(
          int index, context.ContextOuterClass.Service.Builder builderForValue) {
        if (servicesBuilder_ == null) {
          ensureServicesIsMutable();
          services_.set(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          servicesBuilder_.setMessage(index, builderForValue.build());
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public Builder addServices(context.ContextOuterClass.Service value) {
        if (servicesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
famelis's avatar
famelis committed
          ensureServicesIsMutable();
          services_.add(value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          servicesBuilder_.addMessage(value);
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public Builder addServices(
          int index, context.ContextOuterClass.Service value) {
        if (servicesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          ensureServicesIsMutable();
          services_.add(index, value);
          onChanged();
        } else {
famelis's avatar
famelis committed
          servicesBuilder_.addMessage(index, value);
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public Builder addServices(
          context.ContextOuterClass.Service.Builder builderForValue) {
        if (servicesBuilder_ == null) {
          ensureServicesIsMutable();
          services_.add(builderForValue.build());
          onChanged();
famelis's avatar
famelis committed
          servicesBuilder_.addMessage(builderForValue.build());
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public Builder addServices(
          int index, context.ContextOuterClass.Service.Builder builderForValue) {
        if (servicesBuilder_ == null) {
          ensureServicesIsMutable();
          services_.add(index, builderForValue.build());
          onChanged();
        } else {
famelis's avatar
famelis committed
          servicesBuilder_.addMessage(index, builderForValue.build());
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public Builder addAllServices(
          java.lang.Iterable<? extends context.ContextOuterClass.Service> values) {
        if (servicesBuilder_ == null) {
          ensureServicesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
famelis's avatar
famelis committed
              values, services_);
          onChanged();
famelis's avatar
famelis committed
          servicesBuilder_.addAllMessages(values);
        return this;
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public Builder clearServices() {
        if (servicesBuilder_ == null) {
          services_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
famelis's avatar
famelis committed
          servicesBuilder_.clear();
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public Builder removeServices(int index) {
        if (servicesBuilder_ == null) {
          ensureServicesIsMutable();
          services_.remove(index);
          onChanged();
        } else {
famelis's avatar
famelis committed
          servicesBuilder_.remove(index);
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Service.Builder getServicesBuilder(
          int index) {
famelis's avatar
famelis committed
        return getServicesFieldBuilder().getBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder(
          int index) {
famelis's avatar
famelis committed
        if (servicesBuilder_ == null) {
          return services_.get(index);  } else {
          return servicesBuilder_.getMessageOrBuilder(index);
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> 
           getServicesOrBuilderList() {
        if (servicesBuilder_ != null) {
          return servicesBuilder_.getMessageOrBuilderList();
famelis's avatar
famelis committed
          return java.util.Collections.unmodifiableList(services_);
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Service.Builder addServicesBuilder() {
        return getServicesFieldBuilder().addBuilder(
            context.ContextOuterClass.Service.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.Service.Builder addServicesBuilder(
          int index) {
famelis's avatar
famelis committed
        return getServicesFieldBuilder().addBuilder(
            index, context.ContextOuterClass.Service.getDefaultInstance());
famelis's avatar
famelis committed
       * <code>repeated .context.Service services = 1;</code>
famelis's avatar
famelis committed
      public java.util.List<context.ContextOuterClass.Service.Builder> 
           getServicesBuilderList() {
        return getServicesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> 
          getServicesFieldBuilder() {
        if (servicesBuilder_ == null) {
          servicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder>(
                  services_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          services_ = null;
famelis's avatar
famelis committed
        return servicesBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.ServiceList)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.ServiceList)
    private static final context.ContextOuterClass.ServiceList DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceList();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<ServiceList>
        PARSER = new com.google.protobuf.AbstractParser<ServiceList>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public ServiceList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new ServiceList(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<ServiceList> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<ServiceList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceList getDefaultInstanceForType() {
famelis's avatar
famelis committed
  public interface ServiceFilterOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ServiceFilter)
      com.google.protobuf.MessageOrBuilder {

    /**
famelis's avatar
famelis committed
     * <code>.context.ServiceIdList service_ids = 1;</code>
     * @return Whether the serviceIds field is set.
famelis's avatar
famelis committed
    boolean hasServiceIds();
famelis's avatar
famelis committed
     * <code>.context.ServiceIdList service_ids = 1;</code>
     * @return The serviceIds.
famelis's avatar
famelis committed
    context.ContextOuterClass.ServiceIdList getServiceIds();
famelis's avatar
famelis committed
     * <code>.context.ServiceIdList service_ids = 1;</code>
famelis's avatar
famelis committed
    context.ContextOuterClass.ServiceIdListOrBuilder getServiceIdsOrBuilder();

famelis's avatar
famelis committed
     * <code>bool include_endpoint_ids = 2;</code>
     * @return The includeEndpointIds.
famelis's avatar
famelis committed
    boolean getIncludeEndpointIds();

famelis's avatar
famelis committed
     * <code>bool include_constraints = 3;</code>
     * @return The includeConstraints.
famelis's avatar
famelis committed
    boolean getIncludeConstraints();

    /**
     * <code>bool include_config_rules = 4;</code>
     * @return The includeConfigRules.
     */
    boolean getIncludeConfigRules();
famelis's avatar
famelis committed
   * Protobuf type {@code context.ServiceFilter}
famelis's avatar
famelis committed
  public static final class ServiceFilter extends
      com.google.protobuf.GeneratedMessageV3 implements
famelis's avatar
famelis committed
      // @@protoc_insertion_point(message_implements:context.ServiceFilter)
      ServiceFilterOrBuilder {
  private static final long serialVersionUID = 0L;
famelis's avatar
famelis committed
    // Use ServiceFilter.newBuilder() to construct.
    private ServiceFilter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
famelis's avatar
famelis committed
    private ServiceFilter() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
famelis's avatar
famelis committed
      return new ServiceFilter();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
famelis's avatar
famelis committed
    private ServiceFilter(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
famelis's avatar
famelis committed
              context.ContextOuterClass.ServiceIdList.Builder subBuilder = null;
              if (serviceIds_ != null) {
                subBuilder = serviceIds_.toBuilder();
famelis's avatar
famelis committed
              serviceIds_ = input.readMessage(context.ContextOuterClass.ServiceIdList.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(serviceIds_);
                serviceIds_ = subBuilder.buildPartial();
              }

              break;
            }
            case 16: {

              includeEndpointIds_ = input.readBool();
              break;
            }
            case 24: {

              includeConstraints_ = input.readBool();
              break;
            }
            case 32: {

              includeConfigRules_ = input.readBool();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceFilter_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
      return context.ContextOuterClass.internal_static_context_ServiceFilter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
              context.ContextOuterClass.ServiceFilter.class, context.ContextOuterClass.ServiceFilter.Builder.class);
famelis's avatar
famelis committed
    public static final int SERVICE_IDS_FIELD_NUMBER = 1;
    private context.ContextOuterClass.ServiceIdList serviceIds_;
famelis's avatar
famelis committed
     * <code>.context.ServiceIdList service_ids = 1;</code>
     * @return Whether the serviceIds field is set.
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean hasServiceIds() {
      return serviceIds_ != null;
famelis's avatar
famelis committed
     * <code>.context.ServiceIdList service_ids = 1;</code>
     * @return The serviceIds.
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceIdList getServiceIds() {
      return serviceIds_ == null ? context.ContextOuterClass.ServiceIdList.getDefaultInstance() : serviceIds_;
famelis's avatar
famelis committed
     * <code>.context.ServiceIdList service_ids = 1;</code>
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceIdListOrBuilder getServiceIdsOrBuilder() {
      return getServiceIds();
famelis's avatar
famelis committed

    public static final int INCLUDE_ENDPOINT_IDS_FIELD_NUMBER = 2;
    private boolean includeEndpointIds_;
famelis's avatar
famelis committed
     * <code>bool include_endpoint_ids = 2;</code>
     * @return The includeEndpointIds.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean getIncludeEndpointIds() {
      return includeEndpointIds_;
famelis's avatar
famelis committed

    public static final int INCLUDE_CONSTRAINTS_FIELD_NUMBER = 3;
    private boolean includeConstraints_;
famelis's avatar
famelis committed
     * <code>bool include_constraints = 3;</code>
     * @return The includeConstraints.
     */
    @java.lang.Override
famelis's avatar
famelis committed
    public boolean getIncludeConstraints() {
      return includeConstraints_;
    }

    public static final int INCLUDE_CONFIG_RULES_FIELD_NUMBER = 4;
    private boolean includeConfigRules_;
    /**
     * <code>bool include_config_rules = 4;</code>
     * @return The includeConfigRules.
     */
    @java.lang.Override
    public boolean getIncludeConfigRules() {
      return includeConfigRules_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
famelis's avatar
famelis committed
      if (serviceIds_ != null) {
        output.writeMessage(1, getServiceIds());
famelis's avatar
famelis committed
      if (includeEndpointIds_ != false) {
        output.writeBool(2, includeEndpointIds_);
famelis's avatar
famelis committed
      if (includeConstraints_ != false) {
        output.writeBool(3, includeConstraints_);
famelis's avatar
famelis committed
      if (includeConfigRules_ != false) {
        output.writeBool(4, includeConfigRules_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
famelis's avatar
famelis committed
      if (serviceIds_ != null) {
        size += com.google.protobuf.CodedOutputStream
famelis's avatar
famelis committed
          .computeMessageSize(1, getServiceIds());
famelis's avatar
famelis committed
      if (includeEndpointIds_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(2, includeEndpointIds_);
famelis's avatar
famelis committed
      if (includeConstraints_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(3, includeConstraints_);
famelis's avatar
famelis committed
      if (includeConfigRules_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(4, includeConfigRules_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
famelis's avatar
famelis committed
      if (!(obj instanceof context.ContextOuterClass.ServiceFilter)) {
        return super.equals(obj);
      }
famelis's avatar
famelis committed
      context.ContextOuterClass.ServiceFilter other = (context.ContextOuterClass.ServiceFilter) obj;
famelis's avatar
famelis committed
      if (hasServiceIds() != other.hasServiceIds()) return false;
      if (hasServiceIds()) {
        if (!getServiceIds()
            .equals(other.getServiceIds())) return false;
famelis's avatar
famelis committed
      if (getIncludeEndpointIds()
          != other.getIncludeEndpointIds()) return false;
      if (getIncludeConstraints()
          != other.getIncludeConstraints()) return false;
      if (getIncludeConfigRules()
          != other.getIncludeConfigRules()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
famelis's avatar
famelis committed
      if (hasServiceIds()) {
        hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER;
        hash = (53 * hash) + getServiceIds().hashCode();
famelis's avatar
famelis committed
      hash = (37 * hash) + INCLUDE_ENDPOINT_IDS_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getIncludeEndpointIds());
      hash = (37 * hash) + INCLUDE_CONSTRAINTS_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getIncludeConstraints());
      hash = (37 * hash) + INCLUDE_CONFIG_RULES_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getIncludeConfigRules());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
famelis's avatar
famelis committed
    public static Builder newBuilder(context.ContextOuterClass.ServiceFilter prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
famelis's avatar
famelis committed
     * Protobuf type {@code context.ServiceFilter}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
famelis's avatar
famelis committed
        // @@protoc_insertion_point(builder_implements:context.ServiceFilter)
        context.ContextOuterClass.ServiceFilterOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceFilter_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceFilter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
famelis's avatar
famelis committed
                context.ContextOuterClass.ServiceFilter.class, context.ContextOuterClass.ServiceFilter.Builder.class);
famelis's avatar
famelis committed
      // Construct using context.ContextOuterClass.ServiceFilter.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
famelis's avatar
famelis committed
        if (serviceIdsBuilder_ == null) {
          serviceIds_ = null;
famelis's avatar
famelis committed
          serviceIds_ = null;
          serviceIdsBuilder_ = null;
famelis's avatar
famelis committed
        includeEndpointIds_ = false;

        includeConstraints_ = false;

        includeConfigRules_ = false;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
famelis's avatar
famelis committed
        return context.ContextOuterClass.internal_static_context_ServiceFilter_descriptor;
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceFilter getDefaultInstanceForType() {
        return context.ContextOuterClass.ServiceFilter.getDefaultInstance();
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceFilter build() {
        context.ContextOuterClass.ServiceFilter result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceFilter buildPartial() {
        context.ContextOuterClass.ServiceFilter result = new context.ContextOuterClass.ServiceFilter(this);
        if (serviceIdsBuilder_ == null) {
          result.serviceIds_ = serviceIds_;
famelis's avatar
famelis committed
          result.serviceIds_ = serviceIdsBuilder_.build();
famelis's avatar
famelis committed
        result.includeEndpointIds_ = includeEndpointIds_;
        result.includeConstraints_ = includeConstraints_;
        result.includeConfigRules_ = includeConfigRules_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
famelis's avatar
famelis committed
        if (other instanceof context.ContextOuterClass.ServiceFilter) {
          return mergeFrom((context.ContextOuterClass.ServiceFilter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

famelis's avatar
famelis committed
      public Builder mergeFrom(context.ContextOuterClass.ServiceFilter other) {
        if (other == context.ContextOuterClass.ServiceFilter.getDefaultInstance()) return this;
        if (other.hasServiceIds()) {
          mergeServiceIds(other.getServiceIds());
famelis's avatar
famelis committed
        if (other.getIncludeEndpointIds() != false) {
          setIncludeEndpointIds(other.getIncludeEndpointIds());
        }
        if (other.getIncludeConstraints() != false) {
          setIncludeConstraints(other.getIncludeConstraints());
        }
        if (other.getIncludeConfigRules() != false) {
          setIncludeConfigRules(other.getIncludeConfigRules());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
famelis's avatar
famelis committed
        context.ContextOuterClass.ServiceFilter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
famelis's avatar
famelis committed
          parsedMessage = (context.ContextOuterClass.ServiceFilter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
famelis's avatar
famelis committed
      private context.ContextOuterClass.ServiceIdList serviceIds_;
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.ServiceIdList, context.ContextOuterClass.ServiceIdList.Builder, context.ContextOuterClass.ServiceIdListOrBuilder> serviceIdsBuilder_;
famelis's avatar
famelis committed
       * <code>.context.ServiceIdList service_ids = 1;</code>
       * @return Whether the serviceIds field is set.
famelis's avatar
famelis committed
      public boolean hasServiceIds() {
        return serviceIdsBuilder_ != null || serviceIds_ != null;
famelis's avatar
famelis committed
       * <code>.context.ServiceIdList service_ids = 1;</code>
       * @return The serviceIds.
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceIdList getServiceIds() {
        if (serviceIdsBuilder_ == null) {
          return serviceIds_ == null ? context.ContextOuterClass.ServiceIdList.getDefaultInstance() : serviceIds_;
famelis's avatar
famelis committed
          return serviceIdsBuilder_.getMessage();
famelis's avatar
famelis committed
       * <code>.context.ServiceIdList service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder setServiceIds(context.ContextOuterClass.ServiceIdList value) {
        if (serviceIdsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
famelis's avatar
famelis committed
          serviceIds_ = value;
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.setMessage(value);
famelis's avatar
famelis committed
       * <code>.context.ServiceIdList service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder setServiceIds(
          context.ContextOuterClass.ServiceIdList.Builder builderForValue) {
        if (serviceIdsBuilder_ == null) {
          serviceIds_ = builderForValue.build();
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.setMessage(builderForValue.build());
famelis's avatar
famelis committed
       * <code>.context.ServiceIdList service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder mergeServiceIds(context.ContextOuterClass.ServiceIdList value) {
        if (serviceIdsBuilder_ == null) {
          if (serviceIds_ != null) {
            serviceIds_ =
              context.ContextOuterClass.ServiceIdList.newBuilder(serviceIds_).mergeFrom(value).buildPartial();
famelis's avatar
famelis committed
            serviceIds_ = value;
          }
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIdsBuilder_.mergeFrom(value);
famelis's avatar
famelis committed

        return this;
famelis's avatar
famelis committed
       * <code>.context.ServiceIdList service_ids = 1;</code>
famelis's avatar
famelis committed
      public Builder clearServiceIds() {
        if (serviceIdsBuilder_ == null) {
          serviceIds_ = null;
          onChanged();
        } else {
famelis's avatar
famelis committed
          serviceIds_ = null;
          serviceIdsBuilder_ = null;
famelis's avatar
famelis committed

        return this;
famelis's avatar
famelis committed
       * <code>.context.ServiceIdList service_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceIdList.Builder getServiceIdsBuilder() {
famelis's avatar
famelis committed
        return getServiceIdsFieldBuilder().getBuilder();
famelis's avatar
famelis committed
       * <code>.context.ServiceIdList service_ids = 1;</code>
famelis's avatar
famelis committed
      public context.ContextOuterClass.ServiceIdListOrBuilder getServiceIdsOrBuilder() {
        if (serviceIdsBuilder_ != null) {
          return serviceIdsBuilder_.getMessageOrBuilder();
famelis's avatar
famelis committed
          return serviceIds_ == null ?
              context.ContextOuterClass.ServiceIdList.getDefaultInstance() : serviceIds_;
famelis's avatar
famelis committed
       * <code>.context.ServiceIdList service_ids = 1;</code>
      private com.google.protobuf.SingleFieldBuilderV3<
famelis's avatar
famelis committed
          context.ContextOuterClass.ServiceIdList, context.ContextOuterClass.ServiceIdList.Builder, context.ContextOuterClass.ServiceIdListOrBuilder> 
          getServiceIdsFieldBuilder() {
        if (serviceIdsBuilder_ == null) {
          serviceIdsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.ServiceIdList, context.ContextOuterClass.ServiceIdList.Builder, context.ContextOuterClass.ServiceIdListOrBuilder>(
                  getServiceIds(),
                  getParentForChildren(),
                  isClean());
famelis's avatar
famelis committed
          serviceIds_ = null;
famelis's avatar
famelis committed
        return serviceIdsBuilder_;
famelis's avatar
famelis committed

      private boolean includeEndpointIds_ ;
famelis's avatar
famelis committed
       * <code>bool include_endpoint_ids = 2;</code>
       * @return The includeEndpointIds.
famelis's avatar
famelis committed
      @java.lang.Override
      public boolean getIncludeEndpointIds() {
        return includeEndpointIds_;
famelis's avatar
famelis committed
       * <code>bool include_endpoint_ids = 2;</code>
       * @param value The includeEndpointIds to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setIncludeEndpointIds(boolean value) {
        
        includeEndpointIds_ = value;
        onChanged();
        return this;
      }
famelis's avatar
famelis committed
       * <code>bool include_endpoint_ids = 2;</code>
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder clearIncludeEndpointIds() {
        
        includeEndpointIds_ = false;
        onChanged();
        return this;
famelis's avatar
famelis committed

      private boolean includeConstraints_ ;
famelis's avatar
famelis committed
       * <code>bool include_constraints = 3;</code>
       * @return The includeConstraints.
famelis's avatar
famelis committed
      @java.lang.Override
      public boolean getIncludeConstraints() {
        return includeConstraints_;
famelis's avatar
famelis committed
       * <code>bool include_constraints = 3;</code>
       * @param value The includeConstraints to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setIncludeConstraints(boolean value) {
        
        includeConstraints_ = value;
        onChanged();
        return this;
famelis's avatar
famelis committed
       * <code>bool include_constraints = 3;</code>
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder clearIncludeConstraints() {
        
        includeConstraints_ = false;
        onChanged();
        return this;
famelis's avatar
famelis committed

      private boolean includeConfigRules_ ;
famelis's avatar
famelis committed
       * <code>bool include_config_rules = 4;</code>
       * @return The includeConfigRules.
famelis's avatar
famelis committed
      @java.lang.Override
      public boolean getIncludeConfigRules() {
        return includeConfigRules_;
famelis's avatar
famelis committed
       * <code>bool include_config_rules = 4;</code>
       * @param value The includeConfigRules to set.
       * @return This builder for chaining.
famelis's avatar
famelis committed
      public Builder setIncludeConfigRules(boolean value) {
        
        includeConfigRules_ = value;
        onChanged();
        return this;
famelis's avatar
famelis committed
      /**
       * <code>bool include_config_rules = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearIncludeConfigRules() {
        
        includeConfigRules_ = false;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


famelis's avatar
famelis committed
      // @@protoc_insertion_point(builder_scope:context.ServiceFilter)
famelis's avatar
famelis committed
    // @@protoc_insertion_point(class_scope:context.ServiceFilter)
    private static final context.ContextOuterClass.ServiceFilter DEFAULT_INSTANCE;
famelis's avatar
famelis committed
      DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceFilter();
famelis's avatar
famelis committed
    public static context.ContextOuterClass.ServiceFilter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

famelis's avatar
famelis committed
    private static final com.google.protobuf.Parser<ServiceFilter>
        PARSER = new com.google.protobuf.AbstractParser<ServiceFilter>() {
      @java.lang.Override
famelis's avatar
famelis committed
      public ServiceFilter parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
famelis's avatar
famelis committed
        return new ServiceFilter(input, extensionRegistry);
famelis's avatar
famelis committed
    public static com.google.protobuf.Parser<ServiceFilter> parser() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public com.google.protobuf.Parser<ServiceFilter> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
famelis's avatar
famelis committed
    public context.ContextOuterClass.ServiceFilter getDefaultInstanceForType() {
  public interface ServiceEventOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.ServiceEvent)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
    boolean hasEvent();
     * <code>.context.Event event = 1;</code>
     * @return The event.
    context.ContextOuterClass.Event getEvent();
     * <code>.context.Event event = 1;</code>
    context.ContextOuterClass.EventOrBuilder getEventOrBuilder();

     * <code>.context.ServiceId service_id = 2;</code>
     * @return Whether the serviceId field is set.
    boolean hasServiceId();
     * <code>.context.ServiceId service_id = 2;</code>
     * @return The serviceId.
    context.ContextOuterClass.ServiceId getServiceId();
    /**
     * <code>.context.ServiceId service_id = 2;</code>
     */
    context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder();
   * Protobuf type {@code context.ServiceEvent}
  public static final class ServiceEvent extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.ServiceEvent)
      ServiceEventOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ServiceEvent.newBuilder() to construct.
    private ServiceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ServiceEvent() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ServiceEvent();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ServiceEvent(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.Event.Builder subBuilder = null;
              if (event_ != null) {
                subBuilder = event_.toBuilder();
              event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(event_);
                event_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              context.ContextOuterClass.ServiceId.Builder subBuilder = null;
              if (serviceId_ != null) {
                subBuilder = serviceId_.toBuilder();
              }
              serviceId_ = input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(serviceId_);
                serviceId_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_ServiceEvent_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_ServiceEvent_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.ServiceEvent.class, context.ContextOuterClass.ServiceEvent.Builder.class);
    public static final int EVENT_FIELD_NUMBER = 1;
    private context.ContextOuterClass.Event event_;
     * <code>.context.Event event = 1;</code>
     * @return Whether the event field is set.
     */
    @java.lang.Override
    public boolean hasEvent() {
      return event_ != null;
     * <code>.context.Event event = 1;</code>
     * @return The event.
     */
    @java.lang.Override
    public context.ContextOuterClass.Event getEvent() {
      return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
     * <code>.context.Event event = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
      return getEvent();

    public static final int SERVICE_ID_FIELD_NUMBER = 2;
    private context.ContextOuterClass.ServiceId serviceId_;
     * <code>.context.ServiceId service_id = 2;</code>
     * @return Whether the serviceId field is set.
     */
    @java.lang.Override
    public boolean hasServiceId() {
      return serviceId_ != null;
     * <code>.context.ServiceId service_id = 2;</code>
     * @return The serviceId.
     */
    @java.lang.Override
    public context.ContextOuterClass.ServiceId getServiceId() {
      return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_;
    }
    /**
     * <code>.context.ServiceId service_id = 2;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() {
      return getServiceId();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (event_ != null) {
        output.writeMessage(1, getEvent());
      }
      if (serviceId_ != null) {
        output.writeMessage(2, getServiceId());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (event_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getEvent());
      }
      if (serviceId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getServiceId());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.ServiceEvent)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.ServiceEvent other = (context.ContextOuterClass.ServiceEvent) obj;
      if (hasEvent() != other.hasEvent()) return false;
      if (hasEvent()) {
        if (!getEvent()
            .equals(other.getEvent())) return false;
      }
      if (hasServiceId() != other.hasServiceId()) return false;
      if (hasServiceId()) {
        if (!getServiceId()
            .equals(other.getServiceId())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasEvent()) {
        hash = (37 * hash) + EVENT_FIELD_NUMBER;
        hash = (53 * hash) + getEvent().hashCode();
      }
      if (hasServiceId()) {
        hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER;
        hash = (53 * hash) + getServiceId().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static context.ContextOuterClass.ServiceEvent parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ServiceEvent parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ServiceEvent parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ServiceEvent parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ServiceEvent parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static context.ContextOuterClass.ServiceEvent parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static context.ContextOuterClass.ServiceEvent parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ServiceEvent parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ServiceEvent parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ServiceEvent parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static context.ContextOuterClass.ServiceEvent parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static context.ContextOuterClass.ServiceEvent parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(context.ContextOuterClass.ServiceEvent prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code context.ServiceEvent}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:context.ServiceEvent)
        context.ContextOuterClass.ServiceEventOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return context.ContextOuterClass.internal_static_context_ServiceEvent_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return context.ContextOuterClass.internal_static_context_ServiceEvent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                context.ContextOuterClass.ServiceEvent.class, context.ContextOuterClass.ServiceEvent.Builder.class);
      // Construct using context.ContextOuterClass.ServiceEvent.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (eventBuilder_ == null) {
          event_ = null;
          event_ = null;
          eventBuilder_ = null;
        }
        if (serviceIdBuilder_ == null) {
          serviceId_ = null;
        } else {
          serviceId_ = null;
          serviceIdBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return context.ContextOuterClass.internal_static_context_ServiceEvent_descriptor;
      public context.ContextOuterClass.ServiceEvent getDefaultInstanceForType() {
        return context.ContextOuterClass.ServiceEvent.getDefaultInstance();
      public context.ContextOuterClass.ServiceEvent build() {
        context.ContextOuterClass.ServiceEvent result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public context.ContextOuterClass.ServiceEvent buildPartial() {
        context.ContextOuterClass.ServiceEvent result = new context.ContextOuterClass.ServiceEvent(this);
        if (eventBuilder_ == null) {
          result.event_ = event_;
          result.event_ = eventBuilder_.build();
        }
        if (serviceIdBuilder_ == null) {
          result.serviceId_ = serviceId_;
        } else {
          result.serviceId_ = serviceIdBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof context.ContextOuterClass.ServiceEvent) {
          return mergeFrom((context.ContextOuterClass.ServiceEvent)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(context.ContextOuterClass.ServiceEvent other) {
        if (other == context.ContextOuterClass.ServiceEvent.getDefaultInstance()) return this;
        if (other.hasEvent()) {
          mergeEvent(other.getEvent());
        }
        if (other.hasServiceId()) {
          mergeServiceId(other.getServiceId());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        context.ContextOuterClass.ServiceEvent parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (context.ContextOuterClass.ServiceEvent) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private context.ContextOuterClass.Event event_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_;
       * <code>.context.Event event = 1;</code>
       * @return Whether the event field is set.
      public boolean hasEvent() {
        return eventBuilder_ != null || event_ != null;
       * <code>.context.Event event = 1;</code>
       * @return The event.
      public context.ContextOuterClass.Event getEvent() {
        if (eventBuilder_ == null) {
          return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_;
          return eventBuilder_.getMessage();
       * <code>.context.Event event = 1;</code>
      public Builder setEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          event_ = value;
          onChanged();
        } else {
          eventBuilder_.setMessage(value);
       * <code>.context.Event event = 1;</code>
      public Builder setEvent(
          context.ContextOuterClass.Event.Builder builderForValue) {
        if (eventBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
          eventBuilder_.setMessage(builderForValue.build());
       * <code>.context.Event event = 1;</code>
      public Builder mergeEvent(context.ContextOuterClass.Event value) {
        if (eventBuilder_ == null) {
          if (event_ != null) {
            event_ =
              context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial();
          } else {
            event_ = value;
          }
          onChanged();
        } else {
          eventBuilder_.mergeFrom(value);
       * <code>.context.Event event = 1;</code>
      public Builder clearEvent() {
        if (eventBuilder_ == null) {
          event_ = null;
          onChanged();
        } else {
          event_ = null;
          eventBuilder_ = null;
       * <code>.context.Event event = 1;</code>
      public context.ContextOuterClass.Event.Builder getEventBuilder() {
        
        onChanged();
        return getEventFieldBuilder().getBuilder();
      }
      /**
       * <code>.context.Event event = 1;</code>
       */
      public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() {
        if (eventBuilder_ != null) {
          return eventBuilder_.getMessageOrBuilder();
          return event_ == null ?
              context.ContextOuterClass.Event.getDefaultInstance() : event_;
       * <code>.context.Event event = 1;</code>
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> 
          getEventFieldBuilder() {
        if (eventBuilder_ == null) {
          eventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder>(
                  getEvent(),
                  getParentForChildren(),
                  isClean());
          event_ = null;
        return eventBuilder_;

      private context.ContextOuterClass.ServiceId serviceId_;
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_;
       * <code>.context.ServiceId service_id = 2;</code>
       * @return Whether the serviceId field is set.
      public boolean hasServiceId() {
        return serviceIdBuilder_ != null || serviceId_ != null;
      }
      /**
       * <code>.context.ServiceId service_id = 2;</code>
       * @return The serviceId.
       */
      public context.ContextOuterClass.ServiceId getServiceId() {
        if (serviceIdBuilder_ == null) {
          return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_;
          return serviceIdBuilder_.getMessage();
       * <code>.context.ServiceId service_id = 2;</code>
      public Builder setServiceId(context.ContextOuterClass.ServiceId value) {
        if (serviceIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          serviceId_ = value;
          onChanged();
        } else {
          serviceIdBuilder_.setMessage(value);
       * <code>.context.ServiceId service_id = 2;</code>
      public Builder setServiceId(
          context.ContextOuterClass.ServiceId.Builder builderForValue) {
        if (serviceIdBuilder_ == null) {
          serviceId_ = builderForValue.build();
          onChanged();
        } else {
          serviceIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
       * <code>.context.ServiceId service_id = 2;</code>
      public Builder mergeServiceId(context.ContextOuterClass.ServiceId value) {
        if (serviceIdBuilder_ == null) {
          if (serviceId_ != null) {
            serviceId_ =
              context.ContextOuterClass.ServiceId.newBuilder(serviceId_).mergeFrom(value).buildPartial();
          } else {
            serviceId_ = value;
          }
          onChanged();
        } else {
          serviceIdBuilder_.mergeFrom(value);
       * <code>.context.ServiceId service_id = 2;</code>
      public Builder clearServiceId() {
        if (serviceIdBuilder_ == null) {
          serviceId_ = null;
          onChanged();
          serviceId_ = null;
          serviceIdBuilder_ = null;
       * <code>.context.ServiceId service_id = 2;</code>
      public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() {
        
        onChanged();
        return getServiceIdFieldBuilder().getBuilder();
       * <code>.context.ServiceId service_id = 2;</code>
      public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() {
        if (serviceIdBuilder_ != null) {
          return serviceIdBuilder_.getMessageOrBuilder();
        } else {
          return serviceId_ == null ?
              context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_;
        }
       * <code>.context.ServiceId service_id = 2;</code>
      private com.google.protobuf.SingleFieldBuilderV3<
          context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> 
          getServiceIdFieldBuilder() {
        if (serviceIdBuilder_ == null) {
          serviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>(
                  getServiceId(),
                  getParentForChildren(),
                  isClean());
          serviceId_ = null;
        return serviceIdBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:context.ServiceEvent)
    // @@protoc_insertion_point(class_scope:context.ServiceEvent)
    private static final context.ContextOuterClass.ServiceEvent DEFAULT_INSTANCE;
      DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceEvent();
    public static context.ContextOuterClass.ServiceEvent getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ServiceEvent>
        PARSER = new com.google.protobuf.AbstractParser<ServiceEvent>() {
      @java.lang.Override
      public ServiceEvent parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ServiceEvent(input, extensionRegistry);
    public static com.google.protobuf.Parser<ServiceEvent> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ServiceEvent> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public context.ContextOuterClass.ServiceEvent getDefaultInstanceForType() {
  public interface SliceIdOrBuilder extends
      // @@protoc_insertion_point(interface_extends:context.SliceId)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.context.ContextId context_id = 1;</code>
     * @return Whether the contextId field is set.
    boolean hasContextId();
     * <code>.context.ContextId context_id = 1;</code>
     * @return The contextId.
    context.ContextOuterClass.ContextId getContextId();
     * <code>.context.ContextId context_id = 1;</code>
    context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder();

     * <code>.context.Uuid slice_uuid = 2;</code>
     * @return Whether the sliceUuid field is set.
    boolean hasSliceUuid();
     * <code>.context.Uuid slice_uuid = 2;</code>
     * @return The sliceUuid.
    context.ContextOuterClass.Uuid getSliceUuid();
    /**
     * <code>.context.Uuid slice_uuid = 2;</code>
     */
    context.ContextOuterClass.UuidOrBuilder getSliceUuidOrBuilder();
   * <pre>
   * ----- Slice ---------------------------------------------------------------------------------------------------------
   * </pre>
   *
   * Protobuf type {@code context.SliceId}
  public static final class SliceId extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:context.SliceId)
      SliceIdOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use SliceId.newBuilder() to construct.
    private SliceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private SliceId() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new SliceId();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private SliceId(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              context.ContextOuterClass.ContextId.Builder subBuilder = null;
              if (contextId_ != null) {
                subBuilder = contextId_.toBuilder();
              contextId_ = input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(contextId_);
                contextId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              context.ContextOuterClass.Uuid.Builder subBuilder = null;
              if (sliceUuid_ != null) {
                subBuilder = sliceUuid_.toBuilder();
              }
              sliceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(sliceUuid_);
                sliceUuid_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return context.ContextOuterClass.internal_static_context_SliceId_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return context.ContextOuterClass.internal_static_context_SliceId_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              context.ContextOuterClass.SliceId.class, context.ContextOuterClass.SliceId.Builder.class);
    public static final int CONTEXT_ID_FIELD_NUMBER = 1;
    private context.ContextOuterClass.ContextId contextId_;
     * <code>.context.ContextId context_id = 1;</code>
     * @return Whether the contextId field is set.
     */
    @java.lang.Override
    public boolean hasContextId() {
      return contextId_ != null;
     * <code>.context.ContextId context_id = 1;</code>
     * @return The contextId.
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextId getContextId() {
      return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_;
     * <code>.context.ContextId context_id = 1;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() {
      return getContextId();

    public static final int SLICE_UUID_FIELD_NUMBER = 2;
    private context.ContextOuterClass.Uuid sliceUuid_;
     * <code>.context.Uuid slice_uuid = 2;</code>
     * @return Whether the sliceUuid field is set.
     */
    @java.lang.Override
    public boolean hasSliceUuid() {
      return sliceUuid_ != null;
     * <code>.context.Uuid slice_uuid = 2;</code>
     * @return The sliceUuid.
     */
    @java.lang.Override
    public context.ContextOuterClass.Uuid getSliceUuid() {
      return sliceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : sliceUuid_;
    }
    /**
     * <code>.context.Uuid slice_uuid = 2;</code>
     */
    @java.lang.Override
    public context.ContextOuterClass.UuidOrBuilder getSliceUuidOrBuilder() {
      return getSliceUuid();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (contextId_ != null) {
        output.writeMessage(1, getContextId());
      }
      if (sliceUuid_ != null) {
        output.writeMessage(2, getSliceUuid());
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (contextId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getContextId());
      }
      if (sliceUuid_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getSliceUuid());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof context.ContextOuterClass.SliceId)) {
        return super.equals(obj);
      }
      context.ContextOuterClass.SliceId other = (context.ContextOuterClass.SliceId) obj;
      if (hasContextId() != other.hasContextId()) return false;
      if (hasContextId()) {
        if (!getContextId()
            .equals(other.getContextId())) return false;
      }
      if (hasSliceUuid() != other.hasSliceUuid()) return false;
      if (hasSliceUuid()) {
        if (!getSliceUuid()
            .equals(other.getSliceUuid())) return false;
      }
Loading
Loading full blame...