views:

134

answers:

2

Hi,

I use the Searchable plugin with Grails I have the need to change the directory to which Compass points to, depending upon a UI choice by the user.

Normally, this value is set in the compassConnection variable of the searchable map in grails-app/conf/Searchable.groovy, like so, and gets called at app startup time:

searchable { compassConnection = new File( "/path/to/index/file/directory" ).absolutePath

...

}

To do what I need to do, I think that I need to get a handle into the compass config variable and then call config.setConnection("/new/path/to/index/dir")

  1. I don't know how I can get a reference to the config compass variable
  2. Am I right in assuming that I need to call setConnection(String) only, or is(are) there any other step(s) I need to take?

Really appreciate any help that I can get,

Shailen

A: 

In Searchable.groovy file, within searchable { } closure use this:

compassConnection = new File(
      "${userHome}/.grails/projects/${appName}/searchable-index/${grailsEnv}").absolutePath
archer
Thanks Archer for your response: my question has to do with changing the compassConnection _AFTER_ the setting in Searchable.groovy takes effect
ombud
A: 

Well, sorry I was not careful reading your question. I guess this class must be your starting point: http://www.compass-project.org/docs/2.2.0/api/

archer