ModeShape 3 and programmatic infinispan/ModeShape configuration
forcam Sep 27, 2012 9:18 AMHi,
is it possible to configure ModeShape programatically? I've created a infinispan configuration and now i want to use it with ModeShape but i found no way to tell ModeShape to use my inifinispan configuration.
I've only find examples with json configuration files.
Here is my infinispan configuration:
// Verbindungsdaten aus dem Environment lesen ...
final String  driverClassName = System.getenv("database.jdbc.driverClassName");
final String  url = System.getenv("database.jdbc.url");
final String  username = System.getenv("database.jdbc.username");
final String  password = System.getenv("database.jdbc.password");
final String  database = System.getenv("database.name");
// ... und jetzt die Infinispan-Konfiguration aufbauen
final ConfigurationBuilder builder = new ConfigurationBuilder();
final Configuration con = builder.eviction().
        strategy(EvictionStrategy.LIRS).
        maxEntries(10).
     transaction().
        transactionManagerLookup(new DummyTransactionManagerLookup()).
        transactionMode(TransactionMode.TRANSACTIONAL).
        autoCommit(false).
        lockingMode(LockingMode.OPTIMISTIC).
    loaders().
        passivation(false).
        shared(false).
        preload(true).
    addCacheLoader().
        cacheLoader(new JdbcStringBasedCacheStore()).
            purgeOnStartup(false).
            fetchPersistentState(false).
            ignoreModifications(false).
            addProperty("connectionFactoryClass", "org.infinispan.loaders.jdbc.connectionfactory.PooledConnectionFactory").    // pooled -> c3p0
            addProperty("connectionUrl", url).
            addProperty("driverClass", driverClassName).
            addProperty("databaseType", database).
            addProperty("userName", username).
            addProperty("password", password).
            addProperty("bucketTableNamePrefix", "JCR_TABLE").
            addProperty("idColumnName", "ID_COLUMN").
            addProperty("idColumnType", "CHARACTER VARYING(255)").
            addProperty("dataColumnName", "DATA_COLUMN").
            addProperty("dataColumnType", "BYTEA").
            addProperty("timestampColumnName", "TIMESTAMP_COLUMN").
            addProperty("timestampColumnType", "BIGINT").
            addProperty("dropTableOnExit", "true").
            addProperty("createTableOnStart", "true").
build();
--------
Peter
 
    