gogol-genomics-0.3.0: Google Genomics SDK.

Copyright(c) 2015-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.Google.Resource.Genomics.Variants.Merge

Contents

Description

Merges the given variants with existing variants. For the definitions of variants and other genomics resources, see Fundamentals of Google Genomics Each variant will be merged with an existing variant that matches its reference sequence, start, end, reference bases, and alternative bases. If no such variant exists, a new one will be created. When variants are merged, the call information from the new variant is added to the existing variant. Variant info fields are merged as specified in the infoMergeConfig field of the MergeVariantsRequest. Please exercise caution when using this method! It is easy to introduce mistakes in existing variants and difficult to back out of them. For example, suppose you were trying to merge a new variant with an existing one and both variants contain calls that belong to callsets with the same callset ID. // Existing variant - irrelevant fields trimmed for clarity { "variantSetId": "10473108253681171589", "referenceName": "1", "start": "10582", "referenceBases": "G", "alternateBases": [ "A" ], "calls": [ { "callSetId": "10473108253681171589-0", "callSetName": "CALLSET0", "genotype": [ 0, 1 ], } ] } // New variant with conflicting call information { "variantSetId": "10473108253681171589", "referenceName": "1", "start": "10582", "referenceBases": "G", "alternateBases": [ "A" ], "calls": [ { "callSetId": "10473108253681171589-0", "callSetName": "CALLSET0", "genotype": [ 1, 1 ], } ] } The resulting merged variant would overwrite the existing calls with those from the new variant: { "variantSetId": "10473108253681171589", "referenceName": "1", "start": "10582", "referenceBases": "G", "alternateBases": [ "A" ], "calls": [ { "callSetId": "10473108253681171589-0", "callSetName": "CALLSET0", "genotype": [ 1, 1 ], } ] } This may be the desired outcome, but it is up to the user to determine if if that is indeed the case.

See: Genomics API Reference for genomics.variants.merge.

Synopsis

REST Resource

type VariantsMergeResource = "v1" :> ("variants:merge" :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] MergeVariantsRequest :> Post '[JSON] Empty)))))))))) #

A resource alias for genomics.variants.merge method which the VariantsMerge request conforms to.

Creating a Request

variantsMerge #

Creates a value of VariantsMerge with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

data VariantsMerge #

Merges the given variants with existing variants. For the definitions of variants and other genomics resources, see Fundamentals of Google Genomics Each variant will be merged with an existing variant that matches its reference sequence, start, end, reference bases, and alternative bases. If no such variant exists, a new one will be created. When variants are merged, the call information from the new variant is added to the existing variant. Variant info fields are merged as specified in the infoMergeConfig field of the MergeVariantsRequest. Please exercise caution when using this method! It is easy to introduce mistakes in existing variants and difficult to back out of them. For example, suppose you were trying to merge a new variant with an existing one and both variants contain calls that belong to callsets with the same callset ID. // Existing variant - irrelevant fields trimmed for clarity { "variantSetId": "10473108253681171589", "referenceName": "1", "start": "10582", "referenceBases": "G", "alternateBases": [ "A" ], "calls": [ { "callSetId": "10473108253681171589-0", "callSetName": "CALLSET0", "genotype": [ 0, 1 ], } ] } // New variant with conflicting call information { "variantSetId": "10473108253681171589", "referenceName": "1", "start": "10582", "referenceBases": "G", "alternateBases": [ "A" ], "calls": [ { "callSetId": "10473108253681171589-0", "callSetName": "CALLSET0", "genotype": [ 1, 1 ], } ] } The resulting merged variant would overwrite the existing calls with those from the new variant: { "variantSetId": "10473108253681171589", "referenceName": "1", "start": "10582", "referenceBases": "G", "alternateBases": [ "A" ], "calls": [ { "callSetId": "10473108253681171589-0", "callSetName": "CALLSET0", "genotype": [ 1, 1 ], } ] } This may be the desired outcome, but it is up to the user to determine if if that is indeed the case.

See: variantsMerge smart constructor.

Instances

Eq VariantsMerge # 
Data VariantsMerge # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> VariantsMerge -> c VariantsMerge #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c VariantsMerge #

toConstr :: VariantsMerge -> Constr #

dataTypeOf :: VariantsMerge -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c VariantsMerge) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c VariantsMerge) #

gmapT :: (forall b. Data b => b -> b) -> VariantsMerge -> VariantsMerge #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> VariantsMerge -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> VariantsMerge -> r #

gmapQ :: (forall d. Data d => d -> u) -> VariantsMerge -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> VariantsMerge -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> VariantsMerge -> m VariantsMerge #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> VariantsMerge -> m VariantsMerge #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> VariantsMerge -> m VariantsMerge #

Show VariantsMerge # 
Generic VariantsMerge # 

Associated Types

type Rep VariantsMerge :: * -> * #

GoogleRequest VariantsMerge # 

Associated Types

type Rs VariantsMerge :: * #

type Scopes VariantsMerge :: [Symbol] #

type Rep VariantsMerge # 
type Scopes VariantsMerge # 
type Scopes VariantsMerge = (:) Symbol "https://www.googleapis.com/auth/cloud-platform" ((:) Symbol "https://www.googleapis.com/auth/genomics" ([] Symbol))
type Rs VariantsMerge # 

Request Lenses

vmXgafv :: Lens' VariantsMerge (Maybe Xgafv) #

V1 error format.

vmUploadProtocol :: Lens' VariantsMerge (Maybe Text) #

Upload protocol for media (e.g. "raw", "multipart").

vmPp :: Lens' VariantsMerge Bool #

Pretty-print response.

vmAccessToken :: Lens' VariantsMerge (Maybe Text) #

OAuth access token.

vmUploadType :: Lens' VariantsMerge (Maybe Text) #

Legacy upload protocol for media (e.g. "media", "multipart").

vmPayload :: Lens' VariantsMerge MergeVariantsRequest #

Multipart request metadata.

vmBearerToken :: Lens' VariantsMerge (Maybe Text) #

OAuth bearer token.