public static CDOView openView(Map<String, Object> jobContext) { RepositoryConnector connector = getRepositoryConnector(jobContext); return connector.openView(); }
public static CDOSession openSession(Map<String, Object> jobContext) { RepositoryConnector connector = getRepositoryConnector(jobContext); return connector.createSession(); }
public static CDOTransaction openTransaction(Map<String, Object> jobContext) { RepositoryConnector connector = getRepositoryConnector(jobContext); return connector.openTransaction(); }
private void hookListener(final RepositoryConnector repositoryConnector) { CDONet4jSession session = repositoryConnector.createSession(); session.options().setPassiveUpdateMode(PassiveUpdateMode.ADDITIONS); CDOView view = repositoryConnector.openView(session); view.options().addChangeSubscriptionPolicy(CDOAdapterPolicy.ALL); CDOResource resource = view.getResource(ServerConstants.WORKSPACE_RESOURCE); workspace = (Workspace) resource.getContents().get(0); cache = CacheBuilder.newBuilder().expireAfterAccess(10, TimeUnit.MINUTES).concurrencyLevel(5).maximumWeight(50000).weigher(new PropertySizeWeigher()).build(new PropertyFileCacheLoader(repositoryConnector.openView(session))); //this is very expensive, so don't do it during the bind phase new Thread(new Runnable() { @Override public void run() { long time = System.currentTimeMillis(); workspace.eAdapters().add(new ListeningAdapter()); LOGGER.info("Installed EContentAdapter in {} seconds",(System.currentTimeMillis()-time)/1000); } },"Install Persistence Listener").start(); }
/** * The usual stop implementation ... BUT including some CDO cleanup. */ public void stop(BundleContext context) throws Exception { Activator.plugin = null; Activator.context = null; connector.close(); connector = null; }
writer = IndexActivator.getDefault().obtainIndexWriter(); writer.deleteAll(); session = connector.createSession(); CDOView view = connector.openView(session); CDOResource resource = view.getResource(ServerConstants.WORKSPACE_RESOURCE); Workspace workspace = (Workspace) resource.getContents().get(0);
private UserManagement getUserManagement() { if(userManagement==null) { Object resolved = getRepositoryConnector().openView().getResource(ServerConstants.USERS_RESOURCE).getContents().get(0); if (resolved instanceof UserManagement) { userManagement = (UserManagement) resolved; } else { logger.error("Failed to obtain UserManagement"); } } return userManagement; }
@Override public IStatus run(IProgressMonitor monitor) { CDOTransaction transaction = Activator.getDefault().getRepositoryConnector().openTransaction(); try { SubMonitor subMonitor = SubMonitor.convert(monitor,100); ProjectVersion version = model.getObject(); version = transaction.getObject(version); TeamProvider provider = TeamProviderUtil.getTeamProvider(version.getParent().getTeamProvider()); provider.checkout(version, subMonitor.newChild(75)); rescanProject(subMonitor.newChild(25), model); } catch (TeamProviderException e) { logger.error("Checkout failed",e); return new Status(IStatus.ERROR, Activator.BUNDLE_ID, "Checkout failed",e); } catch (CommitException e) { return new Status(IStatus.ERROR, Activator.BUNDLE_ID, "Transaction commit failed",e); } finally{ try { transaction.commit(); } catch (CommitException e) { logger.error("Failed to commit the transaction",e); return new Status(IStatus.ERROR, Activator.BUNDLE_ID, "Failed to commit the transaction",e); } transaction.close(); } return Status.OK_STATUS; } };
@Activate protected void startup(final ComponentContext context) { try { webContext = getWebContext(context.getProperties()); view = getRepositoryConnector().openView(); CDOResource resource = view.getResource(ServerConstants.WORKSPACE_RESOURCE); logger.info("Starting up Jabylon REST API servlet at " + webContext); ApiServlet servlet = new ApiServlet((Workspace)resource.getContents().get(0), authService, persistenceService); httpService.registerServlet(webContext, servlet, null, null); } catch (ServletException e) { logger.error("Failed to register Jabylon REST API servlet", e); } catch (NamespaceException e) { logger.error("Failed to register Jabylon REST API servlet", e); } }
@Override public IStatus run(IProgressMonitor monitor) { ProjectVersion version = model.getObject(); TeamProvider provider = TeamProviderUtil.getTeamProvider(version.getParent() .getTeamProvider()); CDOTransaction transaction = Activator.getDefault() .getRepositoryConnector() .openTransaction(); try { version = transaction.getObject(version); SubMonitor subMonitor = SubMonitor.convert(monitor, "Committing", 100); provider.commit(version, subMonitor.newChild(100)); } catch (TeamProviderException e) { logger.error("Commit failed", e); return new Status(IStatus.ERROR, Activator.BUNDLE_ID, "Commit Failed", e); } finally { transaction.close(); } return Status.OK_STATUS; } };
private boolean checkLogin(String userName, String pw) { if (JabylonSecurityBundle.getRepositoryConnector() == null) return false; CDOView view = JabylonSecurityBundle.getRepositoryConnector().openView(); try { boolean valid = false;
ProjectVersion version = model.getObject(); TeamProvider provider = TeamProviderUtil.getTeamProvider(version.getParent().getTeamProvider()); CDOTransaction transaction = Activator.getDefault().getRepositoryConnector().openTransaction(); try { version = transaction.getObject(version);
ProjectVersion version = model.getObject(); TeamProvider provider = TeamProviderUtil.getTeamProvider(version.getParent().getTeamProvider()); CDOTransaction transaction = Activator.getDefault().getRepositoryConnector().openTransaction(); try { version = transaction.getObject(version);
private void rescanProject(IProgressMonitor monitor, final IModel<ProjectVersion> model) throws CommitException { ScanConfiguration scanConfiguration = PreferencesUtil.getScanConfigForProject(getModelObject()); ProjectVersion version = model.getObject(); SubMonitor subMonitor = SubMonitor.convert(monitor, "Scanning", 100); CDOTransaction transaction = Activator.getDefault().getRepositoryConnector().openTransaction(); version = transaction.getObject(version); version.fullScan(scanConfiguration, subMonitor.newChild(50)); subMonitor.setTaskName("Database Sync"); try { transaction.commit(subMonitor.newChild(50)); } finally { transaction.close(); PropertyPersistenceService persistenceService = Activator.getDefault().getPersistenceService(); if(persistenceService!=null) persistenceService.clearCache(); else logger.error("Could not obtain property persistence service"); } monitor.done(); }
@Override protected void onAfterSubmit(AjaxRequestTarget target, Form<?> form) { Project project = model.getObject(); CDOTransaction transaction = Activator.getDefault().getRepositoryConnector().openTransaction(); project = transaction.getObject(project); Preferences preferences = PreferencesUtil.scopeFor(project); try { PreferencesUtil.deleteNode(preferences); File directory = new File(project.absolutPath().toFileString()); FileUtil.delete(directory); project.getParent().getChildren().remove(project); transaction.commit(); setResponsePage(SettingsPage.class, getPage().getPageParameters()); } catch (CommitException e) { logger.error("Commit failed",e); getSession().error(e.getMessage()); } catch (BackingStoreException e) { logger.error("Failed to delete project preferences",e); getSession().error(e.getMessage()); } finally { transaction.close(); } }
@Override protected void onAfterSubmit(AjaxRequestTarget target, Form<?> form) { ProjectVersion projectVersion = model.getObject(); CDOTransaction transaction = Activator.getDefault().getRepositoryConnector().openTransaction(); projectVersion = transaction.getObject(projectVersion); Preferences preferences = PreferencesUtil.scopeFor(projectVersion); try { PreferencesUtil.deleteNode(preferences); File directory = new File(projectVersion.absolutPath().toFileString()); FileUtil.delete(directory); projectVersion.getParent().getChildren().remove(projectVersion); transaction.commit(); setResponsePage(SettingsPage.class, getPage().getPageParameters()); } catch (CommitException e) { logger.error("Commit failed",e); getSession().error(e.getMessage()); } catch (BackingStoreException e) { logger.error("Failed to delete project preferences",e); getSession().error(e.getMessage()); } finally { transaction.close(); } }