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)))))))))) Source #

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

Creating a Request

variantsMerge Source #

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 Source #

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 Source # 
Data VariantsMerge Source # 

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 Source # 
Generic VariantsMerge Source # 

Associated Types

type Rep VariantsMerge :: * -> * #

GoogleRequest VariantsMerge Source # 

Associated Types

type Rs VariantsMerge :: * #

type Scopes VariantsMerge :: [Symbol] #

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

Request Lenses

vmUploadProtocol :: Lens' VariantsMerge (Maybe Text) Source #

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

vmPp :: Lens' VariantsMerge Bool Source #

Pretty-print response.

vmUploadType :: Lens' VariantsMerge (Maybe Text) Source #

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