// local
private Resource configuration;
+
private Resource variables;
+
private RepositoryConfig repositoryConfig;
private File homeDirectory;
private Boolean inMemory = false;
/** Migrations to execute (if not already done) */
private Set<JackrabbitDataModelMigration> dataModelMigrations = new HashSet<JackrabbitDataModelMigration>();
+ /** Straight (non spring) values */
+ private Properties configurationProperties;
+ private InputSource configurationXml;
+
/**
* Empty constructor, {@link #init()} should be called after properties have
* been set
// process configuration file
Properties vars = getConfigurationProperties();
- configurationIn = readConfiguration();
vars.put(RepositoryConfigurationParser.REPOSITORY_HOME_VARIABLE,
getHomeDirectory().getCanonicalPath());
- repositoryConfig = RepositoryConfig.create(new InputSource(
- configurationIn), vars);
+ InputSource is;
+ if (configurationXml != null)
+ is = configurationXml;
+ else {
+ configurationIn = readConfiguration();
+ is = new InputSource(configurationIn);
+ }
+ repositoryConfig = RepositoryConfig.create(is, vars);
//
// Actual repository creation
/** Generates the properties to use in the configuration. */
protected Properties getConfigurationProperties() {
+ if (configurationProperties != null)
+ return configurationProperties;
+
InputStream propsIn = null;
Properties vars;
try {
this.configuration = configuration;
}
+ public void setConfigurationProperties(Properties configurationProperties) {
+ this.configurationProperties = configurationProperties;
+ }
+
+ public void setConfigurationXml(InputSource configurationXml) {
+ this.configurationXml = configurationXml;
+ }
+
}