File: //snap/google-cloud-cli/394/lib/third_party/kubernetes/client/models/v1_node_selector_term.py
# coding: utf-8
"""
Kubernetes
No description provided (generated by Swagger Codegen
https://github.com/swagger-api/swagger-codegen)
OpenAPI spec version: v1.14.4
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""
from pprint import pformat
from six import iteritems
import re
class V1NodeSelectorTerm(object):
"""
NOTE: This class is auto generated by the swagger code generator program.
Do not edit the class manually.
"""
"""
Attributes:
swagger_types (dict): The key is attribute name and the value is attribute
type.
attribute_map (dict): The key is attribute name and the value is json key
in definition.
"""
swagger_types = {
'match_expressions': 'list[V1NodeSelectorRequirement]',
'match_fields': 'list[V1NodeSelectorRequirement]'
}
attribute_map = {
'match_expressions': 'matchExpressions',
'match_fields': 'matchFields'
}
def __init__(self, match_expressions=None, match_fields=None):
"""
V1NodeSelectorTerm - a model defined in Swagger
"""
self._match_expressions = None
self._match_fields = None
self.discriminator = None
if match_expressions is not None:
self.match_expressions = match_expressions
if match_fields is not None:
self.match_fields = match_fields
@property
def match_expressions(self):
"""
Gets the match_expressions of this V1NodeSelectorTerm.
A list of node selector requirements by node's labels.
:return: The match_expressions of this V1NodeSelectorTerm.
:rtype: list[V1NodeSelectorRequirement]
"""
return self._match_expressions
@match_expressions.setter
def match_expressions(self, match_expressions):
"""
Sets the match_expressions of this V1NodeSelectorTerm.
A list of node selector requirements by node's labels.
:param match_expressions: The match_expressions of this
V1NodeSelectorTerm.
:type: list[V1NodeSelectorRequirement]
"""
self._match_expressions = match_expressions
@property
def match_fields(self):
"""
Gets the match_fields of this V1NodeSelectorTerm.
A list of node selector requirements by node's fields.
:return: The match_fields of this V1NodeSelectorTerm.
:rtype: list[V1NodeSelectorRequirement]
"""
return self._match_fields
@match_fields.setter
def match_fields(self, match_fields):
"""
Sets the match_fields of this V1NodeSelectorTerm.
A list of node selector requirements by node's fields.
:param match_fields: The match_fields of this V1NodeSelectorTerm.
:type: list[V1NodeSelectorRequirement]
"""
self._match_fields = match_fields
def to_dict(self):
"""
Returns the model properties as a dict
"""
result = {}
for attr, _ in iteritems(self.swagger_types):
value = getattr(self, attr)
if isinstance(value, list):
result[attr] = list(
map(lambda x: x.to_dict() if hasattr(x, 'to_dict') else x, value))
elif hasattr(value, 'to_dict'):
result[attr] = value.to_dict()
elif isinstance(value, dict):
result[attr] = dict(
map(
lambda item: (item[0], item[1].to_dict())
if hasattr(item[1], 'to_dict') else item, value.items()))
else:
result[attr] = value
return result
def to_str(self):
"""
Returns the string representation of the model
"""
return pformat(self.to_dict())
def __repr__(self):
"""
For `print` and `pprint`
"""
return self.to_str()
def __eq__(self, other):
"""
Returns true if both objects are equal
"""
if not isinstance(other, V1NodeSelectorTerm):
return False
return self.__dict__ == other.__dict__
def __ne__(self, other):
"""
Returns true if both objects are not equal
"""
return not self == other