Package org.jdesktop.wonderland.modules.security.common

Examples of org.jdesktop.wonderland.modules.security.common.CellPermissions


    /**
     * Get all permissions for all users.
     * @return the permissions for all users
     */
    protected CellPermissions getCellPermissions() {
        CellPermissions out = new CellPermissions();

        // add the owners
        if (isOwned()) {
            out.getOwners().addAll(owners);
        }

        // combine all permissions for all users
        if (permissions != null) {
            out.getPermissions().addAll(permissions);
        }

        // add all the actions
        CellResourceManagerInternal crmi =
                AppContext.getManager(CellResourceManagerInternal.class);
        for (Action a : crmi.getActions(cellID)) {
            out.getAllActions().add(new ActionDTO(a));
        }

        logger.fine("[SecurityComponentMO] writing " +
                    out.getPermissions().size() + " permissions.");

        return out;
    }
View Full Code Here


    public <T extends CellComponentServerState> T
            getDefaultCellComponentServerState() {
        SecurityComponentServerState state = new SecurityComponentServerState();

        CellPermissions perms = new CellPermissions();

        // add the current user as an owner
        ServerSessionManager primarySM = LoginManager.getPrimary();
        if (primarySM != null) {
            WonderlandSession primarySession = primarySM.getPrimarySession();
            if (primarySession != null) {
                Principal owner = new Principal(
                        primarySession.getUserID().getUsername(),
                        Principal.Type.USER);
                perms.getOwners().add(owner);
            }
        }

        // add view permissions for all users
        Principal p = new Principal("users", Principal.Type.EVERYBODY);
        ActionDTO view = new ActionDTO(new ViewAction());
        perms.getPermissions().add(new Permission(
                p, view, Permission.Access.GRANT));
        ActionDTO modify = new ActionDTO(new ModifyAction());
        perms.getPermissions().add(new Permission(
                p, modify, Permission.Access.DENY));

        state.setPermissions(perms);
        return (T) state;
    }
View Full Code Here

        if (state == null) {
            state = new SecurityComponentServerState();
        }

        // Update the permissions state and add to the update list
        CellPermissions out = perms.toPermissions();
        state.setPermissions(out);
        editor.addToUpdateList(state);
    }
View Full Code Here

            perms.set(index, ps);
            fireTableCellUpdated(index, 3);
        }

        public CellPermissions toPermissions() {
            CellPermissions out = new CellPermissions();

            for (int i = 0; i < principals.size(); i++) {
                Principal p = principals.get(i);
                if (owner.get(i)) {
                    out.getOwners().add(p);
                } else {
                    out.getPermissions().addAll(perms.get(i));
                }
            }

            return out;
        }
View Full Code Here

    }

    class TableDirtyListener implements TableModelListener {

        public void tableChanged(TableModelEvent tme) {
            CellPermissions currentCellPermissions = perms.toPermissions();

            // compare the owners array
            boolean equal = currentCellPermissions.getOwners().equals(
                    originalCellPermissions.getOwners());

            // compare the size of the permissions sets
            Set<Permission> currentPermissions =
                    currentCellPermissions.getPermissions();
            Set<Permission> originalPermissions =
                    originalCellPermissions.getPermissions();
            equal &= currentPermissions.size() == originalPermissions.size();

            // compare each permission -- these have to be compared manually,
View Full Code Here

TOP

Related Classes of org.jdesktop.wonderland.modules.security.common.CellPermissions

Copyright © 2018 www.massapicom. 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.