1// Copyright (c) 2016, 2018, 2019, Oracle and/or its affiliates. All rights reserved.
2// Code generated. DO NOT EDIT.
3
4// Object Storage Service API
5//
6// Common set of Object Storage and Archive Storage APIs for managing buckets, objects, and related resources.
7//
8
9package objectstorage
10
11import (
12	"github.com/oracle/oci-go-sdk/common"
13)
14
15// PreauthenticatedRequestSummary Get summary information about pre-authenticated requests.
16type PreauthenticatedRequestSummary struct {
17
18	// The unique identifier to use when directly addressing the pre-authenticated request.
19	Id *string `mandatory:"true" json:"id"`
20
21	// The user-provided name of the pre-authenticated request.
22	Name *string `mandatory:"true" json:"name"`
23
24	// The operation that can be performed on this resource.
25	AccessType PreauthenticatedRequestSummaryAccessTypeEnum `mandatory:"true" json:"accessType"`
26
27	// The expiration date for the pre-authenticated request as per RFC 3339 (https://tools.ietf.org/rfc/rfc3339). After this date the pre-authenticated request will no longer be valid.
28	TimeExpires *common.SDKTime `mandatory:"true" json:"timeExpires"`
29
30	// The date when the pre-authenticated request was created as per RFC 3339 (https://tools.ietf.org/rfc/rfc3339).
31	TimeCreated *common.SDKTime `mandatory:"true" json:"timeCreated"`
32
33	// The name of object that is being granted access to by the pre-authenticated request. This can be null and if it is,
34	// the pre-authenticated request grants access to the entire bucket.
35	ObjectName *string `mandatory:"false" json:"objectName"`
36}
37
38func (m PreauthenticatedRequestSummary) String() string {
39	return common.PointerString(m)
40}
41
42// PreauthenticatedRequestSummaryAccessTypeEnum Enum with underlying type: string
43type PreauthenticatedRequestSummaryAccessTypeEnum string
44
45// Set of constants representing the allowable values for PreauthenticatedRequestSummaryAccessTypeEnum
46const (
47	PreauthenticatedRequestSummaryAccessTypeObjectread      PreauthenticatedRequestSummaryAccessTypeEnum = "ObjectRead"
48	PreauthenticatedRequestSummaryAccessTypeObjectwrite     PreauthenticatedRequestSummaryAccessTypeEnum = "ObjectWrite"
49	PreauthenticatedRequestSummaryAccessTypeObjectreadwrite PreauthenticatedRequestSummaryAccessTypeEnum = "ObjectReadWrite"
50	PreauthenticatedRequestSummaryAccessTypeAnyobjectwrite  PreauthenticatedRequestSummaryAccessTypeEnum = "AnyObjectWrite"
51)
52
53var mappingPreauthenticatedRequestSummaryAccessType = map[string]PreauthenticatedRequestSummaryAccessTypeEnum{
54	"ObjectRead":      PreauthenticatedRequestSummaryAccessTypeObjectread,
55	"ObjectWrite":     PreauthenticatedRequestSummaryAccessTypeObjectwrite,
56	"ObjectReadWrite": PreauthenticatedRequestSummaryAccessTypeObjectreadwrite,
57	"AnyObjectWrite":  PreauthenticatedRequestSummaryAccessTypeAnyobjectwrite,
58}
59
60// GetPreauthenticatedRequestSummaryAccessTypeEnumValues Enumerates the set of values for PreauthenticatedRequestSummaryAccessTypeEnum
61func GetPreauthenticatedRequestSummaryAccessTypeEnumValues() []PreauthenticatedRequestSummaryAccessTypeEnum {
62	values := make([]PreauthenticatedRequestSummaryAccessTypeEnum, 0)
63	for _, v := range mappingPreauthenticatedRequestSummaryAccessType {
64		values = append(values, v)
65	}
66	return values
67}
68