Пример #1
0
  def Render(self,
             template,
             request,
             data_sources=None,
             additional_context=None):
    '''Renders |template| using |request|.

    Specify |data_sources| to only include the DataSources with the given names
    when rendering the template.

    Specify |additional_context| to inject additional template context when
    rendering the template.
    '''
    assert isinstance(template, Motemplate), type(template)
    render_context = CreateDataSources(self._server_instance, request)
    if data_sources is not None:
      render_context = dict((name, d) for name, d in render_context.iteritems()
                            if name in data_sources)
    render_context.update({
      'apps_samples_url': GITHUB_BASE,
      'base_path': self._server_instance.base_path,
      'extensions_samples_url': EXTENSIONS_SAMPLES,
      'static': self._server_instance.base_path + 'static',
    })
    render_context.update(additional_context or {})
    render_data = template.Render(render_context)
    return render_data.text, render_data.errors
Пример #2
0
    def Render(self,
               template,
               request,
               data_sources=None,
               additional_context=None):
        '''Renders |template| using |request|.

    Specify |data_sources| to only include the DataSources with the given names
    when rendering the template.

    Specify |additional_context| to inject additional template context when
    rendering the template.
    '''
        assert isinstance(template, Handlebar), type(template)
        render_context = CreateDataSources(self._server_instance, request)
        if data_sources is not None:
            render_context = dict((name, d)
                                  for name, d in render_context.iteritems()
                                  if name in data_sources)
        render_context.update({
            'apps_samples_url':
            GITHUB_BASE,
            'base_path':
            self._server_instance.base_path,
            'extensions_samples_url':
            EXTENSIONS_SAMPLES,
            'static':
            self._server_instance.base_path + 'static',
        })
        render_context.update(additional_context or {})
        render_data = template.Render(render_context)
        return render_data.text, render_data.errors
Пример #3
0
def UpdateCache(single_data_source=None, commit=None):
  '''Attempts to populate the datastore with a bunch of information derived from
  a given commit.
  '''
  server_instance = _CreateServerInstance(commit)

  # This is the guy that would be responsible for refreshing the cache of
  # examples. Here for posterity, hopefully it will be added to the targets
  # below someday.
  # render_refresher = RenderRefresher(server_instance, self._request)

  data_sources = CreateDataSources(server_instance)
  data_sources['content_providers'] = server_instance.content_providers
  data_sources['platform_bundle'] = server_instance.platform_bundle
  if single_data_source:
    _UpdateDataSource(single_data_source, data_sources[single_data_source])
  else:
    for name, source in data_sources.iteritems():
      _UpdateDataSource(name, source)