/* * Copyright 2014-2016 CyberVision, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.kaaproject.kaa.server.admin.client.mvp.view.event; import com.google.gwt.event.logical.shared.ValueChangeEvent; import com.google.gwt.event.logical.shared.ValueChangeHandler; import com.google.gwt.user.client.ui.HasValue; import com.google.gwt.user.client.ui.Label; import org.kaaproject.avro.ui.gwt.client.widget.SizedTextBox; import org.kaaproject.avro.ui.gwt.client.widget.grid.AbstractGrid; import org.kaaproject.kaa.common.dto.event.ApplicationEventMapDto; import org.kaaproject.kaa.common.dto.event.EcfInfoDto; import org.kaaproject.kaa.server.admin.client.mvp.view.AefMapView; import org.kaaproject.kaa.server.admin.client.mvp.view.base.BaseDetailsViewImpl; import org.kaaproject.kaa.server.admin.client.mvp.view.widget.EcfListBox; import org.kaaproject.kaa.server.admin.client.mvp.view.widget.KaaAdminSizedTextBox; import org.kaaproject.kaa.server.admin.client.util.Utils; import java.util.List; public class AefMapViewImpl extends BaseDetailsViewImpl implements AefMapView { private SizedTextBox createdUsername; private SizedTextBox createdDateTime; private EcfListBox ecf; private SizedTextBox ecfName; private SizedTextBox ecfVersion; private EventMapGrid eventMapGrid; public AefMapViewImpl(boolean create) { super(create, create); } @Override public HasValue<String> getCreatedUsername() { return createdUsername; } @Override public HasValue<String> getCreatedDateTime() { return createdDateTime; } @Override public HasValue<EcfInfoDto> getEcf() { return ecf; } @Override public HasValue<String> getEcfName() { return ecfName; } @Override public HasValue<String> getEcfVersion() { return ecfVersion; } @Override public AbstractGrid<ApplicationEventMapDto, String> getEventMapGrid() { return eventMapGrid; } @Override protected String getCreateTitle() { return Utils.constants.addNewAefMap(); } @Override protected String getViewTitle() { return Utils.constants.aefMap(); } @Override protected String getSubTitle() { return Utils.constants.aefMapDetails(); } @Override protected void initDetailsTable() { Label authorLabel = new Label(Utils.constants.author()); createdUsername = new KaaAdminSizedTextBox(-1, false); createdUsername.setWidth("100%"); detailsTable.setWidget(0, 0, authorLabel); detailsTable.setWidget(0, 1, createdUsername); authorLabel.setVisible(!create); createdUsername.setVisible(!create); Label dateTimeCreatedLabel = new Label(Utils.constants.dateTimeCreated()); createdDateTime = new KaaAdminSizedTextBox(-1, false); createdDateTime.setWidth("100%"); detailsTable.setWidget(1, 0, dateTimeCreatedLabel); detailsTable.setWidget(1, 1, createdDateTime); dateTimeCreatedLabel.setVisible(!create); createdDateTime.setVisible(!create); Label ecfLabel = new Label(Utils.constants.ecf()); ecfLabel.addStyleName(Utils.avroUiStyle.requiredField()); ecf = new EcfListBox(); ecf.setWidth("100%"); detailsTable.setWidget(2, 0, ecfLabel); detailsTable.setWidget(2, 1, ecf); ecfLabel.setVisible(create); ecf.setVisible(create); ecf.addValueChangeHandler(new ValueChangeHandler<EcfInfoDto>() { @Override public void onValueChange(ValueChangeEvent<EcfInfoDto> event) { fireChanged(); } }); Label ecfNameLabel = new Label(Utils.constants.ecfName()); ecfName = new KaaAdminSizedTextBox(-1, false); ecfName.setWidth("100%"); detailsTable.setWidget(3, 0, ecfNameLabel); detailsTable.setWidget(3, 1, ecfName); ecfNameLabel.setVisible(!create); ecfName.setVisible(!create); Label ecfVersionLabel = new Label(Utils.constants.ecfVersion()); ecfVersion = new KaaAdminSizedTextBox(-1, false); ecfVersion.setWidth("100%"); detailsTable.setWidget(4, 0, ecfVersionLabel); detailsTable.setWidget(4, 1, ecfVersion); ecfVersionLabel.setVisible(!create); ecfVersion.setVisible(!create); eventMapGrid = new EventMapGrid(create); eventMapGrid.setSize("700px", "400px"); Label eventMapLabel = new Label(Utils.constants.eventMap()); eventMapLabel.addStyleName(Utils.kaaAdminStyle.bAppContentTitleLabel()); detailsTable.setWidget(5, 0, eventMapLabel); eventMapLabel.getElement().getParentElement().getStyle().setPropertyPx("paddingBottom", 10); detailsTable.setWidget(6, 0, eventMapGrid); detailsTable.getFlexCellFormatter().setColSpan(6, 0, 3); } @Override protected void resetImpl() { createdUsername.setValue(""); createdDateTime.setValue(""); ecf.reset(); ecfName.setValue(""); ecfVersion.setValue(""); } @Override protected boolean validate() { return ecf.getValue() != null; } @Override public void updateEcfs(List<EcfInfoDto> ecfs) { ecf.reset(); ecf.setAcceptableValues(ecfs); } }