List of usage examples for org.apache.wicket.markup.repeater RefreshingView RefreshingView
public RefreshingView(String id, IModel<?> model)
From source file:de.alpharogroup.wicket.components.listview.RefreshingViewPanel.java
License:Apache License
/** * Factory method for creating a new {@link RefreshingView}. This method is invoked in the * constructor from the derived classes and can be overridden so users can provide their own * version of the new {@link RefreshingView}. * * @param id/*from w w w . ja v a 2 s. c o m*/ * the id * @param model * the model * @return the new {@link RefreshingView}. */ protected RefreshingView<T> newRefreshingView(final String id, final IModel<List<T>> model) { final RefreshingView<T> listView = new RefreshingView<T>(id, model) { /** The Constant serialVersionUID. */ private static final long serialVersionUID = 1L; /** * {@inheritDoc} */ @Override protected Iterator<IModel<T>> getItemModels() { return new ModelIteratorAdapter<T>(getModelObject().iterator()) { /** * {@inheritDoc} */ @Override protected IModel<T> model(final T object) { return Model.of(object); } }; } /** * {@inheritDoc} */ @Override protected Item<T> newItem(final String id, final int index, final IModel<T> model) { return RefreshingViewPanel.this.newItem(id, index, model); } /** * {@inheritDoc} */ @Override protected void populateItem(final Item<T> item) { item.add(newListComponent("item", item)); } }; listView.setItemReuseStrategy(ReuseIfModelsEqualStrategy.getInstance()); return listView; }
From source file:de.widone.web.panel.tasklist.TaskListPanel.java
License:Apache License
private Component createRefreshingView(final IModel<TaskList> taskList) { return new RefreshingView<Task>(TASK_LIST, new PropertyModel<List<Task>>(taskList, "tasks")) { @Override/*w ww . ja va2 s .c o m*/ protected Iterator<IModel<Task>> getItemModels() { return new ModelIteratorAdapter<Task>( ((IModel<List<Task>>) getDefaultModel()).getObject().iterator()) { @Override protected IModel<Task> model(Task object) { return Model.of(object); } }; } @Override protected void populateItem(final Item<Task> item) { TaskListPanel.this.populateItem(item, taskList); } }.setItemReuseStrategy(new ReuseIfModelsEqualStrategy()); }
From source file:org.apache.jetspeed.portlets.prm.application.DetailsPanel.java
License:Apache License
public DetailsPanel(String id, final PortletApplicationNodeBean paNodeBean) { super(id);/* www. j a v a2 s . c o m*/ detailList = new ArrayList<KeyVal>(); JetspeedServiceLocator locator = ((AbstractAdminWebApplication) getApplication()).getServiceLocator(); PortletApplication app = locator.getPortletRegistry() .getPortletApplication(paNodeBean.getApplicationName()); detailList.add(new KeyVal("Name", app.getName())); detailList.add(new KeyVal("Version", app.getVersion())); detailList.add(new KeyVal("Description", getDescription(app))); detailList.add(new KeyVal("Type", getType(app))); detailList.add(new KeyVal("Services", new Object() { String toString(Iterator<JetspeedServiceReference> it) { StringBuffer buffer = new StringBuffer(); while (it.hasNext()) { buffer.append(it.next().getName() + "<br/>"); } return buffer.toString(); } }.toString(app.getJetspeedServices().iterator()))); final RefreshingView<KeyVal> dataRepeater = new RefreshingView<KeyVal>("data", new PropertyModel<List<KeyVal>>(this, "detailList")) { @Override protected void populateItem(Item<KeyVal> item) { final KeyVal field = item.getModelObject(); item.add(new Label("name", field.getKey())); item.add(new Label("value", field.getValue()).setEscapeModelStrings(false)); } @Override protected Iterator<IModel<KeyVal>> getItemModels() { List<KeyVal> list = (List<KeyVal>) getDefaultModelObject(); return new ModelIteratorAdapter<KeyVal>(list.iterator()) { @Override protected IModel<KeyVal> model(KeyVal object) { return new Model<KeyVal>(object); } }; } }; jetspeedSecurityContraintNames = new ArrayList<String>(Arrays.asList("")); PageManager pageManager = ((AbstractAdminWebApplication) getApplication()).getServiceLocator() .getPageManager(); try { for (Object secConstDefObj : pageManager.getPageSecurity().getSecurityConstraintsDefs()) { SecurityConstraintsDef secConstDef = (SecurityConstraintsDef) secConstDefObj; jetspeedSecurityContraintNames.add(secConstDef.getName()); } } catch (Exception e) { logger.error("Failed to retrieve jetspeed security constraint defs from page manager.", e); } jetspeedSecurityConstraint = app.getJetspeedSecurityConstraint(); Form form = new Form("form"); form.add(dataRepeater); form.add(new DropDownChoice<String>("jetspeedConstraint", new PropertyModel<String>(this, "jetspeedSecurityConstraint"), jetspeedSecurityContraintNames)); form.add(new Button("jsecSave", new ResourceModel("pam.details.action.save")) { @Override public void onSubmit() { FeedbackPanel feed = (FeedbackPanel) getPage().get("feedback"); try { PortletRegistry registry = ((AbstractAdminWebApplication) getApplication()).getServiceLocator() .getPortletRegistry(); PortletApplication app = registry.getPortletApplication(paNodeBean.getApplicationName()); app.setJetspeedSecurityConstraint( "".equals(jetspeedSecurityConstraint) ? null : jetspeedSecurityConstraint); registry.updatePortletApplication(app); StringResourceModel resModel = new StringResourceModel( "pam.details.action.status.application.saveOK", this, null, new Object[] { paNodeBean.getApplicationName() }); feed.info(resModel.getString()); } catch (RegistryException e) { logger.error("Failed to update jetspeed security constraint defs of application.", e); StringResourceModel resModel = new StringResourceModel( "pam.details.action.status.application.saveFailure", this, null, new Object[] { paNodeBean.getApplicationName(), e.getMessage() }); feed.info(resModel.getString()); } } }); form.add(new Label("resourceBundle", app.getResourceBundle())); Button reloadResourceBundlesButton = new Button("reloadResourceBundle", new ResourceModel("pam.details.resource.bundle.reload")) { @Override public void onSubmit() { FeedbackPanel feed = (FeedbackPanel) getPage().get("feedback"); try { PortletRegistry registry = ((AbstractAdminWebApplication) getApplication()).getServiceLocator() .getPortletRegistry(); PortletApplication app = registry.getPortletApplication(paNodeBean.getApplicationName()); PortletFactory factory = ((AbstractAdminWebApplication) getApplication()).getServiceLocator() .getPortletFactory(); factory.reloadResourceBundles(app); } catch (Exception e) { logger.error("Failed to reload the resource bundle of application.", e); StringResourceModel resModel = new StringResourceModel( "pam.details.action.status.resource.bundle.reloadFailure", this, null, new Object[] { paNodeBean.getApplicationName(), e.getMessage() }); feed.info(resModel.getString()); } } }; reloadResourceBundlesButton.add(new JavascriptEventConfirmation("onclick", new ResourceModel("pam.details.resource.bundle.reload.confirm"))); reloadResourceBundlesButton.setEnabled(!StringUtils.isBlank(app.getResourceBundle())); form.add(reloadResourceBundlesButton); Button refreshSearchIndexButton = new Button("refreshSearchIndex", new ResourceModel("pam.details.search.index.refresh")) { @Override public void onSubmit() { FeedbackPanel feed = (FeedbackPanel) getPage().get("feedback"); try { SearchEngine searchEngine = ((AbstractAdminWebApplication) getApplication()).getServiceLocator() .getSearchEngine(); PortletRegistry registry = ((AbstractAdminWebApplication) getApplication()).getServiceLocator() .getPortletRegistry(); PortletApplication app = registry.getPortletApplication(paNodeBean.getApplicationName()); List<PortletDefinition> portletDefList = app.getPortlets(); List<Object> list = new ArrayList<Object>(); list.addAll(portletDefList); list.add(app); searchEngine.remove(list); list.clear(); list.add(app); list.addAll(portletDefList); searchEngine.add(list); } catch (Exception e) { logger.error("Failed to refresh the search index of application.", e); StringResourceModel resModel = new StringResourceModel( "pam.details.action.status.search.index.refreshFailure", this, null, new Object[] { paNodeBean.getApplicationName(), e.getMessage() }); feed.info(resModel.getString()); } } }; refreshSearchIndexButton.add(new JavascriptEventConfirmation("onclick", new ResourceModel("pam.details.search.index.refresh.confirm"))); refreshSearchIndexButton.setEnabled(true); form.add(refreshSearchIndexButton); add(form); }
From source file:org.cipango.ims.hss.web.PprPanel.java
License:Apache License
@SuppressWarnings("unchecked") @Override//w w w . j ava2 s .co m protected void onBeforeRender() { super.onBeforeRender(); BasePage page = (BasePage) getPage(); int nbPublicsToUpdate = page.getCxManager().getNbPublicIdsToUpdate(); _nbPublicsToUpdate = nbPublicsToUpdate; if (nbPublicsToUpdate > 0) { setVisible(true); if (get("form") == null) createForm(page.getCxManager()); String title = MapVariableInterpolator.interpolate(getString("pprPanel.title"), new MicroMap("nb", _nbPublicsToUpdate)); WebMarkupContainer form = ((WebMarkupContainer) get("form")); form.addOrReplace(new Label("title", title)); WebMarkupContainer details = new WebMarkupContainer("details"); form.addOrReplace(details); details.add(new RefreshingView("publicIdentities", new Model((Serializable) page.getCxManager().getPublicIdsToUpdateAsString())) { @Override protected Iterator getItemModels() { return new ModelIteratorAdapter<String>(((Collection) getDefaultModelObject()).iterator()) { @Override protected IModel<String> model(String id) { return new Model<String>(id); } }; } @Override protected void populateItem(Item item) { MarkupContainer link = new BookmarkablePageLink("identity", EditPublicUserIdPage.class, new PageParameters("id=" + item.getModelObject())); item.add(link); link.add(new Label("name", item.getModel())); } }); } else setVisible(false); }
From source file:org.cipango.ims.hss.web.privateid.ContextPanel.java
License:Apache License
public ContextPanel(PrivateIdentity privateIdentity) { super("contextMenu"); setOutputMarkupId(true);// w ww. j a v a 2 s . c o m if (privateIdentity.getSubscription() != null) { add(new AutolinkBookmarkablePageLink("subscriptionLink", ViewSubscriptionPage.class, new PageParameters("id=" + privateIdentity.getSubscription().getName()))); add(new AutolinkBookmarkablePageLink("deregistrationLink", DeregistrationPage.class, new PageParameters("id=" + privateIdentity.getSubscription().getName()))); } else { add(new AutolinkBookmarkablePageLink("subscriptionLink", ViewSubscriptionPage.class).setVisible(false)); add(new AutolinkBookmarkablePageLink("deregistrationLink", DeregistrationPage.class)).setVisible(false); } add(new AutolinkBookmarkablePageLink("editLink", EditPrivateIdPage.class, new PageParameters("id=" + privateIdentity.getIdentity()))); add(new AutolinkBookmarkablePageLink("deleteLink", DeletePrivateIdPage.class, new PageParameters("id=" + privateIdentity.getIdentity()))); add(new AutolinkBookmarkablePageLink("gbaLink", UssBrowserPage.class, new PageParameters("privateId=" + privateIdentity.getIdentity()))); add(new RefreshingView("publicIds", new Model((Serializable) privateIdentity.getPublicIds())) { @Override protected Iterator getItemModels() { return new ModelIteratorAdapter<String>(((Collection) getDefaultModelObject()).iterator()) { @Override protected IModel<String> model(String id) { return new Model<String>(id); } }; } @Override protected void populateItem(Item item) { MarkupContainer link = new AutolinkBookmarkablePageLink("identity", EditPublicUserIdPage.class, new PageParameters("id=" + item.getModelObject())); item.add(link); link.add(new Label("name", item.getModel())); } }); add(new AutolinkBookmarkablePageLink("editPublicIdsLink", EditPublicIdsPage.class, new PageParameters("id=" + privateIdentity.getIdentity()))); add(new AutolinkBookmarkablePageLink("newPublicIdLink", EditPublicUserIdPage.class, new PageParameters("privateId=" + privateIdentity.getIdentity()))); }
From source file:org.cipango.ims.hss.web.serviceprofile.ViewServiceProfilePage.java
License:Apache License
@SuppressWarnings("unchecked") public ViewServiceProfilePage(PageParameters pageParameters) { super(pageParameters); _key = pageParameters.getString("id"); ServiceProfile serviceProfile = null; if (_key != null) { serviceProfile = _dao.findById(_key); if (serviceProfile == null) { error(MapVariableInterpolator.interpolate(getString(getPrefix() + ".error.notFound"), new MicroMap("identity", _key))); _key = null;/*w w w .java2s .com*/ } } _title = getString("serviceProfile.edit.title", new DaoDetachableModel(serviceProfile)); add(new Label("title", _title)); IModel ifcsModel = new LoadableDetachableModel( serviceProfile == null ? Collections.EMPTY_SET : serviceProfile.getIfcs(false)) { @Override protected Object load() { return _dao.findById(_key).getIfcs(false); } }; add(new RefreshingView("ifcs", ifcsModel) { @Override protected Iterator getItemModels() { return new CompoundModelIterator((Collection) getDefaultModelObject()); } @Override protected void populateItem(Item item) { item.add(new ViewIfcPanel("ifc", item.getModel(), false)); } }); IModel sharedIfcsModel = new LoadableDetachableModel( serviceProfile == null ? Collections.EMPTY_SET : serviceProfile.getIfcs(true)) { @Override protected Object load() { return _dao.findById(_key).getIfcs(true); } }; add(new RefreshingView("sharedIfcs", sharedIfcsModel) { @Override protected Iterator getItemModels() { return new CompoundModelIterator((Collection) getDefaultModelObject()); } @Override protected void populateItem(Item item) { item.add(new ViewIfcPanel("ifc", item.getModel(), true)); } }); if (serviceProfile != null) setContextMenu(new ContextPanel(serviceProfile)); }
From source file:org.cipango.ims.hss.web.spt.EditSptsPage.java
License:Apache License
private RefreshingView<SPT> getSpts(final Integer groupId) { IModel<Collection<SPT>> ifcsModel = new Model((Serializable) _spts.get(groupId)); return new RefreshingView<SPT>("spts", ifcsModel) { @Override/*w w w . j a va2 s . co m*/ protected Iterator<IModel<SPT>> getItemModels() { return new CompoundModelIterator((Collection<SPT>) getDefaultModelObject()); } @Override protected void populateItem(final Item<SPT> item) { item.add(new CheckBox("conditionNegated").add(new SptUpdatingBehaviour())); item.add(getPanel(item.getModel())); item.add(new AjaxFallbackButton("delete", (Form) getPage().get("sptsForm")) { @Override protected void doSubmit(AjaxRequestTarget target, Form<?> form) { SPT spt = (SPT) item.getDefaultModelObject(); _sptsToDelete.add(spt); List<SPT> l = _spts.get(spt.getGroupId()); if (l != null) { l.remove(spt); if (l.isEmpty()) _spts.remove(spt.getGroupId()); } warn(MapVariableInterpolator.interpolate(getString("spt.modification"), new MicroMap("spt", getExpression()))); if (target != null) target.addComponent(form); } }); boolean conditonType = _ifcModel.getObject().isConditionTypeCnf(); item.add(new Label("conditionType", conditonType ? "OR" : "AND")); } }; }
From source file:org.cipango.ims.hss.web.subscription.EditImplicitSetPage.java
License:Apache License
@SuppressWarnings("unchecked") public EditImplicitSetPage(PageParameters pageParameters) { super(pageParameters); String key = pageParameters.getString("id"); Subscription subscription = _dao.findById(key); if (subscription == null) { error(MapVariableInterpolator.interpolate(getString(getPrefix() + ".error.notFound"), new MicroMap("id", key))); _key = null;/*from ww w . jav a2 s. c o m*/ } add(new SvgMarkupContainer("svg", subscription)); final Form form = new Form("form"); form.setOutputMarkupId(true); add(form); _title = MapVariableInterpolator.interpolate(getString("susbcription.implicititRegistrationSets.title"), new MicroMap("name", key)); add(new Label("title", _title)); if (subscription == null) { form.setVisible(false); return; } _key = subscription.getId(); IModel<List<ImplicitRegistrationSet>> implicitSets = new LoadableDetachableModel<List<ImplicitRegistrationSet>>() { @Override protected List<ImplicitRegistrationSet> load() { return _implicitRegistrationSetDao.getImplicitRegistrationSet(_key); } }; form.add(new ListMultipleChoice("publicIds", new Model(new ArrayList()), new Model(new ArrayList(subscription.getPublicIds())))); form.add(new RefreshingView("actions", implicitSets) { @Override protected Iterator getItemModels() { return new CompoundModelIterator((Collection<ImplicitRegistrationSet>) getDefaultModelObject()); } @Override protected void populateItem(final Item item) { Model<String> buttonModel = new Model<String>( getString("button.implicitSet.changeTo", item.getModel())); item.add(new AjaxFallbackButton("button", buttonModel, form) { @Override protected void doSubmit(AjaxRequestTarget target, Form<?> form1) throws Exception { ImplicitRegistrationSet implicitRegistrationSet = (ImplicitRegistrationSet) item .getDefaultModelObject(); apply(target, form1, implicitRegistrationSet); } }); } }); form.add(new AjaxFallbackButton("addButton", form) { @Override protected void doSubmit(AjaxRequestTarget target, Form<?> form1) throws Exception { if (!((List) form1.get("publicIds").getDefaultModelObject()).isEmpty()) { ImplicitRegistrationSet implicitRegistrationSet = new ImplicitRegistrationSet(); _implicitRegistrationSetDao.save(implicitRegistrationSet); apply(target, form1, implicitRegistrationSet); } } }); WebMarkupContainer container = new WebMarkupContainer("container"); form.add(container); container.add(new RefreshingView("implicitSet", implicitSets) { @Override protected Iterator getItemModels() { return new CompoundModelIterator((Collection<ImplicitRegistrationSet>) getDefaultModelObject()); } @Override protected void populateItem(final Item item) { item.add(new Label("id")); item.add(getPublicIdView(item)); } }); container.setOutputMarkupId(true); setContextMenu(new ContextPanel(subscription)); }
From source file:org.cipango.ims.hss.web.subscription.EditImplicitSetPage.java
License:Apache License
@SuppressWarnings("unchecked") private RefreshingView getPublicIdView(final Item item) { final IModel<SortedSet<PublicUserIdentity>> model = new LoadableDetachableModel<SortedSet<PublicUserIdentity>>() { @Override// w w w . j av a 2s. c o m protected SortedSet<PublicUserIdentity> load() { return ((ImplicitRegistrationSet) item.getModelObject()).getPublicIdentities(); } }; return new RefreshingView<PublicUserIdentity>("publicIds", model) { @Override protected Iterator<IModel<PublicUserIdentity>> getItemModels() { List<IModel<PublicUserIdentity>> l = new ArrayList<IModel<PublicUserIdentity>>(); Iterator<PublicUserIdentity> it = model.getObject().iterator(); while (it.hasNext()) { PublicUserIdentity identity = it.next(); l.add(new DaoLoadableModel<PublicUserIdentity, String>(identity, identity.getIdentity()) { @Override protected PublicUserIdentity load() { return (PublicUserIdentity) _publicIdentityDao.findById(getKey()); } }); } return l.iterator(); } @Override protected void populateItem(Item<PublicUserIdentity> item2) { PublicUserIdentity identity = item2.getModelObject(); MarkupContainer link = new BookmarkablePageLink("identity", EditPublicUserIdPage.class, new PageParameters("id=" + identity.getIdentity())); item2.add(link); link.add(new Label("name", identity.getIdentity())); if (identity.isDefaultIdentity()) { item2.add(new WebMarkupContainer("default")); item2.add(new WebMarkupContainer("makeDefault").setVisible(false)); } else { item2.add(new WebMarkupContainer("default").setVisible(false)); item2.add(new AjaxFallbackLink("makeDefault", item2.getModel()) { @Override public void onClick(AjaxRequestTarget target) { PublicUserIdentity identity = (PublicUserIdentity) getDefaultModelObject(); identity.setDefaultIdentity(true); SortedSet<PublicUserIdentity> ids = (SortedSet<PublicUserIdentity>) getParent() .getParent().getDefaultModelObject(); Iterator<PublicUserIdentity> it = ids.iterator(); while (it.hasNext()) { PublicUserIdentity publicId = it.next(); publicId.setDefaultIdentity(identity == publicId); _publicIdentityDao.save(publicId); } resort(ids); if (target != null) { target.addComponent(getPage().get("form:container")); target.addComponent(getPage().get("feedback")); } } }); } } }; }
From source file:org.cipango.ims.hss.web.subscription.ViewSubscriptionPage.java
License:Apache License
@SuppressWarnings("unchecked") public ViewSubscriptionPage(PageParameters pageParameters) { super(pageParameters); Subscription subscription = getSubscription(pageParameters); _key = (subscription == null) ? null : subscription.getName(); _title = getString(getPrefix() + ".edit.title", new DaoDetachableModel(subscription)); add(new Label("title", _title)); IModel privateIdsModel = new LoadableDetachableModel( subscription == null ? Collections.EMPTY_SET : subscription.getPrivateIdentities()) { @Override//from ww w. j ava 2s. c om protected Object load() { return _dao.findById(_key).getPrivateIdentities(); } }; add(new SvgMarkupContainer("svg", subscription)); add(new RefreshingView("privateIds", privateIdsModel) { @Override protected Iterator getItemModels() { return new CompoundModelIterator((Collection) getDefaultModelObject()); } @Override protected void populateItem(Item item) { PrivateIdentity privateIdentity = (PrivateIdentity) item.getModelObject(); MarkupContainer link = new BookmarkablePageLink("identityLink", EditPrivateIdPage.class, new PageParameters("id=" + privateIdentity.getIdentity())); link.add(new Label("identity")); item.add(link); item.add(new Label("passwordAsString")); item.add(new Label("operatorId")); item.add(new Label("sqn")); item.add(new RefreshingView("publicIds", new Model((Serializable) privateIdentity.getPublicIds())) { @Override protected Iterator getItemModels() { return new StringModelIterator(((Collection) getDefaultModelObject())); } @Override protected void populateItem(Item item2) { MarkupContainer link = new BookmarkablePageLink("identity", EditPublicUserIdPage.class, new PageParameters("id=" + item2.getModelObject())); item2.add(link); link.add(new Label("name", item2.getModel())); } }); item.setOutputMarkupId(true); item.add(new HideableLink("hideLink", item)); } }); IModel publicsModel = new LoadableDetachableModel( subscription == null ? Collections.EMPTY_SET : subscription.getPublicIdentities()) { @Override protected Object load() { return _dao.findById(_key).getPublicIdentities(); } }; add(new RefreshingView("publicIds", publicsModel) { @Override protected Iterator getItemModels() { return new CompoundModelIterator((Collection) getDefaultModelObject()); } @Override protected void populateItem(Item item) { PublicUserIdentity publicIdentity = (PublicUserIdentity) item.getModelObject(); MarkupContainer link = new BookmarkablePageLink("identityLink", EditPublicUserIdPage.class, new PageParameters("id=" + publicIdentity.getIdentity())); link.add(new Label("identity")); item.add(link); item.add(new Label("barred")); item.add(new Label("identityTypeAsString")); item.add(new Label("displayName")); item.add(new Label("implicitRegistrationSet.stateAsString")); MarkupContainer serviceProfileLink = new BookmarkablePageLink("serviceProfileLink", ViewServiceProfilePage.class, new PageParameters("id=" + publicIdentity.getServiceProfile().getName())); item.add(serviceProfileLink); serviceProfileLink.add(new Label("serviceProfile", publicIdentity.getServiceProfile().getName())); item.setOutputMarkupId(true); item.add(new HideableLink("hideLink", item)); item.add( new RefreshingView("privateIds", new Model((Serializable) publicIdentity.getPrivateIds())) { @Override protected Iterator getItemModels() { return new StringModelIterator(((Collection) getDefaultModelObject())); } @Override protected void populateItem(Item item2) { MarkupContainer link = new BookmarkablePageLink("identity", EditPrivateIdPage.class, new PageParameters("id=" + item2.getModelObject())); item2.add(link); link.add(new Label("name", item2.getModel())); } }); } }); IModel scscfModel = new CompoundPropertyModel( new LoadableDetachableModel(subscription == null ? null : subscription.getScscf()) { @Override protected Object load() { return _dao.findById(_key).getScscf(); } }); WebMarkupContainer scscf = new WebMarkupContainer("scscf", scscfModel); add(scscf); if (scscf.getDefaultModelObject() == null) scscf.setVisible(false); else { MarkupContainer link = new BookmarkablePageLink("link", EditScscfPage.class, new PageParameters("id=" + subscription.getScscf().getName())); link.add(new Label("name")); scscf.add(link); scscf.add(new Label("uri")); scscf.add(new HideableLink("hideLink", scscf)); } if (subscription != null) setContextMenu(new ContextPanel(subscription)); }