{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.QuickSight.Types.DataSetImportMode
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.QuickSight.Types.DataSetImportMode
  ( DataSetImportMode
      ( ..,
        DataSetImportMode_DIRECT_QUERY,
        DataSetImportMode_SPICE
      ),
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Prelude as Prelude

newtype DataSetImportMode = DataSetImportMode'
  { DataSetImportMode -> Text
fromDataSetImportMode ::
      Core.Text
  }
  deriving stock
    ( Int -> DataSetImportMode -> ShowS
[DataSetImportMode] -> ShowS
DataSetImportMode -> String
(Int -> DataSetImportMode -> ShowS)
-> (DataSetImportMode -> String)
-> ([DataSetImportMode] -> ShowS)
-> Show DataSetImportMode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DataSetImportMode] -> ShowS
$cshowList :: [DataSetImportMode] -> ShowS
show :: DataSetImportMode -> String
$cshow :: DataSetImportMode -> String
showsPrec :: Int -> DataSetImportMode -> ShowS
$cshowsPrec :: Int -> DataSetImportMode -> ShowS
Prelude.Show,
      ReadPrec [DataSetImportMode]
ReadPrec DataSetImportMode
Int -> ReadS DataSetImportMode
ReadS [DataSetImportMode]
(Int -> ReadS DataSetImportMode)
-> ReadS [DataSetImportMode]
-> ReadPrec DataSetImportMode
-> ReadPrec [DataSetImportMode]
-> Read DataSetImportMode
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DataSetImportMode]
$creadListPrec :: ReadPrec [DataSetImportMode]
readPrec :: ReadPrec DataSetImportMode
$creadPrec :: ReadPrec DataSetImportMode
readList :: ReadS [DataSetImportMode]
$creadList :: ReadS [DataSetImportMode]
readsPrec :: Int -> ReadS DataSetImportMode
$creadsPrec :: Int -> ReadS DataSetImportMode
Prelude.Read,
      DataSetImportMode -> DataSetImportMode -> Bool
(DataSetImportMode -> DataSetImportMode -> Bool)
-> (DataSetImportMode -> DataSetImportMode -> Bool)
-> Eq DataSetImportMode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DataSetImportMode -> DataSetImportMode -> Bool
$c/= :: DataSetImportMode -> DataSetImportMode -> Bool
== :: DataSetImportMode -> DataSetImportMode -> Bool
$c== :: DataSetImportMode -> DataSetImportMode -> Bool
Prelude.Eq,
      Eq DataSetImportMode
Eq DataSetImportMode
-> (DataSetImportMode -> DataSetImportMode -> Ordering)
-> (DataSetImportMode -> DataSetImportMode -> Bool)
-> (DataSetImportMode -> DataSetImportMode -> Bool)
-> (DataSetImportMode -> DataSetImportMode -> Bool)
-> (DataSetImportMode -> DataSetImportMode -> Bool)
-> (DataSetImportMode -> DataSetImportMode -> DataSetImportMode)
-> (DataSetImportMode -> DataSetImportMode -> DataSetImportMode)
-> Ord DataSetImportMode
DataSetImportMode -> DataSetImportMode -> Bool
DataSetImportMode -> DataSetImportMode -> Ordering
DataSetImportMode -> DataSetImportMode -> DataSetImportMode
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: DataSetImportMode -> DataSetImportMode -> DataSetImportMode
$cmin :: DataSetImportMode -> DataSetImportMode -> DataSetImportMode
max :: DataSetImportMode -> DataSetImportMode -> DataSetImportMode
$cmax :: DataSetImportMode -> DataSetImportMode -> DataSetImportMode
>= :: DataSetImportMode -> DataSetImportMode -> Bool
$c>= :: DataSetImportMode -> DataSetImportMode -> Bool
> :: DataSetImportMode -> DataSetImportMode -> Bool
$c> :: DataSetImportMode -> DataSetImportMode -> Bool
<= :: DataSetImportMode -> DataSetImportMode -> Bool
$c<= :: DataSetImportMode -> DataSetImportMode -> Bool
< :: DataSetImportMode -> DataSetImportMode -> Bool
$c< :: DataSetImportMode -> DataSetImportMode -> Bool
compare :: DataSetImportMode -> DataSetImportMode -> Ordering
$ccompare :: DataSetImportMode -> DataSetImportMode -> Ordering
$cp1Ord :: Eq DataSetImportMode
Prelude.Ord,
      (forall x. DataSetImportMode -> Rep DataSetImportMode x)
-> (forall x. Rep DataSetImportMode x -> DataSetImportMode)
-> Generic DataSetImportMode
forall x. Rep DataSetImportMode x -> DataSetImportMode
forall x. DataSetImportMode -> Rep DataSetImportMode x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DataSetImportMode x -> DataSetImportMode
$cfrom :: forall x. DataSetImportMode -> Rep DataSetImportMode x
Prelude.Generic
    )
  deriving newtype
    ( Int -> DataSetImportMode -> Int
DataSetImportMode -> Int
(Int -> DataSetImportMode -> Int)
-> (DataSetImportMode -> Int) -> Hashable DataSetImportMode
forall a. (Int -> a -> Int) -> (a -> Int) -> Hashable a
hash :: DataSetImportMode -> Int
$chash :: DataSetImportMode -> Int
hashWithSalt :: Int -> DataSetImportMode -> Int
$chashWithSalt :: Int -> DataSetImportMode -> Int
Prelude.Hashable,
      DataSetImportMode -> ()
(DataSetImportMode -> ()) -> NFData DataSetImportMode
forall a. (a -> ()) -> NFData a
rnf :: DataSetImportMode -> ()
$crnf :: DataSetImportMode -> ()
Prelude.NFData,
      Text -> Either String DataSetImportMode
(Text -> Either String DataSetImportMode)
-> FromText DataSetImportMode
forall a. (Text -> Either String a) -> FromText a
fromText :: Text -> Either String DataSetImportMode
$cfromText :: Text -> Either String DataSetImportMode
Core.FromText,
      DataSetImportMode -> Text
(DataSetImportMode -> Text) -> ToText DataSetImportMode
forall a. (a -> Text) -> ToText a
toText :: DataSetImportMode -> Text
$ctoText :: DataSetImportMode -> Text
Core.ToText,
      DataSetImportMode -> ByteString
(DataSetImportMode -> ByteString) -> ToByteString DataSetImportMode
forall a. (a -> ByteString) -> ToByteString a
toBS :: DataSetImportMode -> ByteString
$ctoBS :: DataSetImportMode -> ByteString
Core.ToByteString,
      DataSetImportMode -> ByteStringBuilder
(DataSetImportMode -> ByteStringBuilder) -> ToLog DataSetImportMode
forall a. (a -> ByteStringBuilder) -> ToLog a
build :: DataSetImportMode -> ByteStringBuilder
$cbuild :: DataSetImportMode -> ByteStringBuilder
Core.ToLog,
      HeaderName -> DataSetImportMode -> [Header]
(HeaderName -> DataSetImportMode -> [Header])
-> ToHeader DataSetImportMode
forall a. (HeaderName -> a -> [Header]) -> ToHeader a
toHeader :: HeaderName -> DataSetImportMode -> [Header]
$ctoHeader :: HeaderName -> DataSetImportMode -> [Header]
Core.ToHeader,
      DataSetImportMode -> QueryString
(DataSetImportMode -> QueryString) -> ToQuery DataSetImportMode
forall a. (a -> QueryString) -> ToQuery a
toQuery :: DataSetImportMode -> QueryString
$ctoQuery :: DataSetImportMode -> QueryString
Core.ToQuery,
      Value -> Parser [DataSetImportMode]
Value -> Parser DataSetImportMode
(Value -> Parser DataSetImportMode)
-> (Value -> Parser [DataSetImportMode])
-> FromJSON DataSetImportMode
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [DataSetImportMode]
$cparseJSONList :: Value -> Parser [DataSetImportMode]
parseJSON :: Value -> Parser DataSetImportMode
$cparseJSON :: Value -> Parser DataSetImportMode
Core.FromJSON,
      FromJSONKeyFunction [DataSetImportMode]
FromJSONKeyFunction DataSetImportMode
FromJSONKeyFunction DataSetImportMode
-> FromJSONKeyFunction [DataSetImportMode]
-> FromJSONKey DataSetImportMode
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
fromJSONKeyList :: FromJSONKeyFunction [DataSetImportMode]
$cfromJSONKeyList :: FromJSONKeyFunction [DataSetImportMode]
fromJSONKey :: FromJSONKeyFunction DataSetImportMode
$cfromJSONKey :: FromJSONKeyFunction DataSetImportMode
Core.FromJSONKey,
      [DataSetImportMode] -> Encoding
[DataSetImportMode] -> Value
DataSetImportMode -> Encoding
DataSetImportMode -> Value
(DataSetImportMode -> Value)
-> (DataSetImportMode -> Encoding)
-> ([DataSetImportMode] -> Value)
-> ([DataSetImportMode] -> Encoding)
-> ToJSON DataSetImportMode
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [DataSetImportMode] -> Encoding
$ctoEncodingList :: [DataSetImportMode] -> Encoding
toJSONList :: [DataSetImportMode] -> Value
$ctoJSONList :: [DataSetImportMode] -> Value
toEncoding :: DataSetImportMode -> Encoding
$ctoEncoding :: DataSetImportMode -> Encoding
toJSON :: DataSetImportMode -> Value
$ctoJSON :: DataSetImportMode -> Value
Core.ToJSON,
      ToJSONKeyFunction [DataSetImportMode]
ToJSONKeyFunction DataSetImportMode
ToJSONKeyFunction DataSetImportMode
-> ToJSONKeyFunction [DataSetImportMode]
-> ToJSONKey DataSetImportMode
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
toJSONKeyList :: ToJSONKeyFunction [DataSetImportMode]
$ctoJSONKeyList :: ToJSONKeyFunction [DataSetImportMode]
toJSONKey :: ToJSONKeyFunction DataSetImportMode
$ctoJSONKey :: ToJSONKeyFunction DataSetImportMode
Core.ToJSONKey,
      [Node] -> Either String DataSetImportMode
([Node] -> Either String DataSetImportMode)
-> FromXML DataSetImportMode
forall a. ([Node] -> Either String a) -> FromXML a
parseXML :: [Node] -> Either String DataSetImportMode
$cparseXML :: [Node] -> Either String DataSetImportMode
Core.FromXML,
      DataSetImportMode -> XML
(DataSetImportMode -> XML) -> ToXML DataSetImportMode
forall a. (a -> XML) -> ToXML a
toXML :: DataSetImportMode -> XML
$ctoXML :: DataSetImportMode -> XML
Core.ToXML
    )

pattern DataSetImportMode_DIRECT_QUERY :: DataSetImportMode
pattern $bDataSetImportMode_DIRECT_QUERY :: DataSetImportMode
$mDataSetImportMode_DIRECT_QUERY :: forall r. DataSetImportMode -> (Void# -> r) -> (Void# -> r) -> r
DataSetImportMode_DIRECT_QUERY = DataSetImportMode' "DIRECT_QUERY"

pattern DataSetImportMode_SPICE :: DataSetImportMode
pattern $bDataSetImportMode_SPICE :: DataSetImportMode
$mDataSetImportMode_SPICE :: forall r. DataSetImportMode -> (Void# -> r) -> (Void# -> r) -> r
DataSetImportMode_SPICE = DataSetImportMode' "SPICE"

{-# COMPLETE
  DataSetImportMode_DIRECT_QUERY,
  DataSetImportMode_SPICE,
  DataSetImportMode'
  #-}