plugins/dataset/gcmd/DifWriter.py (24 lines of code) (raw):

import logging import os import os.path import codecs from edge.opensearch.datasetgcmdresponse import DatasetGcmdResponse from edge.opensearch.datasetwriter import DatasetWriter class DifWriter(DatasetWriter): def __init__(self, configFilePath): super(DifWriter, self).__init__(configFilePath) templatePath = os.path.dirname(configFilePath) + os.sep templatePath += self._configuration.get('service', 'template') self.template = self._readTemplate(templatePath) def _generateOpenSearchResponse(self, solrResponse, searchText, searchUrl, searchParams, pretty): response = DatasetGcmdResponse(self._configuration) response.setTemplate(self.template) allowNone = False if 'allowNone' in searchParams and searchParams['allowNone'].lower() == 'true': allowNone = True return response.generate(solrResponse, pretty=pretty, allowNone=allowNone) def _readTemplate(self, path): file = codecs.open(path, encoding='utf-8') data = file.read() file.close() return data