Skip to content

Commit

Permalink
Add metadata assembly switch
Browse files Browse the repository at this point in the history
  • Loading branch information
Jerry committed Aug 17, 2020
1 parent 3e0274a commit ed59c7c
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 2 deletions.
11 changes: 9 additions & 2 deletions src/config_web.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,12 @@
API_VERSION = 'v1'
APP_LIST = [
(r'/v1/variant/(chr.{1,2}):(?!g\.)[g\.]{0,2}(\d+.*)', 'tornado.web.RedirectHandler', {'url': '/v1/variant/{0}:g.{1}'}),
] + APP_LIST
] + APP_LIST + [
(r"/{pre}/metadata/fields/?", 'web.handlers.MVMetadataFieldHandler'),
(r"/{pre}/metadata/?", 'web.handlers.MVMetadataSourceHandler'),
(r"/{pre}/{ver}/metadata/fields/?", 'web.handlers.MVMetadataFieldHandler'),
(r"/{pre}/{ver}/metadata/?", 'web.handlers.MVMetadataSourceHandler'),
]
# *****************************************************************************
# ES Query Pipeline
# *****************************************************************************
Expand Down Expand Up @@ -66,14 +71,16 @@
ANNOTATION_DEFAULT_SCOPES = ['_id', 'clingen.caid']

# typedef for assembly parameter
ASSEMBLY_TYPEDEF = {'assembly': {'type': str, 'default': 'hg19', 'enum': ('hg19', 'hg38'), 'group':('esqb', 'es')}}
ASSEMBLY_TYPEDEF = {'assembly': {'type': str, 'default': 'hg19', 'enum': ('hg19', 'hg38'), 'group': ('esqb', 'es')}}

ANNOTATION_KWARGS = copy.deepcopy(ANNOTATION_KWARGS)
ANNOTATION_KWARGS['*'].update(ASSEMBLY_TYPEDEF)

QUERY_KWARGS = copy.deepcopy(QUERY_KWARGS)
QUERY_KWARGS['*'].update(ASSEMBLY_TYPEDEF)

METADATA_KWARGS = {'*': ASSEMBLY_TYPEDEF}

LICENSE_TRANSFORM = {
"exac_nontcga": "exac",
"gnomad_exome": "gnomad",
Expand Down
19 changes: 19 additions & 0 deletions src/web/handlers.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from tornado.web import RequestHandler

from biothings.web.handlers.es import (MetadataFieldHandler,
MetadataSourceHandler)


class AssemblyAwareMixin(RequestHandler):

def prepare(self):
super().prepare()
self.biothing_type = self.args.es.assembly

class MVMetadataFieldHandler(AssemblyAwareMixin, MetadataFieldHandler):

pass

class MVMetadataSourceHandler(AssemblyAwareMixin, MetadataSourceHandler):

pass

0 comments on commit ed59c7c

Please sign in to comment.