1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct SearchEntitiesInput {
/// <p>The entity types for which to search.</p>
pub entity_types: ::std::option::Option<::std::vec::Vec<crate::types::EntityType>>,
/// <p>Optional filter to apply to the search. Valid filters are <code>NAME</code> <code>NAMESPACE</code>, <code>SEMANTIC_TYPE_PATH</code> and <code>REFERENCED_ENTITY_ID</code>. <code>REFERENCED_ENTITY_ID</code> filters on entities that are used by the entity in the result set. For example, you can filter on the ID of a property that is used in a state.</p>
/// <p>Multiple filters function as OR criteria in the query. Multiple values passed inside the filter function as AND criteria.</p>
pub filters: ::std::option::Option<::std::vec::Vec<crate::types::EntityFilter>>,
/// <p>The string that specifies the next page of results. Use this when you're paginating results.</p>
pub next_token: ::std::option::Option<::std::string::String>,
/// <p>The maximum number of results to return in the response.</p>
pub max_results: ::std::option::Option<i32>,
/// <p>The version of the user's namespace. Defaults to the latest version of the user's namespace.</p>
pub namespace_version: ::std::option::Option<i64>,
}
impl SearchEntitiesInput {
/// <p>The entity types for which to search.</p>
///
/// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.entity_types.is_none()`.
pub fn entity_types(&self) -> &[crate::types::EntityType] {
self.entity_types.as_deref().unwrap_or_default()
}
/// <p>Optional filter to apply to the search. Valid filters are <code>NAME</code> <code>NAMESPACE</code>, <code>SEMANTIC_TYPE_PATH</code> and <code>REFERENCED_ENTITY_ID</code>. <code>REFERENCED_ENTITY_ID</code> filters on entities that are used by the entity in the result set. For example, you can filter on the ID of a property that is used in a state.</p>
/// <p>Multiple filters function as OR criteria in the query. Multiple values passed inside the filter function as AND criteria.</p>
///
/// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.filters.is_none()`.
pub fn filters(&self) -> &[crate::types::EntityFilter] {
self.filters.as_deref().unwrap_or_default()
}
/// <p>The string that specifies the next page of results. Use this when you're paginating results.</p>
pub fn next_token(&self) -> ::std::option::Option<&str> {
self.next_token.as_deref()
}
/// <p>The maximum number of results to return in the response.</p>
pub fn max_results(&self) -> ::std::option::Option<i32> {
self.max_results
}
/// <p>The version of the user's namespace. Defaults to the latest version of the user's namespace.</p>
pub fn namespace_version(&self) -> ::std::option::Option<i64> {
self.namespace_version
}
}
impl SearchEntitiesInput {
/// Creates a new builder-style object to manufacture [`SearchEntitiesInput`](crate::operation::search_entities::SearchEntitiesInput).
pub fn builder() -> crate::operation::search_entities::builders::SearchEntitiesInputBuilder {
crate::operation::search_entities::builders::SearchEntitiesInputBuilder::default()
}
}
/// A builder for [`SearchEntitiesInput`](crate::operation::search_entities::SearchEntitiesInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct SearchEntitiesInputBuilder {
pub(crate) entity_types: ::std::option::Option<::std::vec::Vec<crate::types::EntityType>>,
pub(crate) filters: ::std::option::Option<::std::vec::Vec<crate::types::EntityFilter>>,
pub(crate) next_token: ::std::option::Option<::std::string::String>,
pub(crate) max_results: ::std::option::Option<i32>,
pub(crate) namespace_version: ::std::option::Option<i64>,
}
impl SearchEntitiesInputBuilder {
/// Appends an item to `entity_types`.
///
/// To override the contents of this collection use [`set_entity_types`](Self::set_entity_types).
///
/// <p>The entity types for which to search.</p>
pub fn entity_types(mut self, input: crate::types::EntityType) -> Self {
let mut v = self.entity_types.unwrap_or_default();
v.push(input);
self.entity_types = ::std::option::Option::Some(v);
self
}
/// <p>The entity types for which to search.</p>
pub fn set_entity_types(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::EntityType>>) -> Self {
self.entity_types = input;
self
}
/// <p>The entity types for which to search.</p>
pub fn get_entity_types(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::EntityType>> {
&self.entity_types
}
/// Appends an item to `filters`.
///
/// To override the contents of this collection use [`set_filters`](Self::set_filters).
///
/// <p>Optional filter to apply to the search. Valid filters are <code>NAME</code> <code>NAMESPACE</code>, <code>SEMANTIC_TYPE_PATH</code> and <code>REFERENCED_ENTITY_ID</code>. <code>REFERENCED_ENTITY_ID</code> filters on entities that are used by the entity in the result set. For example, you can filter on the ID of a property that is used in a state.</p>
/// <p>Multiple filters function as OR criteria in the query. Multiple values passed inside the filter function as AND criteria.</p>
pub fn filters(mut self, input: crate::types::EntityFilter) -> Self {
let mut v = self.filters.unwrap_or_default();
v.push(input);
self.filters = ::std::option::Option::Some(v);
self
}
/// <p>Optional filter to apply to the search. Valid filters are <code>NAME</code> <code>NAMESPACE</code>, <code>SEMANTIC_TYPE_PATH</code> and <code>REFERENCED_ENTITY_ID</code>. <code>REFERENCED_ENTITY_ID</code> filters on entities that are used by the entity in the result set. For example, you can filter on the ID of a property that is used in a state.</p>
/// <p>Multiple filters function as OR criteria in the query. Multiple values passed inside the filter function as AND criteria.</p>
pub fn set_filters(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::EntityFilter>>) -> Self {
self.filters = input;
self
}
/// <p>Optional filter to apply to the search. Valid filters are <code>NAME</code> <code>NAMESPACE</code>, <code>SEMANTIC_TYPE_PATH</code> and <code>REFERENCED_ENTITY_ID</code>. <code>REFERENCED_ENTITY_ID</code> filters on entities that are used by the entity in the result set. For example, you can filter on the ID of a property that is used in a state.</p>
/// <p>Multiple filters function as OR criteria in the query. Multiple values passed inside the filter function as AND criteria.</p>
pub fn get_filters(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::EntityFilter>> {
&self.filters
}
/// <p>The string that specifies the next page of results. Use this when you're paginating results.</p>
pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.next_token = ::std::option::Option::Some(input.into());
self
}
/// <p>The string that specifies the next page of results. Use this when you're paginating results.</p>
pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.next_token = input;
self
}
/// <p>The string that specifies the next page of results. Use this when you're paginating results.</p>
pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
&self.next_token
}
/// <p>The maximum number of results to return in the response.</p>
pub fn max_results(mut self, input: i32) -> Self {
self.max_results = ::std::option::Option::Some(input);
self
}
/// <p>The maximum number of results to return in the response.</p>
pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
self.max_results = input;
self
}
/// <p>The maximum number of results to return in the response.</p>
pub fn get_max_results(&self) -> &::std::option::Option<i32> {
&self.max_results
}
/// <p>The version of the user's namespace. Defaults to the latest version of the user's namespace.</p>
pub fn namespace_version(mut self, input: i64) -> Self {
self.namespace_version = ::std::option::Option::Some(input);
self
}
/// <p>The version of the user's namespace. Defaults to the latest version of the user's namespace.</p>
pub fn set_namespace_version(mut self, input: ::std::option::Option<i64>) -> Self {
self.namespace_version = input;
self
}
/// <p>The version of the user's namespace. Defaults to the latest version of the user's namespace.</p>
pub fn get_namespace_version(&self) -> &::std::option::Option<i64> {
&self.namespace_version
}
/// Consumes the builder and constructs a [`SearchEntitiesInput`](crate::operation::search_entities::SearchEntitiesInput).
pub fn build(
self,
) -> ::std::result::Result<crate::operation::search_entities::SearchEntitiesInput, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::operation::search_entities::SearchEntitiesInput {
entity_types: self.entity_types,
filters: self.filters,
next_token: self.next_token,
max_results: self.max_results,
namespace_version: self.namespace_version,
})
}
}