manager.add(createComponent()
.setInterface(UIExtensionFactory.class.getName(), properties)
.setImplementation(new UIExtensionFactory() {
@Override
public Component create(Map<String, Object> context) {
Button b = new UserAdminButton((User) context.get("user"));
manager.add(createComponent()
.setImplementation(b)
.add(createServiceDependency()
.setService(UserEditor.class)
.setRequired(true)
)
);
b.setDescription("This button opens a window to manage users");
return b;
}
}
)
);