Package org.exoplatform.portal.mop.navigation

Examples of org.exoplatform.portal.mop.navigation.NavigationContext


            storage_.create(cfg);
        }

        // Create a blank navigation if needed
        SiteKey key = SiteKey.user(userName);
        NavigationContext nav = navService.loadNavigation(key);
        if (nav == null) {
            nav = new NavigationContext(key, new NavigationState(5));
            navService.saveNavigation(nav);
        }
    }
View Full Code Here


    public ImportConfig getConfig() {
        return config;
    }

    public NodeContext<?> perform() {
        NavigationContext navigationCtx = navigationService.loadNavigation(navigationKey);

        //
        if (navigationCtx != null) {
            NodeContext root = navigationService.loadNode(NodeModel.SELF_MODEL, navigationCtx, GenericScope.branchShape(path),
                    null);
View Full Code Here

        if (portalConfig == null)
            throw new Exception("Cannot import navigation because site does not exist for " + siteKey);

        Locale locale = (portalConfig.getLocale() == null) ? Locale.ENGLISH : new Locale(portalConfig.getLocale());

        final NavigationContext navContext = navigationService.loadNavigation(siteKey);
        if (navContext == null) {
            rollbackTask = new RollbackTask() {
                @Override
                public String getDescription() {
                    return "Deleting navigation for site " + siteKey;
View Full Code Here

        //
        SiteKey key = new SiteKey(src.getOwnerType(), src.getOwnerId());

        //
        NavigationContext dst = service.loadNavigation(key);

        //
        switch (mode) {
            case CONSERVE:
                if (dst == null) {
                    dst = new NavigationContext(key, new NavigationState(src.getPriority()));
                    service.saveNavigation(dst);
                } else {
                    dst = null;
                }
                break;
            case INSERT:
                if (dst == null) {
                    dst = new NavigationContext(key, new NavigationState(src.getPriority()));
                    service.saveNavigation(dst);
                }
                break;
            case MERGE:
            case OVERWRITE:
                dst = new NavigationContext(key, new NavigationState(src.getPriority()));
                service.saveNavigation(dst);
                break;
            default:
                throw new AssertionError();
        }

        //
        if (dst != null) {
            ArrayList<NavigationFragment> fragments = src.getFragments();
            if (fragments != null && fragments.size() > 0) {
                for (NavigationFragment fragment : fragments) {
                    String parentURI = fragment.getParentURI();

                    // Find something better than that for building the path
                    List<String> path;
                    if (parentURI != null) {
                        path = new ArrayList<String>();
                        String[] names = Utils.split("/", parentURI);
                        for (String name : names) {
                            if (name.length() > 0) {
                                path.add(name);
                            }
                        }
                    } else {
                        path = Collections.emptyList();
                    }

                    //
                    NavigationFragmentImporter fragmentImporter = new NavigationFragmentImporter(path.toArray(new String[path
                            .size()]), service, dst.getKey(), portalLocale, descriptionService, fragment, mode.config);

                    //
                    fragmentImporter.perform();
                }
            }
View Full Code Here

    protected void execute(OperationContext operationContext, ResultHandler resultHandler, Navigation defaultNavigation) {
        SiteKey siteKey = getSiteKey(defaultNavigation.getSite());
        String navUri = operationContext.getAddress().resolvePathTemplate("nav-uri");

        NavigationService navigationService = operationContext.getRuntimeContext().getRuntimeComponent(NavigationService.class);
        NavigationContext navigation = navigationService.loadNavigation(siteKey);

        Set<String> children = new LinkedHashSet<String>();

        NodeContext<NodeContext<?>> node = NavigationUtils.loadNode(navigationService, navigation, navUri);
        if (node == null) {
View Full Code Here

    private NavigationUtils() {
    }

    public static PageNavigation loadPageNavigation(NavigationKey key, NavigationService navigationService,
            DescriptionService descriptionService) {
        NavigationContext navigation = navigationService.loadNavigation(key.getSiteKey());
        if (navigation == null)
            return null;

        NodeContext<NodeContext<?>> node = loadNode(navigationService, navigation, key.getNavUri());
        if (node == null)
View Full Code Here

     * @throws UserPortalException any user portal exception
     */
    public List<UserNavigation> getNavigations() throws UserPortalException, NavigationServiceException {
        if (navigations == null) {
            List<UserNavigation> navigations = new ArrayList<UserNavigation>(userName == null ? 1 : 10);
            NavigationContext portalNav = service.getNavigationService().loadNavigation(
                    new SiteKey(SiteType.PORTAL, portalName));
            if (portalNav != null && portalNav.getState() != null) {
                navigations.add(new UserNavigation(this, portalNav, service.getUserACL().hasEditPermission(portal)));
            }
            //
            if (userName != null) {
                // Add user nav if any
                NavigationContext userNavigation = service.getNavigationService().loadNavigation(SiteKey.user(userName));
                if (userNavigation != null && userNavigation.getState() != null) {
                    navigations.add(new UserNavigation(this, userNavigation, true));
                }

                // Add group navigations
                if (service.getUserACL().getSuperUser().equals(userName)) {
                    List<NavigationContext> navCtxs = service.getNavigationService().loadNavigations(SiteType.GROUP);
                    for (NavigationContext navCtx : navCtxs) {
                        if (!navCtx.getKey().getName().equals(service.getUserACL().getGuestsGroup())) {
                            navigations.add(new UserNavigation(this, navCtx, true));
                        }
                    }
                } else {
                    Collection<?> groups;
                    try {
                        groups = service.getOrganizationService().getGroupHandler().findGroupsOfUser(userName);
                    } catch (Exception e) {
                        throw new UserPortalException("Could not retrieve groups", e);
                    }

                    //
                    for (Object group : groups) {
                        Group m = (Group) group;
                        String groupId = m.getId().trim();
                        if (!groupId.equals(service.getUserACL().getGuestsGroup())) {
                            NavigationContext groupNavigation = service.getNavigationService().loadNavigation(
                                    SiteKey.group(groupId));
                            if (groupNavigation != null && groupNavigation.getState() != null) {
                                navigations.add(new UserNavigation(this, groupNavigation, service.getUserACL()
                                        .hasEditPermissionOnNavigation(groupNavigation.getKey())));
                            }
                        }
                    }
                }

View Full Code Here

        return null;
    }

    public UserNode getDefaultPath(UserNavigation userNavigation, UserNodeFilterConfig filterConfig)
            throws UserPortalException, NavigationServiceException {
        NavigationContext navigation = userNavigation.navigation;
        if (navigation.getState() != null) {
            UserNodeContext context = new UserNodeContext(userNavigation, null);
            NodeContext<UserNode> nodeContext = service.getNavigationService().loadNode(context, navigation, Scope.CHILDREN,
                    null);
            if (nodeContext != null) {
                UserNode root = nodeContext.getNode();
View Full Code Here

        @Override
        protected void doEdit(UserNavigation navigation, Event<UIGroupNavigationManagement> event) throws Exception {
            UIGroupNavigationManagement uicomp = event.getSource();
            NavigationService service = uicomp.getApplicationComponent(NavigationService.class);

            NavigationContext ctx = service.loadNavigation(navigation.getKey());
            if (ctx != null) {
                service.destroyNavigation(ctx);
            }

            //
View Full Code Here

    @Override
    public Navigation getNavigation(SiteId siteId) {
        Parameters.requireNonNull(siteId, "siteId");

        try {
            NavigationContext ctx = navigationService.loadNavigation(Util.from(siteId));
            if (ctx == null) return null;

            return new NavigationImpl(siteId, navigationService, ctx, descriptionService, bundleManager);
        } catch (Throwable t) {
            throw new ApiException("Failed to load navigation", t);
View Full Code Here

TOP

Related Classes of org.exoplatform.portal.mop.navigation.NavigationContext

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.