Extension specific configurations

I am building an extension that requires certain configurations to be changed by environment. I was thinking of moving these outside into a XML configuration file.

Any recommendations on what location (in reference to Rhythmyx) is best to create such a configuration file and access the file via Extension init function?

I (and Percussion) have certainly put custom property files in the rxconfig/Server directory. Here’s an example when using a name/value properties file (although you were talking about XML!)…

if (m_props==null) {
  File location = new File("rxconfig/Server/touchparent.properties");

  File f = new File(location.getAbsolutePath());

  if (!f.exists())
  {
    m_log.debug("Configuration file missing. Cannot continue.");
    m_log.debug("Looked for file at: " + f.getAbsolutePath());
    return;
  }
  try {
    FileInputStream is = new FileInputStream(f);

    m_props = new Properties();
    m_props.load(is);
  } catch (FileNotFoundException e) {
    m_log.debug( "Cannot find config file");
  }
  catch (IOException e) {
    m_log.debug( "IO Exception reading touchparent config file");
  }

  defaultMaxLevel=m_props.getProperty("maxlevel","2");

  m_log.debug("default max level set from config to" +defaultMaxLevel);

}