Search in sources :

Example 16 with RepositoryConfig

use of org.apache.jackrabbit.core.config.RepositoryConfig in project jackrabbit by apache.

the class JCARepositoryManager method createNonTransientRepository.

/**
     * Creates a non transient Repository
     * 
     * @param parameters
     * @return Repository
     * @throws RepositoryException
     */
private Repository createNonTransientRepository(Map<String, String> parameters) throws RepositoryException {
    RepositoryConfig config = null;
    String configFile = parameters.get(JCAManagedConnectionFactory.CONFIGFILE_KEY);
    String homeDir = parameters.get(JCAManagedConnectionFactory.HOMEDIR_KEY);
    if (configFile != null && configFile.startsWith(CLASSPATH_CONFIG_PREFIX)) {
        ClassLoader cl = Thread.currentThread().getContextClassLoader();
        if (cl == null) {
            cl = this.getClass().getClassLoader();
        }
        InputStream configInputStream = cl.getResourceAsStream(configFile.substring(CLASSPATH_CONFIG_PREFIX.length()));
        try {
            config = RepositoryConfig.create(configInputStream, homeDir);
        } finally {
            if (configInputStream != null) {
                try {
                    configInputStream.close();
                } catch (IOException e) {
                // ignore
                }
            }
        }
    } else if (configFile != null) {
        config = RepositoryConfig.create(configFile, homeDir);
    } else {
        config = RepositoryConfig.create(new File(homeDir));
    }
    return RepositoryImpl.create(config);
}
Also used : RepositoryConfig(org.apache.jackrabbit.core.config.RepositoryConfig) InputStream(java.io.InputStream) IOException(java.io.IOException) File(java.io.File)

Example 17 with RepositoryConfig

use of org.apache.jackrabbit.core.config.RepositoryConfig in project jackrabbit by apache.

the class JackrabbitRepositoryStub method createRepository.

protected Repository createRepository(String dir, String xml) throws Exception {
    new File(dir).mkdirs();
    if (!new File(xml).exists()) {
        InputStream input = getResource("repository.xml");
        try {
            OutputStream output = new FileOutputStream(xml);
            try {
                IOUtils.copy(input, output);
            } finally {
                output.close();
            }
        } finally {
            input.close();
        }
    }
    RepositoryConfig config = RepositoryConfig.create(xml, dir);
    return RepositoryImpl.create(config);
}
Also used : RepositoryConfig(org.apache.jackrabbit.core.config.RepositoryConfig) InputStream(java.io.InputStream) OutputStream(java.io.OutputStream) FileOutputStream(java.io.FileOutputStream) FileOutputStream(java.io.FileOutputStream) File(java.io.File)

Example 18 with RepositoryConfig

use of org.apache.jackrabbit.core.config.RepositoryConfig in project jackrabbit by apache.

the class MembershipCacheTest method setUp.

@Override
protected void setUp() throws Exception {
    super.setUp();
    FileUtils.deleteDirectory(new File(REPO_HOME));
    RepositoryConfig config = RepositoryConfig.create(getClass().getResourceAsStream("repository.xml"), REPO_HOME);
    repo = RepositoryImpl.create(config);
    session = createSession();
    userMgr = session.getUserManager();
    cache = ((UserManagerImpl) userMgr).getMembershipCache();
    boolean autoSave = userMgr.isAutoSave();
    userMgr.autoSave(false);
    // create test users and groups
    List<User> users = new ArrayList<User>();
    for (int i = 0; i < NUM_USERS; i++) {
        users.add(userMgr.createUser(TEST_USER_PREFIX + i, "secret"));
    }
    for (int i = 0; i < NUM_GROUPS; i++) {
        Group g = userMgr.createGroup("MembershipCacheTestGroup-" + i);
        for (User u : users) {
            g.addMember(u);
        }
    }
    session.save();
    userMgr.autoSave(autoSave);
    logger.info("Initial cache size: " + cache.getSize());
}
Also used : RepositoryConfig(org.apache.jackrabbit.core.config.RepositoryConfig) Group(org.apache.jackrabbit.api.security.user.Group) User(org.apache.jackrabbit.api.security.user.User) ArrayList(java.util.ArrayList) File(java.io.File)

