1// Copyright (c) 2016, 2018, 2019, Oracle and/or its affiliates. All rights reserved.
2// Code generated. DO NOT EDIT.
3
4// Digital Assistant Control Plane API
5//
6// API to create and maintain Oracle Digital Assistant service instances.
7//
8
9package oda
10
11import (
12	"github.com/oracle/oci-go-sdk/common"
13)
14
15// WorkRequestResource A resource created or operated on by a work request.
16type WorkRequestResource struct {
17
18	// The action to take against the Digital Assistant instance.
19	ResourceAction WorkRequestResourceResourceActionEnum `mandatory:"true" json:"resourceAction"`
20
21	// The resource type that the work request affects.
22	ResourceType *string `mandatory:"true" json:"resourceType"`
23
24	// The identifier of the Digital Assistant instance that is the subject of the request.
25	ResourceId *string `mandatory:"true" json:"resourceId"`
26
27	// The current state of the work request. The `SUCCEEDED`, `FAILED`, AND `CANCELED` states
28	// correspond to the action being performed.
29	Status WorkRequestResourceStatusEnum `mandatory:"true" json:"status"`
30
31	// Short message providing more detail for the current status. For example, if an operation fails
32	// this may include information about the reason for the failure and a possible resolution.
33	StatusMessage *string `mandatory:"false" json:"statusMessage"`
34
35	// The URI path that the user can do a GET on to access the resource metadata.
36	ResourceUri *string `mandatory:"false" json:"resourceUri"`
37}
38
39func (m WorkRequestResource) String() string {
40	return common.PointerString(m)
41}
42
43// WorkRequestResourceResourceActionEnum Enum with underlying type: string
44type WorkRequestResourceResourceActionEnum string
45
46// Set of constants representing the allowable values for WorkRequestResourceResourceActionEnum
47const (
48	WorkRequestResourceResourceActionCreate                     WorkRequestResourceResourceActionEnum = "CREATE"
49	WorkRequestResourceResourceActionDelete                     WorkRequestResourceResourceActionEnum = "DELETE"
50	WorkRequestResourceResourceActionPurge                      WorkRequestResourceResourceActionEnum = "PURGE"
51	WorkRequestResourceResourceActionRecover                    WorkRequestResourceResourceActionEnum = "RECOVER"
52	WorkRequestResourceResourceActionChangeCompartment          WorkRequestResourceResourceActionEnum = "CHANGE_COMPARTMENT"
53	WorkRequestResourceResourceActionCreateAssociation          WorkRequestResourceResourceActionEnum = "CREATE_ASSOCIATION"
54	WorkRequestResourceResourceActionDeleteAssociation          WorkRequestResourceResourceActionEnum = "DELETE_ASSOCIATION"
55	WorkRequestResourceResourceActionUpdateEntitlementsForCacct WorkRequestResourceResourceActionEnum = "UPDATE_ENTITLEMENTS_FOR_CACCT"
56)
57
58var mappingWorkRequestResourceResourceAction = map[string]WorkRequestResourceResourceActionEnum{
59	"CREATE":                        WorkRequestResourceResourceActionCreate,
60	"DELETE":                        WorkRequestResourceResourceActionDelete,
61	"PURGE":                         WorkRequestResourceResourceActionPurge,
62	"RECOVER":                       WorkRequestResourceResourceActionRecover,
63	"CHANGE_COMPARTMENT":            WorkRequestResourceResourceActionChangeCompartment,
64	"CREATE_ASSOCIATION":            WorkRequestResourceResourceActionCreateAssociation,
65	"DELETE_ASSOCIATION":            WorkRequestResourceResourceActionDeleteAssociation,
66	"UPDATE_ENTITLEMENTS_FOR_CACCT": WorkRequestResourceResourceActionUpdateEntitlementsForCacct,
67}
68
69// GetWorkRequestResourceResourceActionEnumValues Enumerates the set of values for WorkRequestResourceResourceActionEnum
70func GetWorkRequestResourceResourceActionEnumValues() []WorkRequestResourceResourceActionEnum {
71	values := make([]WorkRequestResourceResourceActionEnum, 0)
72	for _, v := range mappingWorkRequestResourceResourceAction {
73		values = append(values, v)
74	}
75	return values
76}
77
78// WorkRequestResourceStatusEnum Enum with underlying type: string
79type WorkRequestResourceStatusEnum string
80
81// Set of constants representing the allowable values for WorkRequestResourceStatusEnum
82const (
83	WorkRequestResourceStatusAccepted   WorkRequestResourceStatusEnum = "ACCEPTED"
84	WorkRequestResourceStatusInProgress WorkRequestResourceStatusEnum = "IN_PROGRESS"
85	WorkRequestResourceStatusSucceeded  WorkRequestResourceStatusEnum = "SUCCEEDED"
86	WorkRequestResourceStatusFailed     WorkRequestResourceStatusEnum = "FAILED"
87	WorkRequestResourceStatusCanceling  WorkRequestResourceStatusEnum = "CANCELING"
88	WorkRequestResourceStatusCanceled   WorkRequestResourceStatusEnum = "CANCELED"
89)
90
91var mappingWorkRequestResourceStatus = map[string]WorkRequestResourceStatusEnum{
92	"ACCEPTED":    WorkRequestResourceStatusAccepted,
93	"IN_PROGRESS": WorkRequestResourceStatusInProgress,
94	"SUCCEEDED":   WorkRequestResourceStatusSucceeded,
95	"FAILED":      WorkRequestResourceStatusFailed,
96	"CANCELING":   WorkRequestResourceStatusCanceling,
97	"CANCELED":    WorkRequestResourceStatusCanceled,
98}
99
100// GetWorkRequestResourceStatusEnumValues Enumerates the set of values for WorkRequestResourceStatusEnum
101func GetWorkRequestResourceStatusEnumValues() []WorkRequestResourceStatusEnum {
102	values := make([]WorkRequestResourceStatusEnum, 0)
103	for _, v := range mappingWorkRequestResourceStatus {
104		values = append(values, v)
105	}
106	return values
107}
108