1# coding: utf-8 2# Copyright (c) 2016, 2021, Oracle and/or its affiliates. All rights reserved. 3# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. 4 5 6from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 7from oci.decorators import init_model_state_from_kwargs 8 9 10@init_model_state_from_kwargs 11class UpdateStreamDetails(object): 12 """ 13 Object used to update a stream. 14 """ 15 16 def __init__(self, **kwargs): 17 """ 18 Initializes a new UpdateStreamDetails object with values from keyword arguments. 19 The following keyword arguments are supported (corresponding to the getters/setters of this class): 20 21 :param stream_pool_id: 22 The value to assign to the stream_pool_id property of this UpdateStreamDetails. 23 :type stream_pool_id: str 24 25 :param freeform_tags: 26 The value to assign to the freeform_tags property of this UpdateStreamDetails. 27 :type freeform_tags: dict(str, str) 28 29 :param defined_tags: 30 The value to assign to the defined_tags property of this UpdateStreamDetails. 31 :type defined_tags: dict(str, dict(str, object)) 32 33 """ 34 self.swagger_types = { 35 'stream_pool_id': 'str', 36 'freeform_tags': 'dict(str, str)', 37 'defined_tags': 'dict(str, dict(str, object))' 38 } 39 40 self.attribute_map = { 41 'stream_pool_id': 'streamPoolId', 42 'freeform_tags': 'freeformTags', 43 'defined_tags': 'definedTags' 44 } 45 46 self._stream_pool_id = None 47 self._freeform_tags = None 48 self._defined_tags = None 49 50 @property 51 def stream_pool_id(self): 52 """ 53 Gets the stream_pool_id of this UpdateStreamDetails. 54 The `OCID`__ of the stream pool where the stream should be moved. 55 56 __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm 57 58 59 :return: The stream_pool_id of this UpdateStreamDetails. 60 :rtype: str 61 """ 62 return self._stream_pool_id 63 64 @stream_pool_id.setter 65 def stream_pool_id(self, stream_pool_id): 66 """ 67 Sets the stream_pool_id of this UpdateStreamDetails. 68 The `OCID`__ of the stream pool where the stream should be moved. 69 70 __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm 71 72 73 :param stream_pool_id: The stream_pool_id of this UpdateStreamDetails. 74 :type: str 75 """ 76 self._stream_pool_id = stream_pool_id 77 78 @property 79 def freeform_tags(self): 80 """ 81 Gets the freeform_tags of this UpdateStreamDetails. 82 Free-form tags for this resource. Each tag is a simple key-value pair that is applied with no predefined name, type, or namespace. Exists for cross-compatibility only. 83 For more information, see `Resource Tags`__. 84 85 Example: `{\"Department\": \"Finance\"}` 86 87 __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm 88 89 90 :return: The freeform_tags of this UpdateStreamDetails. 91 :rtype: dict(str, str) 92 """ 93 return self._freeform_tags 94 95 @freeform_tags.setter 96 def freeform_tags(self, freeform_tags): 97 """ 98 Sets the freeform_tags of this UpdateStreamDetails. 99 Free-form tags for this resource. Each tag is a simple key-value pair that is applied with no predefined name, type, or namespace. Exists for cross-compatibility only. 100 For more information, see `Resource Tags`__. 101 102 Example: `{\"Department\": \"Finance\"}` 103 104 __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm 105 106 107 :param freeform_tags: The freeform_tags of this UpdateStreamDetails. 108 :type: dict(str, str) 109 """ 110 self._freeform_tags = freeform_tags 111 112 @property 113 def defined_tags(self): 114 """ 115 Gets the defined_tags of this UpdateStreamDetails. 116 Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__. 117 118 Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` 119 120 __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm 121 122 123 :return: The defined_tags of this UpdateStreamDetails. 124 :rtype: dict(str, dict(str, object)) 125 """ 126 return self._defined_tags 127 128 @defined_tags.setter 129 def defined_tags(self, defined_tags): 130 """ 131 Sets the defined_tags of this UpdateStreamDetails. 132 Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__. 133 134 Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` 135 136 __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm 137 138 139 :param defined_tags: The defined_tags of this UpdateStreamDetails. 140 :type: dict(str, dict(str, object)) 141 """ 142 self._defined_tags = defined_tags 143 144 def __repr__(self): 145 return formatted_flat_dict(self) 146 147 def __eq__(self, other): 148 if other is None: 149 return False 150 151 return self.__dict__ == other.__dict__ 152 153 def __ne__(self, other): 154 return not self == other 155