Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package org.uberfire.client.perspectives;
- import org.uberfire.client.annotations.Perspective;
- import org.uberfire.client.annotations.WorkbenchPerspective;
- import org.uberfire.client.workbench.panels.impl.MultiListWorkbenchPanelPresenter;
- import org.uberfire.mvp.impl.DefaultPlaceRequest;
- import org.uberfire.workbench.model.PerspectiveDefinition;
- import org.uberfire.workbench.model.impl.PartDefinitionImpl;
- import org.uberfire.workbench.model.impl.PerspectiveDefinitionImpl;
- import javax.enterprise.context.ApplicationScoped;
- @ApplicationScoped
- @WorkbenchPerspective(identifier = "SecondPerspective")
- public class SecondPerspective {
- @Perspective
- public PerspectiveDefinition buildPerspective() {
- final PerspectiveDefinition p = new PerspectiveDefinitionImpl( MultiListWorkbenchPanelPresenter.class.getName() );
- p.setName( "SecondPerspective" );
- p.getRoot().addPart( new PartDefinitionImpl( new DefaultPlaceRequest( "MyHelloWorldScreen" ) ) );
- return p;
- }
- }
- package org.uberfire.client.screens;
- import org.jboss.errai.common.client.api.Caller;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.uberfire.client.annotations.WorkbenchPartTitle;
- import org.uberfire.client.annotations.WorkbenchPartView;
- import org.uberfire.client.annotations.WorkbenchScreen;
- import org.uberfire.client.mvp.UberElement;
- import org.uberfire.shared.RestService;
- import javax.enterprise.context.Dependent;
- import javax.inject.Inject;
- @Dependent
- @WorkbenchScreen(identifier = "MyHelloWorldScreen")
- public class MyHelloWorldUberfirePresenter {
- private static final Logger logger = LoggerFactory.getLogger(MyHelloWorldUberfirePresenter.class);
- public interface View extends UberElement<MyHelloWorldUberfirePresenter> {
- }
- @Inject
- private View view;
- @Inject
- private Caller<RestService> service;
- @WorkbenchPartTitle
- public String getTitle() {
- return "MyHelloWorldScreen";
- }
- @WorkbenchPartView
- public UberElement<MyHelloWorldUberfirePresenter> getView() {
- return view;
- }
- public boolean loginAction(String username, String password) {
- logger.info("Metodo login action");
- logger.info("username : ".concat(username));
- logger.info("password : ".concat(password));
- return username.equals("admin") && password.equals("admin");
- }
- public void callRpcServices() {
- logger.info("Metodo callRpcServices");
- logger.info("service " + service.toString());
- /*
- service.call(new RemoteCallback<String>() {
- public void callback(String s) {
- logger.info("callback " + s);
- }
- }).fo();
- */
- service.call(o -> {
- logger.info("o - callback " + o);
- ((MyHelloWorldUberfireView)this.view).setRPCall(o.toString());
- }).fo();
- }
- }
- package org.uberfire.client.screens;
- import org.gwtbootstrap3.client.ui.AnchorButton;
- import org.gwtbootstrap3.client.ui.AnchorListItem;
- import org.gwtbootstrap3.client.ui.DropDownMenu;
- import org.gwtbootstrap3.client.ui.constants.Toggle;
- import org.jboss.errai.common.client.dom.*;
- import org.jboss.errai.security.shared.api.identity.User;
- import org.jboss.errai.ui.client.local.api.IsElement;
- import org.jboss.errai.ui.shared.api.annotations.DataField;
- import org.jboss.errai.ui.shared.api.annotations.EventHandler;
- import org.jboss.errai.ui.shared.api.annotations.ForEvent;
- import org.jboss.errai.ui.shared.api.annotations.Templated;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import javax.enterprise.context.Dependent;
- import javax.inject.Inject;
- import javax.inject.Named;
- @Dependent
- @Templated("MyHelloWorldUberfireView.html")
- public class MyHelloWorldUberfireView implements MyHelloWorldUberfirePresenter.View, IsElement {
- private static final Logger logger = LoggerFactory.getLogger(MyHelloWorldUberfireView.class);
- private MyHelloWorldUberfirePresenter presenter;
- @Named("h1")
- @Inject
- @DataField
- private Heading welcome;
- @Inject
- private User user;
- @Inject
- @DataField
- private TextInput username;
- // The corresponding input element has id=passwd
- @Inject
- @DataField("passwd")
- private PasswordInput password;
- @Inject
- @DataField
- private Button cancel;
- @Inject
- @DataField
- private Button login;
- @Inject
- @DataField("result-login")
- private Div result;
- @Inject
- @DataField("rpc-call")
- private Div rcpCall;
- @Inject
- @DataField("my-dropdown")
- private DropDownMenu myDropdown;
- public void init(MyHelloWorldUberfirePresenter presenter) {
- logger.info("logger - metodo init " + this.getClass().toString());
- this.presenter = presenter;
- this.setUp(user.getIdentifier());
- result.setClassName("hidden");
- myDropdown.setTitle("my-dropdown");
- AnchorButton anchorButton = new AnchorButton();
- anchorButton.setDataToggle(Toggle.DROPDOWN);
- //menu = new DropDownMenu();
- myDropdown.add(anchorButton);
- AnchorListItem li = new AnchorListItem();
- li.setTitle("menu 1");
- li.setText("menu 1");
- myDropdown.add(li);
- }
- public void setUp(String name) {
- logger.info("logger - metodo setUp " + this.getClass().toString());
- welcome.setInnerHTML("Benvenuto ".concat(name));
- }
- @EventHandler("login")
- public void loginHeandler(@ForEvent("click") final Event e) {
- logger.info("logger - metodo loginHeandler");
- if (this.presenter.loginAction(username.getValue(), password.getValue())) {
- result.setClassName("alert-success");
- result.setInnerHTML("Login success");
- } else {
- result.setClassName("alert-danger");
- result.setInnerHTML("Login error...");
- }
- }
- @EventHandler("cancel")
- public void cancelHeandler(@ForEvent("click") final Event e) {
- logger.info("logger - metodo cancelHeandler");
- username.setValue("");
- password.setValue("");
- }
- @EventHandler("rpc")
- public void rpcHeandler(@ForEvent("click") final Event e) {
- logger.info("logger - metodo rpcHeandler");
- this.presenter.callRpcServices();
- }
- public void setRPCall(String s){
- rcpCall.setInnerHTML(s);
- }
- }
- <div class="container">
- <h1 id="welcome"></h1>
- <div class="jumbotron">
- <div id="result-login" class="alert " role="alert"></div>
- <legend>Log in to your account:</legend>
- <label for="username">Username</label>
- <input id="username" class="form-control" type="text" placeholder="Enter username">
- <br/>
- <label for="passwd">Password</label>
- <input id="passwd" class="form-control" type="password" placeholder="********">
- <br/>
- <button id="cancel" class="btn btn-danger">Cancel</button>
- <button id="login" data-field="login" class="btn btn-success">Sign In</button>
- </div>
- <div class="container">
- <div class="row">
- <div class="col-md-3">
- <button id="rpc" class="btn btn-primary">RPC </button>
- </div>
- <div id="rpc-call">
- </div>
- </div>
- </div>
- <div class="container">
- <div class="row">
- <div class="col-md-3">
- <div class="dropdown">
- <button class="btn btn-default dropdown-toggle" type="button" id="dropdownMenu1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
- Dropdown
- <span class="caret"></span>
- </button>
- <ul class="dropdown-menu" aria-labelledby="dropdownMenu1">
- <li><a href="#">Action</a></li>
- <li><a href="#">Another action</a></li>
- <li><a href="#">Something else here</a></li>
- <li role="separator" class="divider"></li>
- <li><a href="#">Separated link</a></li>
- </ul>
- </div>
- </div>
- <div class="col-md-1"></div>
- <div class="col-md-3">
- <div class="my-dropdown"></div>
- </div>
- </div>
- </div>
- </div>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement