1package containers
2
3import "github.com/Azure/go-autorest/autorest"
4
5type AccessLevel string
6
7var (
8	// Blob specifies public read access for blobs.
9	// Blob data within this container can be read via anonymous request,
10	// but container data is not available.
11	// Clients cannot enumerate blobs within the container via anonymous request.
12	Blob AccessLevel = "blob"
13
14	// Container specifies full public read access for container and blob data.
15	// Clients can enumerate blobs within the container via anonymous request,
16	// but cannot enumerate containers within the storage account.
17	Container AccessLevel = "container"
18
19	// Private specifies that container data is private to the account owner
20	Private AccessLevel = ""
21)
22
23type ContainerProperties struct {
24	autorest.Response
25
26	AccessLevel           AccessLevel
27	LeaseStatus           LeaseStatus
28	LeaseState            LeaseState
29	LeaseDuration         *LeaseDuration
30	MetaData              map[string]string
31	HasImmutabilityPolicy bool
32	HasLegalHold          bool
33}
34
35type Dataset string
36
37var (
38	Copy             Dataset = "copy"
39	Deleted          Dataset = "deleted"
40	MetaData         Dataset = "metadata"
41	Snapshots        Dataset = "snapshots"
42	UncommittedBlobs Dataset = "uncommittedblobs"
43)
44
45type ErrorResponse struct {
46	Code    *string `xml:"Code"`
47	Message *string `xml:"Message"`
48}
49
50type LeaseDuration string
51
52var (
53	// If this lease is for a Fixed Duration
54	Fixed LeaseDuration = "fixed"
55
56	// If this lease is for an Indefinite Duration
57	Infinite LeaseDuration = "infinite"
58)
59
60type LeaseState string
61
62var (
63	Available LeaseState = "available"
64	Breaking  LeaseState = "breaking"
65	Broken    LeaseState = "broken"
66	Expired   LeaseState = "expired"
67	Leased    LeaseState = "leased"
68)
69
70type LeaseStatus string
71
72var (
73	Locked   LeaseStatus = "locked"
74	Unlocked LeaseStatus = "unlocked"
75)
76