Example usage for org.apache.wicket Component getPage

List of usage examples for org.apache.wicket Component getPage

Introduction

In this page you can find the example usage for org.apache.wicket Component getPage.

Prototype

@Override
public final Page getPage() 

Source Link

Document

Gets the page holding this component.

Usage

From source file:com.evolveum.midpoint.gui.api.util.WebComponentUtil.java

License:Apache License

public static PageBase getPageBase(Component component) {
    Page page = component.getPage();
    if (page instanceof PageBase) {
        return (PageBase) page;
    } else if (page instanceof PageDialog) {
        return ((PageDialog) page).getPageBase();
    } else {//w ww  . ja v  a2 s.  c  o  m
        throw new IllegalStateException("Couldn't determine page base for " + page);
    }
}

From source file:com.evolveum.midpoint.web.page.admin.server.PageTasks.java

License:Apache License

public static IColumn createTaskNameColumn(final Component component, String label) {
    return new LinkColumn<TaskDto>(createStringResourceStatic(component, label), TaskDto.F_NAME,
            TaskDto.F_NAME) {//from w  w  w.  j ava  2  s  . c o  m

        @Override
        public void onClick(AjaxRequestTarget target, IModel<TaskDto> rowModel) {
            TaskDto task = rowModel.getObject();
            taskDetailsPerformed(target, task.getOid());
        }

        private void taskDetailsPerformed(AjaxRequestTarget target, String oid) {
            PageParameters parameters = new PageParameters();
            parameters.add(OnePageParameterEncoder.PARAMETER, oid);
            component.setResponsePage(new PageTaskEdit(parameters, (PageBase) component.getPage()));
        }

    };
}

From source file:com.evolveum.midpoint.web.page.admin.server.PageTasks.java

License:Apache License

public static IColumn createTaskDetailColumn(final Component component, String label,
        boolean workflowsEnabled) {

    if (workflowsEnabled) {

        return new LinkColumn<TaskDto>(createStringResourceStatic(component, label),
                TaskDto.F_WORKFLOW_LAST_DETAILS) {

            @Override//from w  w w.  j a  va  2s .co  m
            public void onClick(AjaxRequestTarget target, IModel<TaskDto> rowModel) {
                TaskDto task = rowModel.getObject();
                taskDetailsPerformed(target, task);
            }

            // todo display a message if process instance cannot be found
            private void taskDetailsPerformed(AjaxRequestTarget target, TaskDto task) {
                if (task.getWorkflowProcessInstanceId() != null) {
                    PageParameters parameters = new PageParameters();
                    parameters.add(OnePageParameterEncoder.PARAMETER, task.getWorkflowProcessInstanceId());
                    parameters.add(PageProcessInstance.PARAM_PROCESS_INSTANCE_FINISHED,
                            task.isWorkflowProcessInstanceFinished());
                    component.setResponsePage(
                            new PageProcessInstance(parameters, (PageBase) component.getPage()));
                }
            }

        };
    } else {
        return new PropertyColumn(createStringResourceStatic(component, label),
                TaskDto.F_WORKFLOW_LAST_DETAILS);
    }
}

From source file:com.fortuityframework.wicket.WicketEventListenerLocator.java

License:Apache License

/**
 * Called by the FortuityComponentInstantiationListener when a new component
 * has been created. Scans the component's class structure and adds handlers
 * for any event response method in the component
 * /*from  w ww. j av  a2  s.  c  o m*/
 * @param component
 *            The component that was added
 */
synchronized void onComponentAdded(Component component) {
    Class<?> componentClass = component.getClass();

    for (Method m : componentClass.getMethods()) {
        OnFortuityEvent metadata = m.getAnnotation(OnFortuityEvent.class);
        if (metadata != null) {
            if (m.getParameterTypes().length == 1 && m.getParameterTypes()[0] == EventContext.class) {
                Class<? extends Event<?>>[] events = getEvents(metadata);
                for (Class<? extends Event<?>> event : events) {
                    if (!listeners.containsKey(event)) {
                        listeners.put(event, new HashSet<ComponentEventListener>());
                    }

                    listeners.get(event).add(new ComponentEventListener(component, m));
                }
            } else {
                log.error("Fortuity event listener has incorrect parameter sequence for method "
                        + m.toGenericString() + " on component " + component.getPath() + " of page "
                        + component.getPage().toString());
            }
        }
    }
}

