From b470e21e4d6f39b2e32c49bf7276c2b0545c7beb Mon Sep 17 00:00:00 2001 From: Robert Buels Date: Thu, 17 Jan 2013 18:11:35 -0500 Subject: [PATCH] add whether the e hash store is lowercasing its keys to the store metadata --- bin/generate-names.pl | 2 ++ src/JBrowse/Store/Names/Hash.js | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/bin/generate-names.pl b/bin/generate-names.pl index ce13ea0fb7..a13ee63d74 100755 --- a/bin/generate-names.pl +++ b/bin/generate-names.pl @@ -205,6 +205,8 @@ =head1 OPTIONS # store the list of tracks that have names $nameStore->{meta}{track_names} = \@tracksWithNames; +# record the fact that all the keys are lowercased +$nameStore->{meta}{lowercase_keys} = 1; # set up the name store in the trackList.json diff --git a/src/JBrowse/Store/Names/Hash.js b/src/JBrowse/Store/Names/Hash.js index 81aff4f554..c24ddb243b 100644 --- a/src/JBrowse/Store/Names/Hash.js +++ b/src/JBrowse/Store/Names/Hash.js @@ -112,6 +112,11 @@ return declare( HashStore, // remove trailing asterisks from query.name var thisB = this; var name = ( query.name || '' ).toString(); + + // lowercase the name if the store is all-lowercase + if( this.meta.lowercase_keys ) + name = name.toLowerCase(); + var trailingStar = /\*$/; if( trailingStar.test( name ) ) { name = name.replace( trailingStar, '' ); @@ -130,6 +135,10 @@ return declare( HashStore, }, get: function( id ) { + // lowercase the id if the store is all-lowercase + if( this.meta.lowercase_keys ) + id = id.toLowerCase(); + return this._getEntry( id ) .then( function( bucket ) { var nameRec = (bucket.exact||[])[0];