Example 19 with RepositoryConfig

use of org.apache.jackrabbit.core.config.RepositoryConfig in project jackrabbit-oak by apache.

the class LongNameTest method upgrade.

private static void upgrade(NodeStore target, boolean skipNameCheck, boolean filterLongNames) throws RepositoryException, IOException {
    RepositoryConfig config = createCrx2Config(crx2RepoDir);
    RepositoryContext context = RepositoryContext.create(config);
    try {
        RepositoryUpgrade upgrade = new RepositoryUpgrade(context, target);
        upgrade.setCheckLongNames(skipNameCheck);
        upgrade.setFilterLongNames(filterLongNames);
        upgrade.copy(null);
    } finally {
        context.getRepository().shutdown();
    }
}
Also used : RepositoryConfig(org.apache.jackrabbit.core.config.RepositoryConfig) RepositoryContext(org.apache.jackrabbit.core.RepositoryContext)

Example 20 with RepositoryConfig

use of org.apache.jackrabbit.core.config.RepositoryConfig in project jackrabbit-oak by apache.

the class CopyVersionHistoryTest method performCopy.

protected Session performCopy(VersionCopySetup setup) throws RepositoryException, IOException {
    final RepositoryConfig sourceConfig = RepositoryConfig.create(source);
    final RepositoryContext sourceContext = RepositoryContext.create(sourceConfig);
    final NodeStore targetNodeStore = SegmentNodeStoreBuilders.builder(new MemoryStore()).build();
    try {
        final RepositoryUpgrade upgrade = new RepositoryUpgrade(sourceContext, targetNodeStore);
        setup.setup(upgrade.versionCopyConfiguration);
        upgrade.setEarlyShutdown(true);
        upgrade.copy(null);
    } finally {
        sourceContext.getRepository().shutdown();
    }
    repository = (RepositoryImpl) new Jcr(new Oak(targetNodeStore)).createRepository();
    Session s = repository.login(AbstractRepositoryUpgradeTest.CREDENTIALS);
    sessions.add(s);
    return s;
}
Also used : RepositoryConfig(org.apache.jackrabbit.core.config.RepositoryConfig) MemoryStore(org.apache.jackrabbit.oak.segment.memory.MemoryStore) RepositoryContext(org.apache.jackrabbit.core.RepositoryContext) NodeStore(org.apache.jackrabbit.oak.spi.state.NodeStore) Jcr(org.apache.jackrabbit.oak.jcr.Jcr) Oak(org.apache.jackrabbit.oak.Oak) Session(javax.jcr.Session)

Aggregations

RepositoryConfig (org.apache.jackrabbit.core.config.RepositoryConfig)23 File (java.io.File)10 RepositoryContext (org.apache.jackrabbit.core.RepositoryContext)7 RepositoryImpl (org.apache.jackrabbit.core.RepositoryImpl)6 RepositoryException (javax.jcr.RepositoryException)5 InputStream (java.io.InputStream)4 Repository (javax.jcr.Repository)4 Session (javax.jcr.Session)4 OutputStream (java.io.OutputStream)3 IOException (java.io.IOException)2 ArrayList (java.util.ArrayList)2 Group (org.apache.jackrabbit.api.security.user.Group)2 User (org.apache.jackrabbit.api.security.user.User)2 RepositoryInitializer (org.apache.jackrabbit.oak.spi.lifecycle.RepositoryInitializer)2 NodeBuilder (org.apache.jackrabbit.oak.spi.state.NodeBuilder)2 Stopwatch (com.google.common.base.Stopwatch)1 FileOutputStream (java.io.FileOutputStream)1 Method (java.lang.reflect.Method)1 Properties (java.util.Properties)1 ZipFile (java.util.zip.ZipFile)1