Documentation
¶
Index ¶
- Constants
- Variables
- func ACLUpdate(ctx context.Context, client api.Client, path string, acl *ACL) error
- func ExportCreate(ctx context.Context, client api.Client, export *Export) (int, error)
- func ExportDelete(ctx context.Context, client api.Client, id int) error
- func ExportUpdate(ctx context.Context, client api.Client, export *Export) error
- func SetExportClients(ctx context.Context, client api.Client, id int, addrs ...string) error
- func SetExportRootClients(ctx context.Context, client api.Client, id int, addrs ...string) error
- func Unexport(ctx context.Context, client api.Client, id int) error
- type ACL
- type ActionType
- type AuthoritativeType
- type Export
- type ExportList
- type FileMode
- type Persona
- type PersonaID
- type PersonaIDType
- type PersonaType
- type UserMapping
Constants ¶
const ( ActionTypeUnknownStr = "unknown" ActionTypeReplaceStr = "replace" ActionTypeUpdateStr = "update" )
Variables ¶
var ( // PAuthoritativeTypeACL is used to grab a pointer to a const. PAuthoritativeTypeACL = AuthoritativeTypeACL // PAuthoritativeTypeMode is used to grab a pointer to a const. PAuthoritativeTypeMode = AuthoritativeTypeMode )
var ( // PActionTypeReplace is used to grab a pointer to a const. PActionTypeReplace = ActionTypeReplace // PActionTypeUpdate is used to grab a pointer to a const. PActionTypeUpdate = ActionTypeUpdate )
var ( // PPersonaIDTypeUnknown is used to get adddress of the constant. PPersonaTypeUnknown = PersonaTypeUnknown // PPersonaTypeUser is used to get adddress of the constant. PPersonaTypeUser = PersonaTypeUser // PPersonaTypeGroup is used to get adddress of the constant. PPersonaTypeGroup = PersonaTypeGroup // PPersonaTypeWellKnown is used to get adddress of the constant. PPersonaTypeWellKnown = PersonaTypeWellKnown )
var ActionTypesToStrs = [ActionTypeCount]string{ ActionTypeUnknownStr, ActionTypeReplaceStr, ActionTypeUpdateStr, }
Functions ¶
func ExportCreate ¶
ExportCreate POSTs an Export object to the Isilon server.
func ExportDelete ¶
ExportDelete DELETEs an Export object on the Isilon server.
func ExportUpdate ¶
ExportUpdate PUTs an Export object to the Isilon server.
func SetExportClients ¶
SetExportClients sets an Export's clients property.
func SetExportRootClients ¶
SetExportRootClients sets an Export's root_clients property.
Types ¶
type ACL ¶ added in v1.3.0
type ACL struct {
Authoritative *AuthoritativeType `json:"authoritative,omitempty"`
Action *ActionType `json:"action,omitempty"`
Owner *Persona `json:"owner,omitempty"`
Group *Persona `json:"group,omitempty"`
Mode *FileMode `json:"mode,omitempty"`
}
ACL is an Isilon Access Control List used for managing an object's security.
type ActionType ¶ added in v1.3.0
type ActionType uint8
ActionType is a possible value used with an ACL's Action field.
const ( // ActionTypeUnknown is an unknown ActionType. ActionTypeUnknown ActionType = iota // ActionTypeReplace sets an ACL's Action field to "replace". ActionTypeReplace // ActionTypeUpdate sets an ACL's Action field to "update". ActionTypeUpdate ActionTypeCount )
func ParseActionType ¶ added in v1.3.0
func ParseActionType(text string) ActionType
ParseActionType parses an ActionType from a string.
func (ActionType) MarshalJSON ¶ added in v1.3.0
func (p ActionType) MarshalJSON() ([]byte, error)
MarshalJSON marshals an ActionType value to JSON.
func (ActionType) String ¶ added in v1.3.0
func (p ActionType) String() string
String returns the string representation of an ActionType value.
func (*ActionType) UnmarshalJSON ¶ added in v1.3.0
func (p *ActionType) UnmarshalJSON(data []byte) error
UnmarshalJSON unmarshals an ActionType value from JSON.
type AuthoritativeType ¶ added in v1.3.0
type AuthoritativeType uint8
AuthoritativeType is a possible value used with an ACL's Authoritative field.
const ( // AuthoritativeTypeUnknown is an unknown AuthoritativeType. AuthoritativeTypeUnknown AuthoritativeType = iota // AuthoritativeTypeACL sets an ACL's Authoritative field to "acl". AuthoritativeTypeACL // AuthoritativeTypeMode sets an ACL's Authoritative field to "mode". AuthoritativeTypeMode )
func ParseAuthoritativeType ¶ added in v1.3.0
func ParseAuthoritativeType(text string) AuthoritativeType
ParseAuthoritativeType parses an AuthoritativeType from a string.
func (AuthoritativeType) MarshalJSON ¶ added in v1.3.0
func (p AuthoritativeType) MarshalJSON() ([]byte, error)
MarshalJSON marshals an AuthoritativeType value to JSON.
func (AuthoritativeType) String ¶ added in v1.3.0
func (p AuthoritativeType) String() string
String returns the string representation of an AuthoritativeType value.
func (*AuthoritativeType) UnmarshalJSON ¶ added in v1.3.0
func (p *AuthoritativeType) UnmarshalJSON(data []byte) error
UnmarshalJSON unmarshals an AuthoritativeType value from JSON.
type Export ¶
type Export struct {
ID int `json:"id,omitmarshal"`
Paths *[]string `json:"paths,omitempty"`
Clients *[]string `json:"clients,omitempty"`
RootClients *[]string `json:"root_clients,omitempty"`
MapAll *UserMapping `json:"map_all,omitempty"`
MapRoot *UserMapping `json:"map_root,omitempty"`
MapNonRoot *UserMapping `json:"map_non_root,omitempty"`
MapFailure *UserMapping `json:"map_failure,omitempty"`
}
Export is an Isilon Export.
func ExportInspect ¶
ExportInspect GETs an export.
type ExportList ¶
type ExportList []*Export
ExportList is a list of Isilon Exports.
func (ExportList) MarshalJSON ¶
func (l ExportList) MarshalJSON() ([]byte, error)
MarshalJSON marshals an ExportList to JSON.
func (*ExportList) UnmarshalJSON ¶
func (l *ExportList) UnmarshalJSON(text []byte) error
UnmarshalJSON unmarshals an ExportList from JSON.
type FileMode ¶ added in v1.3.0
FileMode is an alias for the Go os.FileMode.
func (FileMode) MarshalText ¶ added in v1.3.0
MarshalText marshals a FileMode value to text.
func (FileMode) String ¶ added in v1.3.0
String returns the string representation of an ActionType value.
func (*FileMode) UnmarshalText ¶ added in v1.3.0
UnmarshalText unmarshals a FileMode value from text.
type Persona ¶
type Persona struct {
ID *PersonaID `json:"id,omitempty"`
Type *PersonaType `json:"type,omitempty"`
Name *string `json:"name,omitempty"`
}
Persona maps to the ISI <persona> type.
func (*Persona) MarshalJSON ¶
MarshalJSON marshals a Persona to JSON.
func (*Persona) UnmarshalJSON ¶
UnmarshalJSON unmarshals a Persona from JSON.
type PersonaID ¶
type PersonaID struct {
ID string
Type PersonaIDType
}
PersonaID maps to the ISI <persona-id> type.
func (*PersonaID) MarshalJSON ¶
MarshalJSON marshals a PersonaID to JSON.
func (*PersonaID) UnmarshalJSON ¶
UnmarshalJSON unmarshals a PersonaID from JSON.
type PersonaIDType ¶
type PersonaIDType uint8
PersonaIDType is a valid Persona ID type.
const ( // PersonaIDTypeUnknown is an unknown PersonaID type. PersonaIDTypeUnknown PersonaIDType = iota // PersonaIDTypeUser is a PersonaID user type. PersonaIDTypeUser // PersonaIDTypeGroup is a PersonaID group type. PersonaIDTypeGroup // PersonaIDTypeSID is a PersonaID SID type. PersonaIDTypeSID // PersonaIDTypeUID is a PersonaID UID type. PersonaIDTypeUID // PersonaIDTypeGID is a PersonaID GID type. PersonaIDTypeGID )
func ParsePersonaIDType ¶
func ParsePersonaIDType(text string) PersonaIDType
ParsePersonaIDType parses a PersonaIDType from a string.
func (PersonaIDType) MarshalJSON ¶
func (p PersonaIDType) MarshalJSON() ([]byte, error)
MarshalJSON marshals a PersonaIDType value to JSON.
func (PersonaIDType) String ¶
func (p PersonaIDType) String() string
String returns the string representation of a PersonaIDType value.
func (*PersonaIDType) UnmarshalJSON ¶
func (p *PersonaIDType) UnmarshalJSON(data []byte) error
UnmarshalJSON unmarshals a PersonaIDType value from JSON.
type PersonaType ¶
type PersonaType uint8
PersonaType is a valid Persona type.
const ( // PersonaTypeUnknown is an unknown Persona type. PersonaTypeUnknown PersonaType = iota // PersonaIDTypeUser is a Persona user type. PersonaTypeUser // PersonaTypeGroup is a Persona group type. PersonaTypeGroup // PersonaTypeWellKnown is a Persona wellknown type. PersonaTypeWellKnown )
func ParsePersonaType ¶
func ParsePersonaType(text string) PersonaType
ParsePersonaType parses a PersonaType from a string.
func (PersonaType) MarshalJSON ¶
func (p PersonaType) MarshalJSON() ([]byte, error)
MarshalJSON marshals a PersonaType value to JSON.
func (PersonaType) String ¶
func (p PersonaType) String() string
String returns the string representation of a PersonaType value.
func (*PersonaType) UnmarshalJSON ¶
func (p *PersonaType) UnmarshalJSON(data []byte) error
UnmarshalJSON marshals a PersonaType value from JSON.
type UserMapping ¶
type UserMapping struct {
Enabled *bool `json:"enabled,omitempty"`
User *Persona `json:"user,omitempty"`
PrimaryGroup *Persona `json:"primary_group,omitempty"`
SecondaryGroup []*Persona `json:"secondary_group,omitempty"`
}
UserMapping maps to the ISI <user-mapping> type.
func (*UserMapping) UnmarshalJSON ¶
func (um *UserMapping) UnmarshalJSON(data []byte) error
UnmarshalJSON unmarshals a UserMapping from JSON.