Examples of HibernateTxFragment


Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

    /**
     * Removes a workspace from the system
     */
    public void delete(final WorkspaceImpl workspace) throws Exception {

        HibernateTxFragment txFragment = new HibernateTxFragment() {
            protected void txFragment(Session session) throws Exception {

                //Delete own resources
                GraphicElementManager[] managers = UIServices.lookup().getGraphicElementManagers();
                for (int i = 0; i < managers.length; i++) {
                    GraphicElementManager manager = managers[i];
                    GraphicElement[] elements = manager.getElements(workspace.getId());
                    for (int j = 0; j < elements.length; j++) {
                        GraphicElement element = elements[j];
                        manager.delete(element);
                    }
                }

                // Remove attached workspace permissions.
                Policy policy = SecurityServices.lookup().getSecurityPolicy();
                policy.removePermissions(workspace);

                // Notify instances removal before deleting workspace.
                Iterator instanceIt = workspace.getPanelInstancesSet().iterator();
                while (instanceIt.hasNext()) {
                    PanelInstance instance = (PanelInstance) instanceIt.next();
                    instance.instanceRemoved(session);
                }

                // Notify panels before deleting workspace.
                Iterator sectionIt = workspace.getSections().iterator();
                while (sectionIt.hasNext()) {
                    Section section = (Section) sectionIt.next();
                    Panel[] panels = section.getAllPanels();
                    for (int i = 0; i < panels.length; i++) {
                        Panel panel = panels[i];
                        panel.getProvider().getDriver().fireBeforePanelRemoved(panel);
                        panel.panelRemoved();
                    }
                }

                policy.save();

                // Delete workspace.
                session.delete(workspace);
                session.flush();

                // Notify workspace removal
                fireWorkspaceRemoved(workspace);
            }
        };

        txFragment.execute();
    }
View Full Code Here

Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

    }

    public Workspace getWorkspace(final String id) throws Exception {
        final WorkspaceImpl[] workspace = new WorkspaceImpl[]{null};

        HibernateTxFragment txFragment = new HibernateTxFragment() {
            protected void txFragment(Session session) throws Exception {
                workspace[0] = (WorkspaceImpl) session.get(WorkspaceImpl.class, id);
            }
        };

        txFragment.execute();
        return workspace[0];
    }
View Full Code Here

Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

     * Return all workspaces
     */
    public WorkspaceImpl[] getWorkspaces() {
        final List workspaces = new ArrayList();

        HibernateTxFragment txFragment = new HibernateTxFragment() {
            protected void txFragment(Session session) throws Exception {
                FlushMode oldFlushMode = session.getFlushMode();
                session.setFlushMode(FlushMode.NEVER);
                Query q = session.createQuery(" from " + WorkspaceImpl.class.getName());
                q.setCacheable(true);
                workspaces.addAll(q.list());
                session.setFlushMode(oldFlushMode);
            }
        };

        try {
            txFragment.execute();
        } catch (Exception e) {
            log.error("Error:", e);
        }
        return (WorkspaceImpl[]) workspaces.toArray(new WorkspaceImpl[workspaces.size()]);
    }
View Full Code Here

Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

        }
        return (WorkspaceImpl[]) workspaces.toArray(new WorkspaceImpl[workspaces.size()]);
    }

    public synchronized void store(final Workspace workspace) throws Exception {
        HibernateTxFragment txFragment = new HibernateTxFragment() {
            protected void txFragment(Session session) throws Exception {
                boolean isNew = workspace.getId() == null || !getAllWorkspacesIdentifiers().contains(workspace.getId());
                if (isNew) {
                    session.save(workspace);
                } else {
                    synchronized (("workspace_" + workspace.getId()).intern()) {
                        session.update(workspace);
                        fireWorkspaceUpdated(workspace);
                    }
                }
                session.flush();
            }
        };
        txFragment.execute();
    }
View Full Code Here

Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

        return userWorkspacesIds;
    }

    public Workspace getWorkspaceByUrl(final String url) throws Exception {
        final Workspace[] workspace = new Workspace[1];
        new HibernateTxFragment() {
            protected void txFragment(Session session) throws Exception {
                FlushMode oldFlushMode = session.getFlushMode();
                session.setFlushMode(FlushMode.NEVER);
                Query q = session.createQuery(" from " + WorkspaceImpl.class.getName() + " p where p.friendlyUrl = :url");
                q.setString("url", url);
View Full Code Here

Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

    }

    public CreateResult create(final XMLNode node, final Map attributes, final boolean onStartup) {
        final CreateResult result = new CreateResult();

        HibernateTxFragment txFragment = new HibernateTxFragment() {
            protected void txFragment(Session session) throws Exception {
                if (ExportVisitor.WORKSPACE.equals(node.getObjectName())) {
                    createWorkspace(result, node, attributes, onStartup);
                } else if (ExportVisitor.RESOURCE.equals(node.getObjectName())) {
                    createResource(result, null, null, null, node, attributes, onStartup);
                } else {
                    throw new IllegalArgumentException("Invalid workspace node.");
                }
            }
        };
        try {
            txFragment.execute();
        } catch (Exception e) {
            log.error("Error:", e);
            return new CreateResult(e);
        }
        return result;
View Full Code Here

Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

    public Section doGetCurrentSection() {
        try {
            if (getCurrentSectionId() == null) return null;
            final Section[] sectionToReturn = new Section[] {null};
            new HibernateTxFragment() {
            protected void txFragment(Session session) throws Exception {
                sectionToReturn[0] = (Section) session.get(Section.class, getCurrentSectionId());
            }}.execute();
            return sectionToReturn[0];
        } catch (Exception e) {
View Full Code Here

Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

    }

    protected boolean setParameters(final CommandRequest request, final PanelProviderParameter[] params, final PanelInstance instance, final boolean specificParameters) throws Exception {
        final boolean anyParamWritten[] = new boolean[]{false};

        new HibernateTxFragment(){
            @Override
            protected void txFragment(Session session) throws Throwable {
                super.txFragment(session);
                String language = LocaleManager.lookup().getCurrentLang();
View Full Code Here

Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

    /**
     * Removes a panel instance
     */
    public void delete(final PanelInstance instance) throws Exception {

        HibernateTxFragment txFragment = new HibernateTxFragment() {
            protected void txFragment(Session session) throws Exception {
                session.delete(instance);
            }
        };

        txFragment.execute();
    }
View Full Code Here

Examples of org.jboss.dashboard.database.hibernate.HibernateTxFragment

    }


    public void delete(final Panel panel) throws Exception {

        HibernateTxFragment txFragment = new HibernateTxFragment() {
            protected void txFragment(Session session) throws Exception {
                session.delete(panel);
            }
        };

        txFragment.execute();
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.