pub struct ServerQuery { /* private fields */ }
Expand description

A query to server list.

Implementations§

source§

impl ServerQuery

source

pub fn with_marker<T: Into<String>>(self, marker: T) -> Self

Add marker to the request.

Using this disables automatic pagination.

source

pub fn with_limit(self, limit: usize) -> Self

Add limit to the request.

Using this disables automatic pagination.

source

pub fn sort_by(self, sort: Sort<ServerSortKey>) -> Self

Add sorting to the request.

source

pub fn set_access_ip_v4<T: Into<Ipv4Addr>>(&mut self, value: T)

Filter by IPv4 address that should be used to access the server.

source

pub fn with_access_ip_v4<T: Into<Ipv4Addr>>(self, value: T) -> Self

Filter by IPv4 address that should be used to access the server.

source

pub fn set_access_ip_v6<T: Into<Ipv6Addr>>(&mut self, value: T)

Filter by IPv6 address that should be used to access the server.

source

pub fn with_access_ip_v6<T: Into<Ipv6Addr>>(self, value: T) -> Self

Filter by IPv6 address that should be used to access the server.

source

pub fn set_availability_zone<T: Into<String>>(&mut self, value: T)

Filter by availability zone.

source

pub fn with_availability_zone<T: Into<String>>(self, value: T) -> Self

Filter by availability zone.

source

pub fn set_flavor<T: Into<FlavorRef>>(&mut self, value: T)

Filter by flavor.

source

pub fn with_flavor<T: Into<FlavorRef>>(self, value: T) -> Self

Filter by flavor.

source

pub fn set_hostname<T: Into<String>>(&mut self, value: T)

Filter by host name.

source

pub fn with_hostname<T: Into<String>>(self, value: T) -> Self

Filter by host name.

source

pub fn set_image<T: Into<ImageRef>>(&mut self, value: T)

Filter by image used to build the server.

source

pub fn with_image<T: Into<ImageRef>>(self, value: T) -> Self

Filter by image used to build the server.

source

pub fn set_ip_v4<T: Into<Ipv4Addr>>(&mut self, value: T)

Filter by an IPv4 address.

source

pub fn with_ip_v4<T: Into<Ipv4Addr>>(self, value: T) -> Self

Filter by an IPv4 address.

source

pub fn set_ip_v6<T: Into<Ipv6Addr>>(&mut self, value: T)

Filter by an IPv6 address.

source

pub fn with_ip_v6<T: Into<Ipv6Addr>>(self, value: T) -> Self

Filter by an IPv6 address.

source

pub fn set_name<T: Into<String>>(&mut self, value: T)

Filter by name.

source

pub fn with_name<T: Into<String>>(self, value: T) -> Self

Filter by name.

source

pub fn set_project<T: Into<ProjectRef>>(&mut self, value: T)

Filter by project (also commonly known as tenant).

source

pub fn with_project<T: Into<ProjectRef>>(self, value: T) -> Self

Filter by project (also commonly known as tenant).

source

pub fn set_status<T: Into<ServerStatus>>(&mut self, value: T)

Filter by server status.

source

pub fn with_status<T: Into<ServerStatus>>(self, value: T) -> Self

Filter by server status.

source

pub fn set_user<T: Into<UserRef>>(&mut self, value: T)

Filter by user.

source

pub fn with_user<T: Into<UserRef>>(self, value: T) -> Self

Filter by user.

source

pub fn detailed(self) -> DetailedServerQuery

Convert this query into a detailed query.

Detailed queries return full Server objects instead of just ServerSummary.

source

pub fn into_stream(self) -> impl Stream<Item = Result<ServerSummary>>

Convert this query into a stream executing the request.

This stream yields only ServerSummary objects, containing IDs and names. Use detailed().into_stream() for full Server objects.

Returns a TryStream, which is a stream with each next call returning a Result.

Note that no requests are done until you start iterating.

source

pub async fn all(self) -> Result<Vec<ServerSummary>>

Execute this request and return all results.

A convenience shortcut for self.into_stream().try_collect().await.

source

pub async fn one(self) -> Result<ServerSummary>

Return one and exactly one result.

Fails with ResourceNotFound if the query produces no results and with TooManyItems if the query produces more than one result.

Trait Implementations§

source§

impl Clone for ServerQuery

source§

fn clone(&self) -> ServerQuery

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ServerQuery

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<DetailedServerQuery> for ServerQuery

source§

fn from(value: DetailedServerQuery) -> ServerQuery

Converts to this type from the input type.
source§

impl From<ServerQuery> for DetailedServerQuery

source§

fn from(value: ServerQuery) -> DetailedServerQuery

Converts to this type from the input type.
source§

impl ResourceQuery for ServerQuery

§

type Item = ServerSummary

Item type.
source§

const DEFAULT_LIMIT: usize = 100usize

Default limit to use with this query.
source§

fn can_paginate<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Whether pagination is supported for this query.
source§

fn extract_marker(&self, resource: &Self::Item) -> String

Extract a marker from a resource.
source§

fn fetch_chunk<'life0, 'async_trait>( &'life0 self, limit: Option<usize>, marker: Option<String> ) -> Pin<Box<dyn Future<Output = Result<Vec<Self::Item>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Get a chunk of resources.
source§

fn validate<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where Self: Send + 'async_trait, 'life0: 'async_trait,

Validate the query before the first execution. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more