Class OperatorVersionSpecOperator

  • All Implemented Interfaces:
    com.marcnuri.yakc.model.Model

    public class OperatorVersionSpecOperator
    extends java.lang.Object
    implements com.marcnuri.yakc.model.Model
    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 .
    • Constructor Summary

      Constructors 
      Constructor Description
      OperatorVersionSpecOperator()  
      OperatorVersionSpecOperator​(java.lang.String apiVersion, java.lang.String fieldPath, java.lang.String kind, java.lang.String name, java.lang.String namespace, java.lang.String resourceVersion, java.lang.String uid)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static OperatorVersionSpecOperator.Builder builder()  
      protected boolean canEqual​(java.lang.Object other)  
      boolean equals​(java.lang.Object o)  
      java.lang.String getApiVersion()
      API version of the referent.
      java.lang.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].
      java.lang.String getKind()
      Kind of the referent.
      java.lang.String getName()
      Name of the referent.
      java.lang.String getNamespace()
      Namespace of the referent.
      java.lang.String getResourceVersion()
      Specific resourceVersion to which this reference is made, if any.
      java.lang.String getUid()
      UID of the referent.
      int hashCode()  
      void setApiVersion​(java.lang.String apiVersion)
      API version of the referent.
      void setFieldPath​(java.lang.String fieldPath)
      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].
      void setKind​(java.lang.String kind)
      Kind of the referent.
      void setName​(java.lang.String name)
      Name of the referent.
      void setNamespace​(java.lang.String namespace)
      Namespace of the referent.
      void setResourceVersion​(java.lang.String resourceVersion)
      Specific resourceVersion to which this reference is made, if any.
      void setUid​(java.lang.String uid)
      UID of the referent.
      OperatorVersionSpecOperator.Builder toBuilder()  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • OperatorVersionSpecOperator

        public OperatorVersionSpecOperator​(java.lang.String apiVersion,
                                           java.lang.String fieldPath,
                                           java.lang.String kind,
                                           java.lang.String name,
                                           java.lang.String namespace,
                                           java.lang.String resourceVersion,
                                           java.lang.String uid)
      • OperatorVersionSpecOperator

        public OperatorVersionSpecOperator()
    • Method Detail

      • getApiVersion

        public java.lang.String getApiVersion()
        API version of the referent.
      • getFieldPath

        public java.lang.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.
      • getKind

        public java.lang.String getKind()
        Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
      • getName

        public java.lang.String getName()
        Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
      • getNamespace

        public java.lang.String getNamespace()
        Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
      • getResourceVersion

        public java.lang.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
      • getUid

        public java.lang.String getUid()
        UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
      • setApiVersion

        public void setApiVersion​(java.lang.String apiVersion)
        API version of the referent.
      • setFieldPath

        public void setFieldPath​(java.lang.String fieldPath)
        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.
      • setKind

        public void setKind​(java.lang.String kind)
        Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
      • setName

        public void setName​(java.lang.String name)
        Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
      • setNamespace

        public void setNamespace​(java.lang.String namespace)
        Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
      • setResourceVersion

        public void setResourceVersion​(java.lang.String resourceVersion)
        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
      • setUid

        public void setUid​(java.lang.String uid)
        UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • canEqual

        protected boolean canEqual​(java.lang.Object other)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object