func validateWorkspaceState()

in aws-aps-workspace/cmd/resource/resource.go [487:510]


func validateWorkspaceState(client internal.APSService, currentModel *Model, targetState string, successMessage string) (handler.ProgressEvent, error) {
	state, err := readWorkspace(client, currentModel)
	if err != nil {
		return handler.ProgressEvent{}, err
	}

	if aws.StringValue(state.StatusCode) != targetState {
		return handler.ProgressEvent{
			ResourceModel: &Model{
				Arn: currentModel.Arn,
			},
			OperationStatus:      handler.InProgress,
			Message:              messageInProgress,
			CallbackDelaySeconds: defaultCallbackSeconds,
			CallbackContext:      buildWaitForWorkspaceStatusCallbackContext(currentModel),
		}, nil
	}

	return handler.ProgressEvent{
		ResourceModel:   currentModel,
		OperationStatus: handler.Success,
		Message:         successMessage,
	}, nil
}