use of org.apache.wicket.markup.head.IHeaderResponse in project wicket by apache.
the class DecoratingHeaderResponseTest method decoratedStringPrepend.
/**
* Basic IHeaderResponseDecorator, just prepending the DECORATED string to resource name.
*
* @throws IOException
* @throws ResourceStreamNotFoundException
* @throws ParseException
*/
@Test
public void decoratedStringPrepend() throws IOException, ResourceStreamNotFoundException, ParseException {
tester.getApplication().setHeaderResponseDecorator(new IHeaderResponseDecorator() {
@Override
public IHeaderResponse decorate(IHeaderResponse response) {
return new ResourceAggregator(new DecoratingHeaderResponse(response) {
@Override
public void render(HeaderItem item) {
if (item instanceof JavaScriptReferenceHeaderItem) {
JavaScriptReferenceHeaderItem original = (JavaScriptReferenceHeaderItem) item;
item = JavaScriptHeaderItem.forReference(new PackageResourceReference("DECORATED-" + original.getReference().getName()), original.getId());
}
super.render(item);
}
});
}
});
tester.startPage(TestPage.class);
XmlPullParser parser = new XmlPullParser();
parser.parse(tester.getLastResponseAsString());
XmlTag tag = parser.nextTag();
boolean isDecorated = false;
do {
if (tag.isOpen() && "script".equals(tag.getName())) {
isDecorated = tag.getAttribute("src").toString().contains("DECORATED");
if (!isDecorated) {
fail();
}
break;
}
} while ((tag = parser.nextTag()) != null);
assertTrue(isDecorated);
}
use of org.apache.wicket.markup.head.IHeaderResponse in project openmeetings by apache.
the class MainPanel method onInitialize.
@Override
protected void onInitialize() {
menu = new MenuPanel("menu", getMainMenu());
add(topControls.setOutputMarkupPlaceholderTag(true).setMarkupId("topControls"));
add(contents.add(getClient() == null || panel == null ? EMPTY : panel).setOutputMarkupId(true).setMarkupId("contents"));
topControls.add(menu.setVisible(false), topLinks.setVisible(false).setOutputMarkupPlaceholderTag(true).setMarkupId("topLinks"));
topLinks.add(new AjaxLink<Void>("messages") {
private static final long serialVersionUID = 1L;
@Override
public void onClick(AjaxRequestTarget target) {
updateContents(PROFILE_MESSAGES, target);
}
});
topLinks.add(new AjaxLink<Void>("profile") {
private static final long serialVersionUID = 1L;
@Override
public void onClick(AjaxRequestTarget target) {
updateContents(PROFILE_EDIT, target);
}
});
final AboutDialog about = new AboutDialog("aboutDialog");
topLinks.add(new AjaxLink<Void>("about") {
private static final long serialVersionUID = 1L;
@Override
public void onClick(AjaxRequestTarget target) {
about.open(target);
}
});
if (getApplication().getDebugSettings().isDevelopmentUtilitiesEnabled()) {
add(new DebugBar("dev").setOutputMarkupId(true));
} else {
add(new EmptyPanel("dev").setVisible(false));
}
add(new OmAjaxClientInfoBehavior());
add(about, chat = new ChatPanel("chatPanel"));
add(newMessage = new MessageDialog("newMessageDialog", new CompoundPropertyModel<>(new PrivateMessage())) {
private static final long serialVersionUID = 1L;
@Override
public void onClose(IPartialPageRequestHandler handler, DialogButton button) {
BasePanel bp = getCurrentPanel();
if (send.equals(button) && bp != null) {
bp.onNewMessageClose(handler);
}
}
});
add(userInfo = new UserInfoDialog("userInfoDialog", newMessage));
add(new AbstractDefaultAjaxBehavior() {
private static final long serialVersionUID = 1L;
@Override
protected void respond(AjaxRequestTarget target) {
userInfo.open(target, getParam(getComponent(), PARAM_USER_ID).toLong());
}
@Override
public void renderHead(Component component, IHeaderResponse response) {
super.renderHead(component, response);
response.render(new PriorityHeaderItem(getNamedFunction("showUserInfo", this, explicit(PARAM_USER_ID))));
}
});
add(new AbstractDefaultAjaxBehavior() {
private static final long serialVersionUID = 1L;
@Override
protected void respond(AjaxRequestTarget target) {
ContactsHelper.addUserToContactList(getParam(getComponent(), PARAM_USER_ID).toLong());
}
@Override
public void renderHead(Component component, IHeaderResponse response) {
super.renderHead(component, response);
response.render(new PriorityHeaderItem(getNamedFunction("addContact", this, explicit(PARAM_USER_ID))));
}
});
add(new AbstractDefaultAjaxBehavior() {
private static final long serialVersionUID = 1L;
@Override
protected void respond(AjaxRequestTarget target) {
newMessage.reset(true).open(target, getParam(getComponent(), PARAM_USER_ID).toOptionalLong());
}
@Override
public void renderHead(Component component, IHeaderResponse response) {
super.renderHead(component, response);
response.render(new PriorityHeaderItem(getNamedFunction("privateMessage", this, explicit(PARAM_USER_ID))));
}
});
add(inviteUser = new InviteUserToRoomDialog("invite-to-room"));
add(new AbstractDefaultAjaxBehavior() {
private static final long serialVersionUID = 1L;
@Override
protected void respond(AjaxRequestTarget target) {
inviteUser.open(target, getParam(getComponent(), PARAM_USER_ID).toLong());
}
@Override
public void renderHead(Component component, IHeaderResponse response) {
super.renderHead(component, response);
response.render(new PriorityHeaderItem(getNamedFunction("inviteUser", this, explicit(PARAM_USER_ID))));
}
});
topLinks.add(new ConfirmableAjaxBorder("logout", getString("310"), getString("634")) {
private static final long serialVersionUID = 1L;
@Override
protected void onSubmit(AjaxRequestTarget target) {
getSession().invalidate();
setResponsePage(Application.get().getSignInPageClass());
}
});
super.onInitialize();
}
Aggregations