Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @UiField
- TextBox name;
- @UiField
- TextArea comment;
- @UiField
- ListBox type;
- ...
- private void editCustomer(CustomerProxy entity) {
- MyRequestFactory requestFactory = MyRequest.getRequestFactory();
- CustomerRequestContext requestContext = requestFactory.customerRequest();
- entity = requestContext.edit(entity);
- editorDriver.edit(entity, requestContext);
- }
- @UiHandler("saveButton")
- void onSaveButtonClick(ClickEvent event){
- ????
- }
- public abstract class AbstractTaskBuilderActivity extends <E extends AnalyticsTaskProxy, R extends DaoRequest<E>> implements TaskBuilderView {
- /**
- * Create a new task. This will initialize any new lists.
- * @param context The RequestContext to use to create the task.
- * @param clazz The class type to be created.
- * @return
- */
- protected E create(R context, Class<E> clazz) {
- // This is implemented in my inherited classes.
- E editableAnalyticsTask = context.create(clazz);
- // More initialization code expecially initializing arrays to empty so that
- // any ListEditor sub editors will work.
- return editableAnalyticsTask;
- }
- /**
- * Call to edit the task and update the dashboards.
- * @param context
- * @param task
- */
- protected void doEdit(R context, E task) {
- RequestFactoryEditorDriver<? super AnalyticsTaskProxy, ?> driver = display.getEditorDriver();
- E editable = context.edit(task);
- context.save(editable).with(driver.getPaths()).to(new Receiver<Long>() {
- @Override
- public void onFailure(ServerFailure error) {
- display.showError(error.getMessage());
- super.onFailure(error);
- }
- public void onConstraintViolation(Set<ConstraintViolation<?>> violations) {
- display.getEditorDriver().setConstraintViolations(violations);
- }
- @Override
- public void onSuccess(Long response) {
- clientFactory.getPlaceController().goTo(getSavePlace());
- }
- });
- driver.edit(editable, context);
- }
- /**
- * Save the task.
- */
- @Override
- public void onSaveTask() {
- RequestFactoryEditorDriver<? super AnalyticsTaskProxy, ?> driver = display.getEditorDriver();
- RequestContext request = driver.flush();
- request.fire();
- }
- }
- public interface TaskBuilderView extends View {
- public interface Presenter {
- void onSaveTask();
- }
- public RequestFactoryEditorDriver<AnalyticsTaskProxy, ?> getFactoryEditorDriver();
- public void setPresenter(Presenter presenter);
- }
- public class AnalyticsTaskBuilderViewImpl extends ViewImpl implements AnalyticsTaskBuilderView, Editor<AnalyticsTaskProxy> {
- interface AnalyticsTaskBuilderDriver extends RequestFactoryEditorDriver<AnalyticsTaskProxy, AnalyticsTaskBuilderViewImpl> {
- }
- /**
- * UiBinder implementation.
- *
- * @author chinshaw
- *
- */
- @UiTemplate("AnalyticsTaskBuilderView.ui.xml")
- interface Binder extends UiBinder<Widget, AnalyticsTaskBuilderViewImpl> {
- }
- /**
- * Name component for the name of the analytics operation.
- * This also implements {@link HasEditorErrors so it can show
- * constraint violations when an error occurs.
- */
- @UiField
- ValueBoxEditorDecorator<String> name;
- /**
- * Description component that edits analytics operation description.
- * This also implements {@link HasEditorErrors} so it can show
- * constraint violations when an error occurs
- */
- @UiField
- ValueBoxEditorDecorator<String> description;
- public AnalyticsTaskBuilderViewImpl(Resources resources) {
- super(resources);
- // Must initialize the view before calling driver initialize
- initWidget(GWT.<Binder> create(Binder.class).createAndBindUi(this));
- driver.initialize(this);
- }
- @Override
- public void setPresenter(Presenter presenter) {
- this.presenter = presenter;
- bindToPresenter();
- }
- // Save the task
- @UiHandler("saveTask")
- void handleClick(ClickEvent clickEvent) {
- presenter.onSaveTask();
- }
- @Override
- public RequestFactoryEditorDriver<AnalyticsTaskProxy, ?> getEditorDriver() {
- return driver;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement