Struct IpPools

Source
pub struct IpPools {
    pub client: Client,
}

Fields§

§client: Client

Implementations§

Source§

impl IpPools

Source

pub async fn get_page( &self, limit: u32, page_token: &str, sort_by: NameOrIdSortMode, ) -> Result<Vec<IpPool>>

List IP pools.

This function performs a GET to the /ip-pools endpoint.

Parameters:

  • limit: u32 – Maximum number of items returned by a single call.
  • page_token: &str – Token returned by previous call to retrieve the subsequent page.
  • sort_by: crate::types::NameOrIdSortMode – Supported set of sort modes for scanning by name or id.
Source

pub async fn get_all(&self, sort_by: NameOrIdSortMode) -> Result<Vec<IpPool>>

List IP pools.

This function performs a GET to the /ip-pools endpoint.

As opposed to get, this function returns all the pages of the request at once.

Source

pub async fn post(&self, body: &IpPoolCreate) -> Result<IpPool>

Create an IP pool.

This function performs a POST to the /ip-pools endpoint.

Source

pub async fn get_pool(&self, pool_name: &str) -> Result<IpPool>

Fetch an IP pool.

This function performs a GET to the /ip-pools/{pool_name} endpoint.

Parameters:

  • pool_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn put_pool( &self, pool_name: &str, body: &IpPoolUpdate, ) -> Result<IpPool>

Update an IP Pool.

This function performs a PUT to the /ip-pools/{pool_name} endpoint.

Parameters:

  • pool_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn delete_pool(&self, pool_name: &str) -> Result<()>

Delete an IP Pool.

This function performs a DELETE to the /ip-pools/{pool_name} endpoint.

Parameters:

  • pool_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn ranges_get( &self, limit: u32, page_token: &str, pool_name: &str, ) -> Result<Vec<IpPoolRange>>

List ranges for an IP pool.

This function performs a GET to the /ip-pools/{pool_name}/ranges endpoint.

Ranges are ordered by their first address.

Parameters:

  • pool_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
  • limit: u32 – Maximum number of items returned by a single call.
  • page_token: &str – Token returned by previous call to retrieve the subsequent page.
Source

pub async fn ranges_get_all(&self, pool_name: &str) -> Result<Vec<IpPoolRange>>

List ranges for an IP pool.

This function performs a GET to the /ip-pools/{pool_name}/ranges endpoint.

As opposed to ranges_get, this function returns all the pages of the request at once.

Ranges are ordered by their first address.

Source

pub async fn ranges_add( &self, pool_name: &str, body: &IpRange, ) -> Result<IpPoolRange>

Add a range to an IP pool.

This function performs a POST to the /ip-pools/{pool_name}/ranges/add endpoint.

Parameters:

  • pool_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn ranges_delete(&self, pool_name: &str, body: &IpRange) -> Result<()>

Remove a range from an IP pool.

This function performs a POST to the /ip-pools/{pool_name}/ranges/remove endpoint.

Parameters:

  • pool_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn service_view(&self, rack_id: &str) -> Result<IpPool>

Fetch an IP pool used for Oxide services.

This function performs a GET to the /ip-pools-service/{rack_id} endpoint.

Parameters:

  • rack_id: &str
Source

pub async fn service_range_list( &self, limit: u32, page_token: &str, rack_id: &str, ) -> Result<Vec<IpPoolRange>>

List ranges for an IP pool used for Oxide services.

This function performs a GET to the /ip-pools-service/{rack_id}/ranges endpoint.

Ranges are ordered by their first address.

Parameters:

  • rack_id: &str
  • limit: u32 – Maximum number of items returned by a single call.
  • page_token: &str – Token returned by previous call to retrieve the subsequent page.
Source

pub async fn service_range_list_all( &self, rack_id: &str, ) -> Result<Vec<IpPoolRange>>

List ranges for an IP pool used for Oxide services.

This function performs a GET to the /ip-pools-service/{rack_id}/ranges endpoint.

As opposed to service_range_list, this function returns all the pages of the request at once.

Ranges are ordered by their first address.

Source

pub async fn service_range_add( &self, rack_id: &str, body: &IpRange, ) -> Result<IpPoolRange>

Add a range to an IP pool used for Oxide services.

This function performs a POST to the /ip-pools-service/{rack_id}/ranges/add endpoint.

Parameters:

  • rack_id: &str
Source

pub async fn service_range_remove( &self, rack_id: &str, body: &IpRange, ) -> Result<()>

Remove a range from an IP pool used for Oxide services.

This function performs a POST to the /ip-pools-service/{rack_id}/ranges/remove endpoint.

Parameters:

  • rack_id: &str

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

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 T
where U: From<T>,

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> IntoResult<T> for T

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

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

Source§

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

The type returned in the event of a conversion error.
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