/** * Destroys the physical connection to the underlying resource manager. * * @throws ResourceException generic exception if operation fails */ @Override public void destroy() throws ResourceException { LOGGER.debug("Shutting down connection to repo '{0}'", mcf.getRepositoryURL()); this.session.logout(); this.handles.clear(); }
/** * Application server calls this method to force any cleanup on the ManagedConnection instance. * * @throws ResourceException generic exception if operation fails */ @Override public void cleanup() throws ResourceException { this.session.logout(); this.session = openSession(); this.transactions = session.getRepository().transactions(); this.handles.clear(); }
@After public void afterEach() throws Exception { // log out of the session after each test ... try { session.logout(); } finally { session = null; } }
@Test public void shouldAllowLogout() throws Exception { session.logout(); }
@Override public void run() { if (session == null) return; if (print) System.out.println("Start " + desc); try { execute(session); completionBarrier.await(); } catch (Exception e) { throw new RuntimeException(e); } finally { session.logout(); if (print) System.out.println("Stop " + desc); } }
protected void stopRepository() throws Exception { try { try { if (session != null && session.isLive()) session.logout(); } finally { TestingUtil.killRepositories(repository); } } finally { repository = null; } }
@After public void after() throws Exception { if (session != null && session.isLive()) { session.logout(); } }
@After public void afterEach() throws Exception { if (session != null) { try { session.logout(); } finally { session = null; } } shutdownDefaultRepository(); }
@Test public void shouldIndicateNotLiveAfterLogout() throws Exception { session.logout(); assertThat(session.isLive(), is(false)); }
@Test @FixFor( "MODE-2049" ) public void shouldStartAndStopRepositoryWithoutMonitoringConfigured() throws Exception { startRunStop(repository -> repository.login().logout(), "config/repo-config-inmemory-local-environment-no-monitoring.json"); }
@Test public void shouldProvideUserId() throws Exception { assertThat(session.getUserID(), notNullValue()); try { assertThat(session.getUserID(), is("<anonymous>")); } finally { session.logout(); } }
@Test @FixFor( "MODE-2511" ) public void shouldAllowReorderNodesWhenSameNameIsDisabled() throws Exception { try { session.getWorkspace().getNodeTypeManager().registerNodeTypes(resourceStream("cnd/magnolia.cnd"), true); // add 2 nodes under a parent that doesn't allow SNS and reorder them final Node root = session.getRootNode(); final Node parent = root.addNode("parent", "mgnl:content"); parent.addNode("name1", "nt:folder"); parent.addNode("name2", "nt:folder"); parent.orderBefore("name2", "name1"); session.save(); } finally { session.logout(); } }
private void makeBackup(BackupOptions options) throws RepositoryException { TestingUtil.waitUntilFolderCleanedUp(backupDirectory.getPath()); JcrSession session = repository().login(); try { Problems problems = session.getWorkspace().getRepositoryManager().backupRepository(backupDirectory, options); assertNoProblems(problems); } finally { session.logout(); } }
private static void initNodesCount() throws RepositoryException { JcrSession session = repository.login(); try { NodeCache systemSession = repository.createSystemSession(session.context(), true); totalSystemNodeCount = countAllNodesBelow(systemSession.getRootKey(), systemSession) - 1; // not root totalNodeCount = totalSystemNodeCount + TOTAL_NON_SYSTEM_NODE_COUNT; } finally { session.logout(); } }
private void queryContentInWorkspace( JcrRepository newRepository, String workspaceName ) throws RepositoryException { JcrSession session = newRepository.login(); try { String statement = "SELECT [car:model], [car:year], [car:msrp] FROM [car:Car] AS car"; Query query = session.getWorkspace().getQueryManager().createQuery(statement, Query.JCR_SQL2); QueryResult results = query.execute(); assertThat(results.getRows().getSize(), is(13L)); } finally { session.logout(); } }
private void assertContentInWorkspace( String workspaceName, String nodePath, String nodeType, List<String> nodeMixins, String... properties ) throws Exception { JcrSession session = repository.login(workspaceName); try { AbstractJcrNode node = session.getNode(nodePath); assertNodeType(nodeType, node); assertMixins(nodeMixins, node); assertProperties(node, properties); } finally { session.logout(); } }
private void restoreBackup() throws Exception { startRepositoryWithConfiguration(resourceStream("config/backup-repo-config.json")); JcrSession session = repository().login(); Problems problems = session.getWorkspace().getRepositoryManager().restoreRepository(backupDirectory); assertNoProblems(problems); session.logout(); }
private void addNodeAndAssertIndexUsed(JcrRepository repository) throws RepositoryException, InterruptedException { JcrSession session = repository.login(); session.getRootNode().addNode("testRoot"); session.save(); Thread.sleep(100); String sql = "select [jcr:path] from [nt:unstructured] where [jcr:name] = 'testRoot'"; Query query = session.getWorkspace().getQueryManager().createQuery(sql, Query.JCR_SQL2); ValidateQuery.validateQuery().rowCount(1).useIndex("nodesByName").validate(query, query.execute()); session.logout(); }
@FixFor( "MODE-2292" ) @Test public void shouldUseIndexesAfterRestarting() throws Exception { // clean the indexes TestingUtil.waitUntilFolderCleanedUp("target/startup_test_indexes"); startRunStop(this::addNodeAndAssertIndexUsed, "config/repo-config-persistent-local-indexes.json"); startRunStop(repository -> { JcrSession session = repository.login(); String sql = "select [jcr:path] from [nt:unstructured] where [jcr:name] = 'testRoot'"; Query query = session.getWorkspace().getQueryManager().createQuery(sql, Query.JCR_SQL2); ValidateQuery.validateQuery().rowCount(1).useIndex("nodesByName").validate(query, query.execute()); session.logout(); }, "config/repo-config-persistent-local-indexes.json"); }
@Test @FixFor("MODE-2644") public void shouldUseDynamicallyRegisteredIndexes() throws Exception { // clean the indexes TestingUtil.waitUntilFolderCleanedUp("target/startup_test_indexes"); startRunStop(this::registerIndexDefinitionAndCheckUsage, "config/repo-config-persistent-local-indexes.json"); startRunStop(repository -> { JcrSession session = repository.login(); String sql = "select [jcr:path] from [nt:unstructured] where testProp = 'test'"; Query query = session.getWorkspace().getQueryManager().createQuery(sql, Query.JCR_SQL2); ValidateQuery.validateQuery().rowCount(1).useIndex("testProp").validate(query, query.execute()); session.logout(); }, "config/repo-config-persistent-local-indexes.json"); }