svn commit: r1616498 - /bloodhound/trunk/trac/trac/hooks.py

2014-08-07 Thread rjollos
Author: rjollos
Date: Thu Aug  7 14:30:16 2014
New Revision: 1616498

URL: http://svn.apache.org/r1616498
Log:
0.8dev: Part of [1616400]. Refs #795.

Modified:
bloodhound/trunk/trac/trac/hooks.py

Modified: bloodhound/trunk/trac/trac/hooks.py
URL: 
http://svn.apache.org/viewvc/bloodhound/trunk/trac/trac/hooks.py?rev=1616498r1=1616497r2=1616498view=diff
==
--- bloodhound/trunk/trac/trac/hooks.py (original)
+++ bloodhound/trunk/trac/trac/hooks.py Thu Aug  7 14:30:16 2014
@@ -34,7 +34,7 @@ class EnvironmentFactoryBase(object):
 
 @abc.abstractmethod
 def open_environment(self, environ, env_path, global_env, use_cache=False):
-raise NotImplementedError(Must override method 'open_environment')
+pass
 
 
 class RequestFactoryBase(object):




Re: [Apache Bloodhound] #795: request_factory and environment_factory options point to files in the bloodhound source directory

2014-08-07 Thread Apache Bloodhound
#795: request_factory and environment_factory options point to files in the
bloodhound source directory
+---
  Reporter:  rjollos|  Owner:  rjollos
  Type:  defect | Status:  accepted
  Priority:  major  |  Milestone:  Release 8
 Component:  installer  |Version:
Resolution: |   Keywords:
+---

Comment (by olemis):

 It is possible to deal with this in a separate ticket . This should not be
 a blocker looking forward to [milestone:Release 8]

-- 
Ticket URL: https://issues.apache.org/bloodhound/ticket/795#comment:9
Apache Bloodhound https://issues.apache.org/bloodhound/
The Apache Bloodhound issue tracker


svn commit: r1616567 - in /bloodhound/branches/bep_0014_solr/bloodhound_solr: bhsolr/admin.py bhsolr/backend.py bhsolr/schema.py bhsolr/schemadoc/schema.xml bhsolr/solr_backend.py bhsolr/web_ui.py set

2014-08-07 Thread ahorincar
Author: ahorincar
Date: Thu Aug  7 19:00:56 2014
New Revision: 1616567

URL: http://svn.apache.org/r1616567
Log:
Fixed pagination, fixed wildcard searching, implemented ITemplateStreamFilter 
for more_like_this queries,  added feature to generate schema

Added:
bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/admin.py
bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/backend.py
bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/schema.py
bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/web_ui.py
Removed:
bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/solr_backend.py
Modified:

bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/schemadoc/schema.xml
bloodhound/branches/bep_0014_solr/bloodhound_solr/setup.py

Added: bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/admin.py
URL: 
http://svn.apache.org/viewvc/bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/admin.py?rev=1616567view=auto
==
--- bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/admin.py (added)
+++ bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/admin.py Thu Aug  
7 19:00:56 2014
@@ -0,0 +1,15 @@
+from trac.core import Component, implements
+from bhsolr.schema import SolrSchema
+from trac.admin import IAdminCommandProvider
+
+class BloodhoundSolrAdmin(Component):
+
+implements(IAdminCommandProvider)
+
+# IAdminCommandProvider methods
+def get_admin_commands(self):
+yield ('bhsolr generate_schema', 'path',
+   'Generate Solr schema',
+   None, SolrSchema(self.env).generate_schema)
+
+

Added: bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/backend.py
URL: 
http://svn.apache.org/viewvc/bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/backend.py?rev=1616567view=auto
==
--- bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/backend.py (added)
+++ bloodhound/branches/bep_0014_solr/bloodhound_solr/bhsolr/backend.py Thu Aug 
 7 19:00:56 2014
@@ -0,0 +1,229 @@
+from bhsearch import BHSEARCH_CONFIG_SECTION
+from bhsearch.api import ISearchBackend, SCORE, QueryResult
+from bhsearch.query_parser import DefaultQueryParser
+from bhsearch.search_resources.ticket_search import TicketIndexer
+from trac.core import Component, implements, TracError
+from trac.config import Option
+from trac.ticket.model import Ticket
+from trac.ticket.api import TicketSystem
+from trac.util.datefmt import utc
+from datetime import datetime
+from sunburnt import SolrInterface
+from contextlib import contextmanager
+from math import ceil
+import re
+import pkg_resources
+from bhsolr.schema import SolrSchema
+
+UNIQUE_ID = unique_id
+
+HIGHLIGHTABLE_FIELDS = {unique_id : True,
+id : True,
+type : True,
+product : True,
+milestone : True,
+author : True,
+component : True,
+status : True,
+resolution : True,
+keywords : True,
+summary : True,
+content : True,
+changes : True,
+owner : True,
+repository : True,
+revision : True,
+message : True,
+name : True}
+
+class SolrBackend(Component):
+  implements(ISearchBackend)
+
+  server_url = Option(
+  BHSEARCH_CONFIG_SECTION,
+  'solr_server_url',
+  doc=Url of the server running Solr instance.,
+  doc_domain='bhsearch')
+
+
+  def __init__(self):
+resource_filename = pkg_resources.resource_filename
+path = resource_filename(__name__, schemadoc)
+file_obj = open(path + /schema.xml)
+# print SolrSchema(self.env).getInstance(self.env).path
+# file_obj = open(SolrSchema.getInstance(self.env).path)
+self.solr_interface = SolrInterface(str(self.server_url), 
schemadoc=file_obj)
+
+  def add_doc(self, doc, operation_context=None):
+self._reformat_doc(doc)
+doc[UNIQUE_ID] = self._create_unique_id(doc.get(product, ''),
+doc[type],
+doc[id])
+self.solr_interface.add(doc)
+self.solr_interface.commit()
+
+
+  def delete_doc(product, doc_type, doc_id, operation_context=None):
+unique_id = self._create_unique_id(product, doc_type, doc_id)
+self.solr_interface.delete(unique_id)
+
+
+  def optimize(self):
+self.solr_interface.optimize()
+
+  def query(self, query, query_string, sort = None, fields = None, filter = 
None,
+facets = None, pagenum = 1, pagelen = 20, highlight = False,
+highlight_fields = None, context = None):
+
+if not query_string:
+