@@ -14,8 +14,8 @@ import (
1414 "github.com/hashicorp/terraform-plugin-sdk/helper/schema"
1515 "github.com/hashicorp/terraform-plugin-sdk/helper/validation"
1616
17- oci_analytics "github.com/oracle/oci-go-sdk/v44 /analytics"
18- oci_common "github.com/oracle/oci-go-sdk/v44 /common"
17+ oci_analytics "github.com/oracle/oci-go-sdk/v45 /analytics"
18+ oci_common "github.com/oracle/oci-go-sdk/v45 /common"
1919)
2020
2121func init () {
@@ -111,16 +111,6 @@ func AnalyticsAnalyticsInstanceResource() *schema.Resource {
111111 Computed : true ,
112112 Elem : schema .TypeString ,
113113 },
114- "state" : {
115- Type : schema .TypeString ,
116- Computed : true ,
117- Optional : true ,
118- DiffSuppressFunc : EqualIgnoreCaseSuppressDiff ,
119- ValidateFunc : validation .StringInSlice ([]string {
120- string (oci_analytics .AnalyticsInstanceLifecycleStateInactive ),
121- string (oci_analytics .AnalyticsInstanceLifecycleStateActive ),
122- }, true ),
123- },
124114 "network_endpoint_details" : {
125115 Type : schema .TypeList ,
126116 Optional : true ,
@@ -199,6 +189,16 @@ func AnalyticsAnalyticsInstanceResource() *schema.Resource {
199189 },
200190 },
201191 },
192+ "state" : {
193+ Type : schema .TypeString ,
194+ Optional : true ,
195+ Computed : true ,
196+ DiffSuppressFunc : EqualIgnoreCaseSuppressDiff ,
197+ ValidateFunc : validation .StringInSlice ([]string {
198+ string (oci_analytics .AnalyticsInstanceLifecycleStateInactive ),
199+ string (oci_analytics .AnalyticsInstanceLifecycleStateActive ),
200+ }, true ),
201+ },
202202
203203 // Computed
204204 "private_access_channels" : {
@@ -231,7 +231,6 @@ func createAnalyticsAnalyticsInstance(d *schema.ResourceData, m interface{}) err
231231 sync := & AnalyticsAnalyticsInstanceResourceCrud {}
232232 sync .D = d
233233 sync .Client = m .(* OracleClients ).analyticsClient ()
234-
235234 var powerOff = false
236235 if powerState , ok := sync .D .GetOkExists ("state" ); ok {
237236 wantedPowerState := oci_analytics .AnalyticsInstanceLifecycleStateEnum (strings .ToUpper (powerState .(string )))
@@ -245,46 +244,13 @@ func createAnalyticsAnalyticsInstance(d *schema.ResourceData, m interface{}) err
245244 }
246245
247246 if powerOff {
248- if err := sync .StopOacInstance (); err != nil {
247+ if err := sync .StopAnalyticsInstance (); err != nil {
249248 return err
250249 }
251250 sync .D .Set ("state" , oci_analytics .AnalyticsInstanceLifecycleStateInactive )
252251 }
253252 return nil
254- }
255-
256- func (s * AnalyticsAnalyticsInstanceResourceCrud ) StartOacInstance () error {
257- request := oci_analytics.StartAnalyticsInstanceRequest {}
258-
259- tmp := s .D .Id ()
260- request .AnalyticsInstanceId = & tmp
261-
262- request .RequestMetadata .RetryPolicy = getRetryPolicy (s .DisableNotFoundRetries , "analytics" )
263-
264- response , err := s .Client .StartAnalyticsInstance (context .Background (), request )
265- if err != nil {
266- return err
267- }
268253
269- workId := response .OpcWorkRequestId
270- return s .getAnalyticsInstanceFromWorkRequest (workId , getRetryPolicy (s .DisableNotFoundRetries , "analytics" ), oci_analytics .WorkRequestActionResultStarted , s .D .Timeout (schema .TimeoutUpdate ))
271- }
272-
273- func (s * AnalyticsAnalyticsInstanceResourceCrud ) StopOacInstance () error {
274- request := oci_analytics.StopAnalyticsInstanceRequest {}
275-
276- tmp := s .D .Id ()
277- request .AnalyticsInstanceId = & tmp
278-
279- request .RequestMetadata .RetryPolicy = getRetryPolicy (s .DisableNotFoundRetries , "analytics" )
280-
281- response , err := s .Client .StopAnalyticsInstance (context .Background (), request )
282- if err != nil {
283- return err
284- }
285-
286- workId := response .OpcWorkRequestId
287- return s .getAnalyticsInstanceFromWorkRequest (workId , getRetryPolicy (s .DisableNotFoundRetries , "analytics" ), oci_analytics .WorkRequestActionResultStopped , s .D .Timeout (schema .TimeoutUpdate ))
288254}
289255
290256func readAnalyticsAnalyticsInstance (d * schema.ResourceData , m interface {}) error {
@@ -300,7 +266,6 @@ func updateAnalyticsAnalyticsInstance(d *schema.ResourceData, m interface{}) err
300266 sync .D = d
301267 sync .Client = m .(* OracleClients ).analyticsClient ()
302268
303- // switch to power on
304269 powerOn , powerOff := false , false
305270
306271 if sync .D .HasChange ("state" ) {
@@ -313,7 +278,7 @@ func updateAnalyticsAnalyticsInstance(d *schema.ResourceData, m interface{}) err
313278 }
314279
315280 if powerOn {
316- if err := sync .StartOacInstance (); err != nil {
281+ if err := sync .StartAnalyticsInstance (); err != nil {
317282 return err
318283 }
319284 sync .D .Set ("state" , oci_analytics .AnalyticsInstanceLifecycleStateActive )
@@ -323,13 +288,13 @@ func updateAnalyticsAnalyticsInstance(d *schema.ResourceData, m interface{}) err
323288 return err
324289 }
325290
326- // switch to power off
327291 if powerOff {
328- if err := sync .StopOacInstance (); err != nil {
292+ if err := sync .StopAnalyticsInstance (); err != nil {
329293 return err
330294 }
331295 sync .D .Set ("state" , oci_analytics .AnalyticsInstanceLifecycleStateInactive )
332296 }
297+
333298 return nil
334299}
335300
@@ -771,6 +736,40 @@ func (s *AnalyticsAnalyticsInstanceResourceCrud) SetData() error {
771736 return nil
772737}
773738
739+ func (s * AnalyticsAnalyticsInstanceResourceCrud ) StartAnalyticsInstance () error {
740+ request := oci_analytics.StartAnalyticsInstanceRequest {}
741+
742+ idTmp := s .D .Id ()
743+ request .AnalyticsInstanceId = & idTmp
744+
745+ request .RequestMetadata .RetryPolicy = getRetryPolicy (s .DisableNotFoundRetries , "analytics" )
746+
747+ _ , err := s .Client .StartAnalyticsInstance (context .Background (), request )
748+ if err != nil {
749+ return err
750+ }
751+
752+ retentionPolicyFunc := func () bool { return s .Res .LifecycleState == oci_analytics .AnalyticsInstanceLifecycleStateActive }
753+ return WaitForResourceCondition (s , retentionPolicyFunc , s .D .Timeout (schema .TimeoutUpdate ))
754+ }
755+
756+ func (s * AnalyticsAnalyticsInstanceResourceCrud ) StopAnalyticsInstance () error {
757+ request := oci_analytics.StopAnalyticsInstanceRequest {}
758+
759+ idTmp := s .D .Id ()
760+ request .AnalyticsInstanceId = & idTmp
761+
762+ request .RequestMetadata .RetryPolicy = getRetryPolicy (s .DisableNotFoundRetries , "analytics" )
763+
764+ _ , err := s .Client .StopAnalyticsInstance (context .Background (), request )
765+ if err != nil {
766+ return err
767+ }
768+
769+ retentionPolicyFunc := func () bool { return s .Res .LifecycleState == oci_analytics .AnalyticsInstanceLifecycleStateInactive }
770+ return WaitForResourceCondition (s , retentionPolicyFunc , s .D .Timeout (schema .TimeoutUpdate ))
771+ }
772+
774773func (s * AnalyticsAnalyticsInstanceResourceCrud ) mapToCapacity (fieldKeyFormat string ) (oci_analytics.Capacity , error ) {
775774 result := oci_analytics.Capacity {}
776775
0 commit comments