{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.Google.BinaryAuthorization.Types.Sum where
import Network.Google.Prelude hiding (Bytes)
data AdmissionRuleEnforcementMode
= EnforcementModeUnspecified
| EnforcedBlockAndAuditLog
| DryrunAuditLogOnly
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable AdmissionRuleEnforcementMode
instance FromHttpApiData AdmissionRuleEnforcementMode where
parseQueryParam = \case
"ENFORCEMENT_MODE_UNSPECIFIED" -> Right EnforcementModeUnspecified
"ENFORCED_BLOCK_AND_AUDIT_LOG" -> Right EnforcedBlockAndAuditLog
"DRYRUN_AUDIT_LOG_ONLY" -> Right DryrunAuditLogOnly
x -> Left ("Unable to parse AdmissionRuleEnforcementMode from: " <> x)
instance ToHttpApiData AdmissionRuleEnforcementMode where
toQueryParam = \case
EnforcementModeUnspecified -> "ENFORCEMENT_MODE_UNSPECIFIED"
EnforcedBlockAndAuditLog -> "ENFORCED_BLOCK_AND_AUDIT_LOG"
DryrunAuditLogOnly -> "DRYRUN_AUDIT_LOG_ONLY"
instance FromJSON AdmissionRuleEnforcementMode where
parseJSON = parseJSONText "AdmissionRuleEnforcementMode"
instance ToJSON AdmissionRuleEnforcementMode where
toJSON = toJSONText
data PolicyGlobalPolicyEvaluationMode
= GlobalPolicyEvaluationModeUnspecified
| Enable
| Disable
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable PolicyGlobalPolicyEvaluationMode
instance FromHttpApiData PolicyGlobalPolicyEvaluationMode where
parseQueryParam = \case
"GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED" -> Right GlobalPolicyEvaluationModeUnspecified
"ENABLE" -> Right Enable
"DISABLE" -> Right Disable
x -> Left ("Unable to parse PolicyGlobalPolicyEvaluationMode from: " <> x)
instance ToHttpApiData PolicyGlobalPolicyEvaluationMode where
toQueryParam = \case
GlobalPolicyEvaluationModeUnspecified -> "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED"
Enable -> "ENABLE"
Disable -> "DISABLE"
instance FromJSON PolicyGlobalPolicyEvaluationMode where
parseJSON = parseJSONText "PolicyGlobalPolicyEvaluationMode"
instance ToJSON PolicyGlobalPolicyEvaluationMode where
toJSON = toJSONText
data PkixPublicKeySignatureAlgorithm
= SignatureAlgorithmUnspecified
| RsaPss2048SHA256
| RsaPss3072SHA256
| RsaPss4096SHA256
| RsaPss4096SHA512
| RsaSignPKCS12048SHA256
| RsaSignPKCS13072SHA256
| RsaSignPKCS14096SHA256
| RsaSignPKCS14096SHA512
| EcdsaP256SHA256
| EcdsaP384SHA384
| EcdsaP521SHA512
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable PkixPublicKeySignatureAlgorithm
instance FromHttpApiData PkixPublicKeySignatureAlgorithm where
parseQueryParam = \case
"SIGNATURE_ALGORITHM_UNSPECIFIED" -> Right SignatureAlgorithmUnspecified
"RSA_PSS_2048_SHA256" -> Right RsaPss2048SHA256
"RSA_PSS_3072_SHA256" -> Right RsaPss3072SHA256
"RSA_PSS_4096_SHA256" -> Right RsaPss4096SHA256
"RSA_PSS_4096_SHA512" -> Right RsaPss4096SHA512
"RSA_SIGN_PKCS1_2048_SHA256" -> Right RsaSignPKCS12048SHA256
"RSA_SIGN_PKCS1_3072_SHA256" -> Right RsaSignPKCS13072SHA256
"RSA_SIGN_PKCS1_4096_SHA256" -> Right RsaSignPKCS14096SHA256
"RSA_SIGN_PKCS1_4096_SHA512" -> Right RsaSignPKCS14096SHA512
"ECDSA_P256_SHA256" -> Right EcdsaP256SHA256
"ECDSA_P384_SHA384" -> Right EcdsaP384SHA384
"ECDSA_P521_SHA512" -> Right EcdsaP521SHA512
x -> Left ("Unable to parse PkixPublicKeySignatureAlgorithm from: " <> x)
instance ToHttpApiData PkixPublicKeySignatureAlgorithm where
toQueryParam = \case
SignatureAlgorithmUnspecified -> "SIGNATURE_ALGORITHM_UNSPECIFIED"
RsaPss2048SHA256 -> "RSA_PSS_2048_SHA256"
RsaPss3072SHA256 -> "RSA_PSS_3072_SHA256"
RsaPss4096SHA256 -> "RSA_PSS_4096_SHA256"
RsaPss4096SHA512 -> "RSA_PSS_4096_SHA512"
RsaSignPKCS12048SHA256 -> "RSA_SIGN_PKCS1_2048_SHA256"
RsaSignPKCS13072SHA256 -> "RSA_SIGN_PKCS1_3072_SHA256"
RsaSignPKCS14096SHA256 -> "RSA_SIGN_PKCS1_4096_SHA256"
RsaSignPKCS14096SHA512 -> "RSA_SIGN_PKCS1_4096_SHA512"
EcdsaP256SHA256 -> "ECDSA_P256_SHA256"
EcdsaP384SHA384 -> "ECDSA_P384_SHA384"
EcdsaP521SHA512 -> "ECDSA_P521_SHA512"
instance FromJSON PkixPublicKeySignatureAlgorithm where
parseJSON = parseJSONText "PkixPublicKeySignatureAlgorithm"
instance ToJSON PkixPublicKeySignatureAlgorithm where
toJSON = toJSONText
data AdmissionRuleEvaluationMode
= EvaluationModeUnspecified
| AlwaysAllow
| RequireAttestation
| AlwaysDeny
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable AdmissionRuleEvaluationMode
instance FromHttpApiData AdmissionRuleEvaluationMode where
parseQueryParam = \case
"EVALUATION_MODE_UNSPECIFIED" -> Right EvaluationModeUnspecified
"ALWAYS_ALLOW" -> Right AlwaysAllow
"REQUIRE_ATTESTATION" -> Right RequireAttestation
"ALWAYS_DENY" -> Right AlwaysDeny
x -> Left ("Unable to parse AdmissionRuleEvaluationMode from: " <> x)
instance ToHttpApiData AdmissionRuleEvaluationMode where
toQueryParam = \case
EvaluationModeUnspecified -> "EVALUATION_MODE_UNSPECIFIED"
AlwaysAllow -> "ALWAYS_ALLOW"
RequireAttestation -> "REQUIRE_ATTESTATION"
AlwaysDeny -> "ALWAYS_DENY"
instance FromJSON AdmissionRuleEvaluationMode where
parseJSON = parseJSONText "AdmissionRuleEvaluationMode"
instance ToJSON AdmissionRuleEvaluationMode where
toJSON = toJSONText
data Xgafv
= X1
| X2
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable Xgafv
instance FromHttpApiData Xgafv where
parseQueryParam = \case
"1" -> Right X1
"2" -> Right X2
x -> Left ("Unable to parse Xgafv from: " <> x)
instance ToHttpApiData Xgafv where
toQueryParam = \case
X1 -> "1"
X2 -> "2"
instance FromJSON Xgafv where
parseJSON = parseJSONText "Xgafv"
instance ToJSON Xgafv where
toJSON = toJSONText