package idm

import "github.com/docker/docker/libnetwork/idm"

Package idm manages reservation/release of numerical ids from a configured set of contiguous ids

Index

Types

type Idm

type Idm struct {
	// contains filtered or unexported fields
}

Idm manages the reservation/release of numerical ids from a contiguous set

func New

func New(ds datastore.DataStore, id string, start, end uint64) (*Idm, error)

New returns an instance of id manager for a [start,end] set of numerical ids

func (*Idm) GetID

func (i *Idm) GetID(serial bool) (uint64, error)

GetID returns the first available id in the set

func (*Idm) GetIDInRange

func (i *Idm) GetIDInRange(start, end uint64, serial bool) (uint64, error)

GetIDInRange returns the first available id in the set within a [start,end] range

func (*Idm) GetSpecificID

func (i *Idm) GetSpecificID(id uint64) error

GetSpecificID tries to reserve the specified id

func (*Idm) Release

func (i *Idm) Release(id uint64)

Release releases the specified id

Source Files

idm.go

Version
v23.0.14+incompatible
Published
Jun 5, 2024
Platform
js/wasm
Imports
4 packages
Last checked
1 minute ago

Tools for package owners.