<s> """<STR_LIT>""" <EOL> import logging <EOL> from google . appengine . ext . mapreduce import datastore_range_iterators as db_iters <EOL> from google . appengine . ext . mapreduce import errors <EOL> from google . appengine . ext . mapreduce . api . map_job import abstract_datastore_input_reader <EOL> class DatastoreInputReader ( abstract_datastore_input_reader <EOL> . AbstractDatastoreInputReader ) : <EOL> """<STR_LIT>""" <EOL> _KEY_RANGE_ITER_CLS = db_iters . KeyRangeEntityIterator <EOL> @ classmethod <EOL> def validate ( cls , job_config ) : <EOL> """<STR_LIT>""" <EOL> super ( DatastoreInputReader , cls ) . validate ( job_config ) <EOL> params = job_config . input_reader_params <EOL> entity_kind = params [ cls . ENTITY_KIND_PARAM ] <EOL> if "<STR_LIT:.>" in entity_kind : <EOL> logging . warning ( <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> entity_kind , cls . __name__ ) <EOL> if cls . FILTERS_PARAM in params : <EOL> filters = params [ cls . FILTERS_PARAM ] <EOL> for f in filters : <EOL> if f [ <NUM_LIT:1> ] != "<STR_LIT:=>" : <EOL> raise errors . BadReaderParamsError ( <EOL> "<STR_LIT>" , f ) </s>
