element

package
v0.0.0-...-e704281 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 19, 2018 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Account

type Account struct {
	AccountID       int         `json:"accountID"`
	Attributes      interface{} `json:"attributes"`
	InitiatorSecret string      `json:"initiatorSecret"`
	Status          string      `json:"status"`
	TargetSecret    string      `json:"targetSecret"`
	Username        string      `json:"username"`
}

type Client

type Client struct {
	Host                  string
	Username              string
	Password              string
	MaxConcurrentRequests int
	HTTPTransport         http.RoundTripper
	// contains filtered or unexported fields
}

A Client to interact with the Element API

func (*Client) CallAPIMethod

func (c *Client) CallAPIMethod(method string, params map[string]interface{}) (*json.RawMessage, error)

CallAPIMethod can be used to make a request to any Element API method, receiving results as raw JSON

func (*Client) GetAPIVersion

func (c *Client) GetAPIVersion() string

GetAPIVersion returns the API version that will be used for Element API requests

func (*Client) GetAccountByID

func (c *Client) GetAccountByID(id int) (Account, error)

func (*Client) GetInitiatorByID

func (c *Client) GetInitiatorByID(id string) (Initiator, error)

func (*Client) GetVolumeAccessGroupByID

func (c *Client) GetVolumeAccessGroupByID(id string) (VolumeAccessGroup, error)

func (*Client) GetVolumeByID

func (c *Client) GetVolumeByID(id string) (Volume, error)

func (*Client) SetAPIVersion

func (c *Client) SetAPIVersion(apiVersion string)

SetAPIVersion for the client to use for requests to the Element API

type GetAccountByIDRequest

type GetAccountByIDRequest struct {
	AccountID int `structs:"accountID"`
}

type GetAccountByIDResult

type GetAccountByIDResult struct {
	Account Account `json:"account"`
}

type Initiator

type Initiator struct {
	Name                string      `structs:"name,omitempty"`
	Alias               string      `structs:"alias,omitempty"`
	Attributes          interface{} `structs:"attributes,omitempty"`
	VolumeAccessGroupID int         `structs:"volumeAccessGroupID,omitempty"`
	InitiatorID         int         `structs:"initiatorID,omitempty"`
}

type InitiatorResponse

type InitiatorResponse struct {
	Name               string      `json:"initiatorName"`
	Alias              string      `json:"alias"`
	Attributes         interface{} `json:"attributes"`
	ID                 int         `json:"initiatorID"`
	VolumeAccessGroups []int       `json:"volumeAccessGroups"`
}

type ListInitiatorRequest

type ListInitiatorRequest struct {
	Initiators []int `structs:"initiators"`
}

type ListInitiatorResult

type ListInitiatorResult struct {
	Initiators []InitiatorResponse `json:"initiators"`
}

type ListVolumeAccessGroupsRequest

type ListVolumeAccessGroupsRequest struct {
	VolumeAccessGroups []int `structs:"volumeAccessGroups"`
}

type ListVolumeAccessGroupsResult

type ListVolumeAccessGroupsResult struct {
	VolumeAccessGroups         []VolumeAccessGroup `json:"volumeAccessGroups"`
	VolumeAccessGroupsNotFound []int               `json:"volumeAccessGroupsNotFound"`
}

type ListVolumesRequest

type ListVolumesRequest struct {
	Volumes               []int `structs:"volumeIDs"`
	IncludeVirtualVolumes bool  `structs:"includeVirtualVolumes"`
}

type ListVolumesResult

type ListVolumesResult struct {
	Volumes []Volume `json:"volumes"`
}

type Volume

type Volume struct {
	Name     string `json:"name"`
	VolumeID int    `json:"volumeID"`
	Iqn      string `json:"iqn"`
}

type VolumeAccessGroup

type VolumeAccessGroup struct {
	VolumeAccessGroupID int      `json:"volumeAccessGroupID"`
	Name                string   `json:"name"`
	Initiators          []string `json:"initiators"`
	Volumes             []int    `json:"volumes"`
	ID                  int      `json:"id"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL