Class ParamRef

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

    public class ParamRef
    extends java.lang.Object
    implements com.marcnuri.yakc.model.Model
    ParamRef describes how to locate the params to be used as input to expressions of rules applied by a policy binding.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  ParamRef.Builder  
    • Constructor Summary

      Constructors 
      Constructor Description
      ParamRef()  
      ParamRef​(java.lang.String name, java.lang.String namespace, java.lang.String parameterNotFoundAction, LabelSelector selector)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static ParamRef.Builder builder()  
      protected boolean canEqual​(java.lang.Object other)  
      boolean equals​(java.lang.Object o)  
      java.lang.String getName()
      `name` is the name of the resource being referenced.
      java.lang.String getNamespace()
      namespace is the namespace of the referenced resource.
      java.lang.String getParameterNotFoundAction()
      `parameterNotFoundAction` controls the behavior of the binding when the resource exists, and name or selector is valid, but there are no parameters matched by the binding.
      LabelSelector getSelector()  
      int hashCode()  
      void setName​(java.lang.String name)
      `name` is the name of the resource being referenced.
      void setNamespace​(java.lang.String namespace)
      namespace is the namespace of the referenced resource.
      void setParameterNotFoundAction​(java.lang.String parameterNotFoundAction)
      `parameterNotFoundAction` controls the behavior of the binding when the resource exists, and name or selector is valid, but there are no parameters matched by the binding.
      void setSelector​(LabelSelector selector)  
      ParamRef.Builder toBuilder()  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

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

      • ParamRef

        public ParamRef​(java.lang.String name,
                        java.lang.String namespace,
                        java.lang.String parameterNotFoundAction,
                        LabelSelector selector)
      • ParamRef

        public ParamRef()
    • Method Detail

      • getName

        public java.lang.String getName()
        `name` is the name of the resource being referenced.


        `name` and `selector` are mutually exclusive properties. If one is set, the other must be unset.

      • getNamespace

        public java.lang.String getNamespace()
        namespace is the namespace of the referenced resource. Allows limiting the search for params to a specific namespace. Applies to both `name` and `selector` fields.


        A per-namespace parameter may be used by specifying a namespace-scoped `paramKind` in the policy and leaving this field empty.


        - If `paramKind` is cluster-scoped, this field MUST be unset. Setting this field results in a configuration error.


        - If `paramKind` is namespace-scoped, the namespace of the object being evaluated for admission will be used when this field is left unset. Take care that if this is left empty the binding must not match any cluster-scoped resources, which will result in an error.

      • getParameterNotFoundAction

        public java.lang.String getParameterNotFoundAction()
        `parameterNotFoundAction` controls the behavior of the binding when the resource exists, and name or selector is valid, but there are no parameters matched by the binding. If the value is set to `Allow`, then no matched parameters will be treated as successful validation by the binding. If set to `Deny`, then no matched parameters will be subject to the `failurePolicy` of the policy.


        Allowed values are `Allow` or `Deny` Default to `Deny`

      • setName

        public void setName​(java.lang.String name)
        `name` is the name of the resource being referenced.


        `name` and `selector` are mutually exclusive properties. If one is set, the other must be unset.

      • setNamespace

        public void setNamespace​(java.lang.String namespace)
        namespace is the namespace of the referenced resource. Allows limiting the search for params to a specific namespace. Applies to both `name` and `selector` fields.


        A per-namespace parameter may be used by specifying a namespace-scoped `paramKind` in the policy and leaving this field empty.


        - If `paramKind` is cluster-scoped, this field MUST be unset. Setting this field results in a configuration error.


        - If `paramKind` is namespace-scoped, the namespace of the object being evaluated for admission will be used when this field is left unset. Take care that if this is left empty the binding must not match any cluster-scoped resources, which will result in an error.

      • setParameterNotFoundAction

        public void setParameterNotFoundAction​(java.lang.String parameterNotFoundAction)
        `parameterNotFoundAction` controls the behavior of the binding when the resource exists, and name or selector is valid, but there are no parameters matched by the binding. If the value is set to `Allow`, then no matched parameters will be treated as successful validation by the binding. If set to `Deny`, then no matched parameters will be subject to the `failurePolicy` of the policy.


        Allowed values are `Allow` or `Deny` Default to `Deny`

      • setSelector

        public void setSelector​(LabelSelector selector)
      • 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