From source file:com.github.javawithmarcus.wicket.cdi.ConversationExpiryChecker.java

License:Apache License

@Override
public void onBeforeRender(Component component) {
    if (component instanceof Page || RequestCycle.get().find(AjaxRequestTarget.class) != null) {
        Page page = component.getPage();
        String cid = container.getConversationMarker(page);
        if (cid != null && !Objects.isEqual(container.getCurrentConversation().getId(), cid)) {
            logger.info("Conversation {} has expired for {}", cid, page);
            throw new ConversationExpiredException(null, cid, page,
                    RequestCycle.get().getActiveRequestHandler());
        }//  ww w . j a v  a2 s . c  o m
    }
}

From source file:com.wiquery.plugins.jqgrid.component.XMLDataRequestTarget.java

License:Apache License

/**
 * //from w w w . ja  v  a 2  s  .c  om
 * @param response
 * @param component
 */
private void respondHeaderContribution(final Response response, final Component component,
        StringBuffer writer) {
    headerRendering = true;

    // create the htmlheadercontainer if needed
    if (header == null) {
        header = new AjaxHtmlHeaderContainer(HtmlHeaderSectionHandler.HEADER_ID, this);
        final Page page = component.getPage();
        page.addOrReplace(header);
    }

    // save old response, set new
    Response oldResponse = RequestCycle.get().setResponse(encodingHeaderResponse);

    encodingHeaderResponse.reset();

    // render the head of component and all it's children

    component.renderHead(header);

    if (component instanceof MarkupContainer) {
        ((MarkupContainer) component).visitChildren(new Component.IVisitor<Component>() {
            public Object component(Component component) {
                if (component.isVisibleInHierarchy()) {
                    component.renderHead(header);
                    return CONTINUE_TRAVERSAL;
                } else {
                    return CONTINUE_TRAVERSAL_BUT_DONT_GO_DEEPER;
                }
            }
        });
    }

    // revert to old response

    RequestCycle.get().setResponse(oldResponse);

    if (encodingHeaderResponse.getContents().length() != 0) {
        writer.append("<header-contribution");

        if (encodingHeaderResponse.isContentsEncoded()) {
            writer.append(" encoding=\"");
            writer.append(getEncodingName());
            writer.append("\" ");
        }

        // we need to write response as CDATA and parse it on client,
        // because
        // konqueror crashes when there is a <script> element
        writer.append("><![CDATA[<head xmlns:wicket=\"http://wicket.apache.org\">");

        writer.append(encodingHeaderResponse.getContents());

        writer.append("</head>]]>");

        writer.append("</header-contribution>");
    }

    headerRendering = false;
}

From source file:name.martingeisse.admin.navigation.NavigationUtil.java

License:Open Source License

/**
 * Returns the current navigation node for the specified component.
 * @param component the component/*from www.j ava  2 s. c o m*/
 * @return the navigation node
 */
public static NavigationNode getNavigationNodeForComponent(final Component component) {
    return getNavigationNodeForPage(component.getPage());
}

From source file:name.martingeisse.wicket.component.contextmenu.FileUploadMenuItem.java

License:Open Source License

@Override
protected void onConfigure(Component component) {
    super.onConfigure(component);
    if (!behaviorAddedToPage) {
        Page page = component.getPage();
        page.add(behavior);//w  w w.ja  va2s.  c  om
        behaviorAddedToPage = true;
    }
}

From source file:net.rrm.ehour.ui.common.event.EventPublisher.java

License:Open Source License

private static void recursivePublishAjaxEvent(Component container, AjaxEvent event) {
    boolean proceed = true;

    if (container instanceof AjaxEventListener) {
        proceed = ((AjaxEventListener) container).ajaxEventReceived(event);
    }/*w w  w  . ja  va2 s  . c om*/

    if (proceed && !(container instanceof Page)) {
        MarkupContainer parent = container.getParent();

        if (parent == null) {
            parent = container.getPage();
        }

        recursivePublishAjaxEvent(parent, event);
    }
}

From source file:org.apache.isis.viewer.wicket.model.models.WicketComponentUtils.java

License:Apache License

/**
 * Locates a component implementing the required class on the same page as the supplied component.
 *//* w  w  w.  j ava2  s .  co m*/
public static <T> T getFrom(Component component, final Class<T> cls) {
    return getFrom(component.getPage(), cls);
}