Package org.apache.tapestry.internal.structure

Examples of org.apache.tapestry.internal.structure.ComponentPageElement


    {
        Page page = _cache.get(logicalPageName);

        // This is the active page, until we know better.

        ComponentPageElement element = page.getComponentElementByNestedId(nestedComponentId);

        final Holder<ActionResponseGenerator> holder = new Holder<ActionResponseGenerator>();

        ComponentEventHandler handler = new ComponentEventHandler()
        {
            @SuppressWarnings("unchecked")
            public boolean handleResult(Object result, Component component, String methodDescription)
            {
                ActionResponseGenerator generator = _resultProcessor.processComponentEvent(
                        result,
                        component,
                        methodDescription);

                holder.put(generator);

                return true;
            }
        };

        // If activating the page returns a "navigational result", then don't trigger the action
        // on the component.

        page.getRootElement().triggerEvent(
                TapestryConstants.ACTIVATE_EVENT,
                activationContext,
                handler);

        if (holder.hasValue()) return holder.get();

        element.triggerEvent(eventType, context, handler);

        ActionResponseGenerator result = holder.get();

        if (result == null)
        {
View Full Code Here


                return true;
            }
        };

        ComponentPageElement rootElement = page.getRootElement();

        rootElement.triggerEvent(TapestryConstants.PASSIVATE_EVENT, null, handler);

        return toContextStrings(context.toArray());
    }
View Full Code Here

        // This kind of bookkeeping is ugly, we probably should have distinct (if very similar)
        // tokens for attributes and for parameter bindings.

        if (_addAttributesAsComponentBindings)
        {
            ComponentPageElement activeElement = _activeElementStack.peek();

            bindParameterFromTemplate(activeElement, token);
            return;
        }
View Full Code Here

        return _page;
    }

    private void loadRootComponent(String className)
    {
        ComponentPageElement rootComponent = _pageElementFactory.newRootComponentElement(
                _page,
                className);

        _page.setRootElement(rootComponent);
View Full Code Here

        if (isBlank(embeddedType) && isBlank(embeddedComponentClassName))
            throw new TapestryException(ServicesMessages.noTypeForEmbeddedComponent(
                    embeddedId,
                    _loadingComponentModel.getComponentClassName()), token, null);

        ComponentPageElement newComponent = _pageElementFactory.newComponentElement(
                _page,
                _loadingElement,
                embeddedId,
                embeddedType,
                embeddedComponentClassName,
                elementName,
                token.getLocation());

        addMixinsToComponent(newComponent, embeddedModel, token.getMixins());

        Map<String, Binding> bindingMap = newMap();
        _componentIdToBindingMap.put(newComponent.getCompleteId(), bindingMap);

        if (embeddedModel != null)
            bindParametersFromModel(embeddedModel, _loadingElement, newComponent, bindingMap);

        addToBody(newComponent);
View Full Code Here

    /** Works the component queue, until exausted. */
    private void workComponentQueue()
    {
        while (!_componentQueue.isEmpty())
        {
            ComponentPageElement componentElement = _componentQueue.pop();

            loadTemplateForComponent(componentElement);
        }
    }
View Full Code Here

                return true;
            }
        };

        ComponentPageElement rootElement = page.getRootElement();

        rootElement.triggerEvent(TapestryConstants.PASSIVATE_EVENT, null, handler);

        return toContextStrings(context.toArray());
    }
View Full Code Here

    {
        Page page = _cache.get(logicalPageName);

        // This is the active page, until we know better.

        ComponentPageElement element = page.getComponentElementByNestedId(nestedComponentId);

        final Holder<Boolean> holder = Holder.create();

        ComponentEventHandler handler = new ComponentEventHandler()
        {
            @SuppressWarnings("unchecked")
            public boolean handleResult(Object result, Component component, String methodDescription)
            {
                try
                {
                    _resultProcessor.processComponentEvent(result, component, methodDescription);
                }
                catch (IOException ex)
                {
                    throw new RuntimeException(ex);
                }

                holder.put(true);

                return true;
            }
        };

        // If activating the page returns a "navigational result", then don't trigger the action
        // on the component.

        page.getRootElement().triggerEvent(TapestryConstants.ACTIVATE_EVENT, activationContext, handler);

        if (holder.hasValue()) return;

        element.triggerEvent(eventType, context, handler);

        if (holder.hasValue()) return;

        if (!_response.isCommitted())
        {
View Full Code Here

                return true;
            }
        };

        ComponentPageElement rootElement = page.getRootElement();

        rootElement.triggerEvent(TapestryConstants.PASSIVATE_EVENT, null, handler);

        return toContextStrings(context.toArray());
    }
View Full Code Here

        RequestPageCache cache = mockRequestPageCache();
        AjaxPartialResponseRenderer renderer = newMock(AjaxPartialResponseRenderer.class);
        Page page = mockPage();
        ComponentResources resources = mockComponentResources();
        Component component = mockComponent();
        ComponentPageElement element = mockComponentPageElement();


        train_getComponentResources(component, resources);
        train_getPageName(resources, pageName);
        train_get(cache, pageName, page);
View Full Code Here

TOP

Related Classes of org.apache.tapestry.internal.structure.ComponentPageElement

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.