public void switchUser(final String username, final String... roles) { getTransactionManager().endTransaction(); NakedObjectsContext.closeSession(); LogonFixture logonFixture = new LogonFixture(username, roles); AuthenticationRequestLogonFixture authRequest = new AuthenticationRequestLogonFixture(logonFixture); AuthenticationSession session = getAuthenticationManager().authenticate(authRequest); NakedObjectsContext.openSession(session); getTransactionManager().startTransaction(); }
private static NakedObject save(final View view) { final NakedObject transientObject = view.getContent().getNaked(); try { getTransactionManager().startTransaction(); getPersistenceSession().makePersistent(transientObject); getTransactionManager().endTransaction(); } catch (final RuntimeException e) { LOG.info("exception saving " + transientObject + ", aborting transaction", e); try { getTransactionManager().abortTransaction(); } catch (final Exception e2) { LOG.error("failure during abort", e2); } throw e; } return transientObject; }
/** * Will return a {@link PersistenceSessionObjectStore}; subclasses are free to downcast if required. */ protected PersistenceSession createPersistenceSession( final PersistenceSessionFactory persistenceSessionFactory, final AdapterManagerExtended adapterManager, final AdapterFactory adapterFactory, final ObjectFactory objectFactory, final OidGenerator oidGenerator, final ServicesInjector servicesInjector) { final PersistAlgorithm persistAlgorithm = createPersistAlgorithm(getConfiguration()); final ObjectStore objectStore = createObjectStore(getConfiguration(), adapterFactory, adapterManager); ensureThatArg(persistAlgorithm, is(not(nullValue()))); ensureThatArg(objectStore, is(not(nullValue()))); final PersistenceSessionObjectStore persistenceSession = createObjectStorePersistor(persistenceSessionFactory, adapterFactory, objectFactory, servicesInjector, oidGenerator, adapterManager, persistAlgorithm, objectStore); NakedObjectTransactionManager transactionManager = createTransactionManager(persistenceSession, objectStore); ensureThatArg(persistenceSession, is(not(nullValue()))); ensureThatArg(transactionManager, is(not(nullValue()))); persistenceSession.setDirtiableSupport(true); transactionManager.injectInto(persistenceSession); // ... and finally return return persistenceSession; }
public void commit() { getTransactionManager().endTransaction(); }
public static void abort(final NakedObjectTransactionManager transactionManager, final FacetHolder holder) { LOG.info("exception executing " + holder + ", aborting transaction"); try { transactionManager.abortTransaction(); } catch (final Exception e2) { LOG.error("failure during abort", e2); } }
public NakedObject invoke(final NakedObject targetAdapter, final NakedObject[] parameterAdapters) { return getTransactionManager().executeWithinTransaction( new TransactionalClosureWithReturnAbstract<NakedObject>(){ public NakedObject execute() { return underlyingFacet.invoke(targetAdapter, parameterAdapters); }}); }
public void remove(final NakedObject adapter, final NakedObject referencedAdapter) { if (adapter.isTransient()) { // NOT !adapter.isPersistent(); // (value adapters are neither persistent or transient) underlyingFacet.remove(adapter, referencedAdapter); } else { getTransactionManager().executeWithinTransaction( new TransactionalClosureAbstract(){ public void execute() { underlyingFacet.remove(adapter, referencedAdapter); }}); } }
@Override public NakedObject completeTask(final Context context, final Page page) { final NakedObject targetAdapter = getTarget(context); final NakedObject[] parameterAdapters = getEntries(context); getTransactionManager().startTransaction(); field.addElement(targetAdapter, parameterAdapters[0]); if (targetAdapter.isTransient()) { getPersistenceSession().makePersistent(targetAdapter); } getTransactionManager().endTransaction(); return targetAdapter; }
private void installFixtureInTransaction(final Object fixture) { getServicesInjector().injectDependencies(fixture); installFixtures(getFixtures(fixture)); // now, install the fixture itself try { LOG.info("installing fixture: " + fixture); getTransactionManager().startTransaction(); installFixture(fixture); saveLogonFixtureIfRequired(fixture); getTransactionManager().endTransaction(); LOG.info("fixture installed"); } catch (final RuntimeException e) { LOG.error("installing fixture " + fixture.getClass().getName() + " failed; aborting ", e); try { getTransactionManager().abortTransaction(); } catch (final Exception e2) { LOG.error("failure during abort", e2); } throw e; } }
protected PersistenceSession createPersistenceSession( final PersistenceSessionFactory persistenceSessionFactory, final AdapterManagerExtended adapterManager, final AdapterFactory adapterFactory, final ObjectFactory objectFactory, final OidGenerator oidGenerator, final ServicesInjector servicesInjector) { final PersistenceSessionProxy persistenceSession = new PersistenceSessionProxy( persistenceSessionFactory, adapterFactory, objectFactory, servicesInjector, oidGenerator, adapterManager, getServerFacade(), getEncoderDecoder()); NakedObjectTransactionManager transactionManager = createTransactionManager(getConfiguration(), persistenceSession.getAdapterManager(), persistenceSession); ensureThatArg(persistenceSession, is(not(nullValue()))); ensureThatArg(transactionManager, is(not(nullValue()))); transactionManager.injectInto(persistenceSession); // ... and finally return return persistenceSession; }
public void clear(final NakedObject adapter) { if (adapter.isTransient()) { // NOT !adapter.isPersistent(); // (value adapters are neither persistent or transient) underlyingFacet.clear(adapter); } else { getTransactionManager().executeWithinTransaction( new TransactionalClosureAbstract(){ public void execute() { underlyingFacet.clear(adapter); }}); } }
public void execute(final Request request, final Context context, final Page page) { final NakedObject object = context.getMappedObject(request.getObjectId()); getTransactionManager().startTransaction(); getPersistenceSession().makePersistent(object); getTransactionManager().endTransaction(); // return to view request.forward(ForwardRequest.viewObject(request.getObjectId())); }
getTransactionManager().startTransaction(); try { final KnownObjectsRequest knownObjects = new KnownObjectsRequest(); LOG.debug(" end transaction"); getTransactionManager().endTransaction(); } catch (final RuntimeException e) { LOG.info("abort transaction", e); getTransactionManager().abortTransaction(); throw e;
protected PersistenceSession createPersistenceSession( final PersistenceSessionFactory persistenceSessionFactory, final AdapterManagerExtended adapterManager, final AdapterFactory adapterFactory, final ObjectFactory objectFactory, final OidGenerator oidGenerator, final ServicesInjector servicesInjector) { final PersistenceSessionProxy persistenceSession = new PersistenceSessionProxy( persistenceSessionFactory, adapterFactory, objectFactory, servicesInjector, oidGenerator, adapterManager, getServerFacade(), getEncoderDecoder()); NakedObjectTransactionManager transactionManager = createTransactionManager(getConfiguration(), persistenceSession.getAdapterManager(), persistenceSession); ensureThatArg(persistenceSession, is(not(nullValue()))); ensureThatArg(transactionManager, is(not(nullValue()))); transactionManager.injectInto(persistenceSession); // ... and finally return return persistenceSession; }
public void add(final NakedObject adapter, final NakedObject referencedAdapter) { if (adapter.isTransient()) { // NOT !adapter.isPersistent(); // (value adapters are neither persistent or transient) underlyingFacet.add(adapter, referencedAdapter); } else { getTransactionManager().executeWithinTransaction( new TransactionalClosureAbstract(){ public void execute() { underlyingFacet.add(adapter, referencedAdapter); }}); } }
@Override public void execute(final Workspace workspace, final View view, final Location at) { final NakedObject object = ((ObjectContent) view.getContent()).getObject(); getTransactionManager().startTransaction(); getPersistenceSession().destroyObject(object); getTransactionManager().endTransaction(); getUpdateNotifier().addDisposedObject(object); view.getViewManager().disposeUnneededViews(); view.getFeedbackManager().showMessagesAndWarnings(); }
getTransactionManager().startTransaction(); try { final KnownObjectsRequest knownObjects = new KnownObjectsRequest(); LOG.debug(" end transaction"); getTransactionManager().endTransaction(); } catch (final RuntimeException e) { LOG.info("abort transaction", e); getTransactionManager().abortTransaction(); throw e;
public void clearProperty(final NakedObject adapter) { if (adapter.isTransient()) { // NOT !adapter.isPersistent(); // (value adapters are neither persistent or transient) underlyingFacet.clearProperty(adapter); } else { getTransactionManager().executeWithinTransaction( new TransactionalClosureAbstract(){ public void execute() { underlyingFacet.clearProperty(adapter); }}); } }
@Test public void testClearAssociation() { /* * other tests for clear: - clear collection element - fails if unauthorised - fails if unavailable * * could place all these clear test in one class; test other methods in other classes */ NakedObjectsContext.getTransactionManager().startTransaction(); final ObjectData[] updatesData = server.clearAssociation(authenticationSession, "director", movieData, personData); NakedObjectsContext.getTransactionManager().endTransaction(); nameField.assertFieldEmpty(movieAdapter); assertEquals(0, updatesData.length); }
getTransactionManager().startTransaction(); new MethodRoadie(test, testMethod, notifier, description).run(); getTransactionManager().endTransaction(); getTransactionManager().abortTransaction(); return; } catch (final Exception e) {