Class Generated.ObjectReference

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable, Generated.ObjectReferenceOrBuilder
    Enclosing class:
    Generated

    public static final class Generated.ObjectReference
    extends com.google.protobuf.GeneratedMessageV3
    implements Generated.ObjectReferenceOrBuilder
     ObjectReference contains enough information to let you inspect or modify the referred object.
     ---
     New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs.
      1. Ignored fields.  It includes many fields which are not generally honored.  For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage.
      2. Invalid usage help.  It is impossible to add specific help for individual usage.  In most embedded usages, there are particular
         restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted".
         Those cannot be well described when embedded.
      3. Inconsistent validation.  Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen.
      4. The fields are both imprecise and overly precise.  Kind is not a precise mapping to a URL. This can produce ambiguity
         during interpretation and require a REST mapping.  In most cases, the dependency is on the group,resource tuple
         and the version of the actual struct is irrelevant.
      5. We cannot easily change it.  Because this type is embedded in many locations, updates to this type
         will affect numerous schemas.  Don't make new APIs embed an underspecified API type they do not control.
    
     Instead of using this type, create a locally provided and used type that is well-focused on your reference.
     For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .
     +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
     +structType=atomic
     
    Protobuf type k8s.io.api.core.v1.ObjectReference
    See Also:
    Serialized Form
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • hasKind

        public boolean hasKind()
         Kind of the referent.
         More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
         +optional
         
        optional string kind = 1;
        Specified by:
        hasKind in interface Generated.ObjectReferenceOrBuilder
        Returns:
        Whether the kind field is set.
      • getKind

        public String getKind()
         Kind of the referent.
         More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
         +optional
         
        optional string kind = 1;
        Specified by:
        getKind in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The kind.
      • getKindBytes

        public com.google.protobuf.ByteString getKindBytes()
         Kind of the referent.
         More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
         +optional
         
        optional string kind = 1;
        Specified by:
        getKindBytes in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The bytes for kind.
      • hasNamespace

        public boolean hasNamespace()
         Namespace of the referent.
         More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
         +optional
         
        optional string namespace = 2;
        Specified by:
        hasNamespace in interface Generated.ObjectReferenceOrBuilder
        Returns:
        Whether the namespace field is set.
      • getNamespace

        public String getNamespace()
         Namespace of the referent.
         More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
         +optional
         
        optional string namespace = 2;
        Specified by:
        getNamespace in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The namespace.
      • getNamespaceBytes

        public com.google.protobuf.ByteString getNamespaceBytes()
         Namespace of the referent.
         More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
         +optional
         
        optional string namespace = 2;
        Specified by:
        getNamespaceBytes in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The bytes for namespace.
      • hasName

        public boolean hasName()
         Name of the referent.
         More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
         +optional
         
        optional string name = 3;
        Specified by:
        hasName in interface Generated.ObjectReferenceOrBuilder
        Returns:
        Whether the name field is set.
      • getName

        public String getName()
         Name of the referent.
         More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
         +optional
         
        optional string name = 3;
        Specified by:
        getName in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The name.
      • getNameBytes

        public com.google.protobuf.ByteString getNameBytes()
         Name of the referent.
         More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
         +optional
         
        optional string name = 3;
        Specified by:
        getNameBytes in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The bytes for name.
      • hasUid

        public boolean hasUid()
         UID of the referent.
         More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
         +optional
         
        optional string uid = 4;
        Specified by:
        hasUid in interface Generated.ObjectReferenceOrBuilder
        Returns:
        Whether the uid field is set.
      • getUid

        public String getUid()
         UID of the referent.
         More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
         +optional
         
        optional string uid = 4;
        Specified by:
        getUid in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The uid.
      • getUidBytes

        public com.google.protobuf.ByteString getUidBytes()
         UID of the referent.
         More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
         +optional
         
        optional string uid = 4;
        Specified by:
        getUidBytes in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The bytes for uid.
      • hasApiVersion

        public boolean hasApiVersion()
         API version of the referent.
         +optional
         
        optional string apiVersion = 5;
        Specified by:
        hasApiVersion in interface Generated.ObjectReferenceOrBuilder
        Returns:
        Whether the apiVersion field is set.
      • getApiVersionBytes

        public com.google.protobuf.ByteString getApiVersionBytes()
         API version of the referent.
         +optional
         
        optional string apiVersion = 5;
        Specified by:
        getApiVersionBytes in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The bytes for apiVersion.
      • hasResourceVersion

        public boolean hasResourceVersion()
         Specific resourceVersion to which this reference is made, if any.
         More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
         +optional
         
        optional string resourceVersion = 6;
        Specified by:
        hasResourceVersion in interface Generated.ObjectReferenceOrBuilder
        Returns:
        Whether the resourceVersion field is set.
      • getResourceVersion

        public String getResourceVersion()
         Specific resourceVersion to which this reference is made, if any.
         More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
         +optional
         
        optional string resourceVersion = 6;
        Specified by:
        getResourceVersion in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The resourceVersion.
      • getResourceVersionBytes

        public com.google.protobuf.ByteString getResourceVersionBytes()
         Specific resourceVersion to which this reference is made, if any.
         More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
         +optional
         
        optional string resourceVersion = 6;
        Specified by:
        getResourceVersionBytes in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The bytes for resourceVersion.
      • hasFieldPath

        public boolean hasFieldPath()
         If referring to a piece of an object instead of an entire object, this string
         should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
         For example, if the object reference is to a container within a pod, this would take on a value like:
         "spec.containers{name}" (where "name" refers to the name of the container that triggered
         the event) or if no container name is specified "spec.containers[2]" (container with
         index 2 in this pod). This syntax is chosen only to have some well-defined way of
         referencing a part of an object.
         TODO: this design is not final and this field is subject to change in the future.
         +optional
         
        optional string fieldPath = 7;
        Specified by:
        hasFieldPath in interface Generated.ObjectReferenceOrBuilder
        Returns:
        Whether the fieldPath field is set.
      • getFieldPath

        public String getFieldPath()
         If referring to a piece of an object instead of an entire object, this string
         should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
         For example, if the object reference is to a container within a pod, this would take on a value like:
         "spec.containers{name}" (where "name" refers to the name of the container that triggered
         the event) or if no container name is specified "spec.containers[2]" (container with
         index 2 in this pod). This syntax is chosen only to have some well-defined way of
         referencing a part of an object.
         TODO: this design is not final and this field is subject to change in the future.
         +optional
         
        optional string fieldPath = 7;
        Specified by:
        getFieldPath in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The fieldPath.
      • getFieldPathBytes

        public com.google.protobuf.ByteString getFieldPathBytes()
         If referring to a piece of an object instead of an entire object, this string
         should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
         For example, if the object reference is to a container within a pod, this would take on a value like:
         "spec.containers{name}" (where "name" refers to the name of the container that triggered
         the event) or if no container name is specified "spec.containers[2]" (container with
         index 2 in this pod). This syntax is chosen only to have some well-defined way of
         referencing a part of an object.
         TODO: this design is not final and this field is subject to change in the future.
         +optional
         
        optional string fieldPath = 7;
        Specified by:
        getFieldPathBytes in interface Generated.ObjectReferenceOrBuilder
        Returns:
        The bytes for fieldPath.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static Generated.ObjectReference parseFrom​(ByteBuffer data)
                                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Generated.ObjectReference parseFrom​(ByteBuffer data,
                                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Generated.ObjectReference parseFrom​(com.google.protobuf.ByteString data)
                                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Generated.ObjectReference parseFrom​(com.google.protobuf.ByteString data,
                                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Generated.ObjectReference parseFrom​(byte[] data)
                                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Generated.ObjectReference parseFrom​(byte[] data,
                                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • newBuilderForType

        public Generated.ObjectReference.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public Generated.ObjectReference.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected Generated.ObjectReference.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getParserForType

        public com.google.protobuf.Parser<Generated.ObjectReference> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public Generated.ObjectReference getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder