Updated ValueDataTypeFormat in Change Column Type
git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/tabular-data-column-widget@111759 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
a5a9eec7dc
commit
9601ce03db
|
@ -1,6 +1,7 @@
|
||||||
package org.gcube.portlets.user.td.columnwidget.client;
|
package org.gcube.portlets.user.td.columnwidget.client;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
import org.gcube.portlets.user.td.columnwidget.client.dimension.CodelistSelectionDialog;
|
import org.gcube.portlets.user.td.columnwidget.client.dimension.CodelistSelectionDialog;
|
||||||
import org.gcube.portlets.user.td.columnwidget.client.dimension.CodelistSelectionListener;
|
import org.gcube.portlets.user.td.columnwidget.client.dimension.CodelistSelectionListener;
|
||||||
|
@ -43,7 +44,6 @@ import org.gcube.portlets.user.td.widgetcommonevent.shared.OperationResult;
|
||||||
import org.gcube.portlets.user.td.widgetcommonevent.shared.TRId;
|
import org.gcube.portlets.user.td.widgetcommonevent.shared.TRId;
|
||||||
import org.gcube.portlets.user.td.widgetcommonevent.shared.tr.column.ColumnDataType;
|
import org.gcube.portlets.user.td.widgetcommonevent.shared.tr.column.ColumnDataType;
|
||||||
import org.gcube.portlets.user.td.widgetcommonevent.shared.tr.column.ColumnTypeCode;
|
import org.gcube.portlets.user.td.widgetcommonevent.shared.tr.column.ColumnTypeCode;
|
||||||
import org.gcube.portlets.user.td.widgetcommonevent.shared.tr.column.ColumnTypeMap;
|
|
||||||
|
|
||||||
import com.allen_sauer.gwt.log.client.Log;
|
import com.allen_sauer.gwt.log.client.Log;
|
||||||
import com.google.gwt.core.client.GWT;
|
import com.google.gwt.core.client.GWT;
|
||||||
|
@ -93,6 +93,8 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
private EventBus eventBus;
|
private EventBus eventBus;
|
||||||
private ChangeColumnTypeDialog parent;
|
private ChangeColumnTypeDialog parent;
|
||||||
private TRId trId;
|
private TRId trId;
|
||||||
|
private HashMap<ColumnDataType, ArrayList<ValueDataFormat>> valueDataFormatMap;
|
||||||
|
|
||||||
private String columnName;
|
private String columnName;
|
||||||
private ColumnData sourceColumnChangeType;
|
private ColumnData sourceColumnChangeType;
|
||||||
private ColumnData columnRequested;
|
private ColumnData columnRequested;
|
||||||
|
@ -127,7 +129,7 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
private ListStore<ValueDataFormat> storeComboValueDataFormat;
|
private ListStore<ValueDataFormat> storeComboValueDataFormat;
|
||||||
private ComboBox<ValueDataFormat> comboValueDataFormat;
|
private ComboBox<ValueDataFormat> comboValueDataFormat;
|
||||||
private FieldLabel comboValueDataFormatLabel;
|
private FieldLabel comboValueDataFormatLabel;
|
||||||
|
|
||||||
private ComboBox<LocaleTypeElement> comboLocaleType = null;
|
private ComboBox<LocaleTypeElement> comboLocaleType = null;
|
||||||
private FieldLabel comboLocaleTypeLabel;
|
private FieldLabel comboLocaleTypeLabel;
|
||||||
private ListStore<LocaleTypeElement> storeComboLocaleType;
|
private ListStore<LocaleTypeElement> storeComboLocaleType;
|
||||||
|
@ -148,13 +150,44 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
this.columnName = columnName;
|
this.columnName = columnName;
|
||||||
this.eventBus = eventBus;
|
this.eventBus = eventBus;
|
||||||
panelCreated = false;
|
panelCreated = false;
|
||||||
|
retrieveValueDataFormatMap();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void retrieveValueDataFormatMap() {
|
||||||
|
|
||||||
|
TDGWTServiceAsync.INSTANCE
|
||||||
|
.getValueDataFormatsMap(new AsyncCallback<HashMap<ColumnDataType, ArrayList<ValueDataFormat>>>() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailure(Throwable caught) {
|
||||||
|
if (caught instanceof TDGWTSessionExpiredException) {
|
||||||
|
eventBus.fireEvent(new SessionExpiredEvent(
|
||||||
|
SessionExpiredType.EXPIREDONSERVER));
|
||||||
|
} else {
|
||||||
|
|
||||||
|
Log.debug("Error retrieving value data formats map: "
|
||||||
|
+ caught.getLocalizedMessage());
|
||||||
|
UtilsGXT3.alert("Error",
|
||||||
|
"Error retrieving value data formats map!");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onSuccess(
|
||||||
|
HashMap<ColumnDataType, ArrayList<ValueDataFormat>> result) {
|
||||||
|
valueDataFormatMap = result;
|
||||||
|
if (columnName != null && !columnName.isEmpty()) {
|
||||||
|
retrieveColumnRequested();
|
||||||
|
} else {
|
||||||
|
panelCreated = true;
|
||||||
|
create();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
if (columnName != null && !columnName.isEmpty()) {
|
|
||||||
retrieveColumnRequested();
|
|
||||||
} else {
|
|
||||||
panelCreated = true;
|
|
||||||
create();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void retrieveColumnRequested() {
|
protected void retrieveColumnRequested() {
|
||||||
|
@ -711,7 +744,8 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
final LabelProvider<ValueDataFormat> labelProvider) {
|
final LabelProvider<ValueDataFormat> labelProvider) {
|
||||||
comboValueDataFormat
|
comboValueDataFormat
|
||||||
.addSelectionHandler(new SelectionHandler<ValueDataFormat>() {
|
.addSelectionHandler(new SelectionHandler<ValueDataFormat>() {
|
||||||
public void onSelection(SelectionEvent<ValueDataFormat> event) {
|
public void onSelection(
|
||||||
|
SelectionEvent<ValueDataFormat> event) {
|
||||||
Info.display(
|
Info.display(
|
||||||
"Time Format Selected",
|
"Time Format Selected",
|
||||||
"You selected "
|
"You selected "
|
||||||
|
@ -721,7 +755,8 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
+ "!"));
|
+ "!"));
|
||||||
Log.debug("ComboTimeDataFormat selected: "
|
Log.debug("ComboTimeDataFormat selected: "
|
||||||
+ event.getSelectedItem());
|
+ event.getSelectedItem());
|
||||||
ValueDataFormat timeDataFormat = event.getSelectedItem();
|
ValueDataFormat timeDataFormat = event
|
||||||
|
.getSelectedItem();
|
||||||
updateTimeDataFormat(timeDataFormat);
|
updateTimeDataFormat(timeDataFormat);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -749,7 +784,7 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
comboColumnReferenceTypeLabel.setVisible(false);
|
comboColumnReferenceTypeLabel.setVisible(false);
|
||||||
comboColumnMappingLabel.setVisible(false);
|
comboColumnMappingLabel.setVisible(false);
|
||||||
comboPeriodTypeLabel.setVisible(false);
|
comboPeriodTypeLabel.setVisible(false);
|
||||||
comboValueDataFormatLabel.setVisible(false);
|
comboValueDataFormatLabel.setVisible(true);
|
||||||
break;
|
break;
|
||||||
case DIMENSION:
|
case DIMENSION:
|
||||||
comboLocaleTypeLabel.setVisible(false);
|
comboLocaleTypeLabel.setVisible(false);
|
||||||
|
@ -769,7 +804,7 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
comboColumnReferenceTypeLabel.setVisible(false);
|
comboColumnReferenceTypeLabel.setVisible(false);
|
||||||
comboColumnMappingLabel.setVisible(false);
|
comboColumnMappingLabel.setVisible(false);
|
||||||
comboPeriodTypeLabel.setVisible(false);
|
comboPeriodTypeLabel.setVisible(false);
|
||||||
comboValueDataFormatLabel.setVisible(false);
|
comboValueDataFormatLabel.setVisible(true);
|
||||||
break;
|
break;
|
||||||
case TIMEDIMENSION:
|
case TIMEDIMENSION:
|
||||||
comboLocaleTypeLabel.setVisible(false);
|
comboLocaleTypeLabel.setVisible(false);
|
||||||
|
@ -801,10 +836,23 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void updateMeasureType(ColumnDataType type) {
|
protected void updateMeasureType(ColumnDataType type) {
|
||||||
|
ArrayList<ValueDataFormat> valueDataFormats = valueDataFormatMap
|
||||||
|
.get(type);
|
||||||
|
comboValueDataFormat.clear();
|
||||||
|
comboValueDataFormat.reset();
|
||||||
|
comboValueDataFormat.getStore().clear();
|
||||||
|
comboValueDataFormat.getStore().addAll(valueDataFormats);
|
||||||
|
comboValueDataFormat.redraw();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void updateAttributeType(ColumnDataType type) {
|
protected void updateAttributeType(ColumnDataType type) {
|
||||||
|
ArrayList<ValueDataFormat> valueDataFormats = valueDataFormatMap
|
||||||
|
.get(type);
|
||||||
|
comboValueDataFormat.clear();
|
||||||
|
comboValueDataFormat.reset();
|
||||||
|
comboValueDataFormat.getStore().clear();
|
||||||
|
comboValueDataFormat.getStore().addAll(valueDataFormats);
|
||||||
|
comboValueDataFormat.redraw();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -813,12 +861,12 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void updatePeriodType(PeriodDataType periodDataType) {
|
protected void updatePeriodType(PeriodDataType periodDataType) {
|
||||||
ArrayList<ValueDataFormat> timeDataFormats = periodDataType
|
ArrayList<ValueDataFormat> valueDataFormats = periodDataType
|
||||||
.getTimeDataFormats();
|
.getTimeDataFormats();
|
||||||
comboValueDataFormat.clear();
|
comboValueDataFormat.clear();
|
||||||
comboValueDataFormat.reset();
|
comboValueDataFormat.reset();
|
||||||
comboValueDataFormat.getStore().clear();
|
comboValueDataFormat.getStore().clear();
|
||||||
comboValueDataFormat.getStore().addAll(timeDataFormats);
|
comboValueDataFormat.getStore().addAll(valueDataFormats);
|
||||||
comboValueDataFormat.redraw();
|
comboValueDataFormat.redraw();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -912,6 +960,15 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
.selectedMeasure(cd.getDataTypeName()));
|
.selectedMeasure(cd.getDataTypeName()));
|
||||||
comboMeasureType.setValue(ColumnDataTypeStore
|
comboMeasureType.setValue(ColumnDataTypeStore
|
||||||
.selectedMeasureElement(cd.getDataTypeName()));
|
.selectedMeasureElement(cd.getDataTypeName()));
|
||||||
|
ColumnDataType columnDataType = ColumnDataType
|
||||||
|
.getColumnDataTypeFromId(cd.getDataTypeName());
|
||||||
|
ArrayList<ValueDataFormat> valueDataFormats = valueDataFormatMap
|
||||||
|
.get(columnDataType);
|
||||||
|
comboValueDataFormat.clear();
|
||||||
|
comboValueDataFormat.reset();
|
||||||
|
comboValueDataFormat.getStore().clear();
|
||||||
|
comboValueDataFormat.getStore().addAll(valueDataFormats);
|
||||||
|
comboValueDataFormat.redraw();
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (type == ColumnTypeCode.ATTRIBUTE) {
|
if (type == ColumnTypeCode.ATTRIBUTE) {
|
||||||
|
@ -919,6 +976,15 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
.selectedAttribute(cd.getDataTypeName()));
|
.selectedAttribute(cd.getDataTypeName()));
|
||||||
comboAttributeType.setValue(ColumnDataTypeStore
|
comboAttributeType.setValue(ColumnDataTypeStore
|
||||||
.selectedAttributeElement(cd.getDataTypeName()));
|
.selectedAttributeElement(cd.getDataTypeName()));
|
||||||
|
ColumnDataType columnDataType = ColumnDataType
|
||||||
|
.getColumnDataTypeFromId(cd.getDataTypeName());
|
||||||
|
ArrayList<ValueDataFormat> valueDataFormats = valueDataFormatMap
|
||||||
|
.get(columnDataType);
|
||||||
|
comboValueDataFormat.clear();
|
||||||
|
comboValueDataFormat.reset();
|
||||||
|
comboValueDataFormat.getStore().clear();
|
||||||
|
comboValueDataFormat.getStore().addAll(valueDataFormats);
|
||||||
|
comboValueDataFormat.redraw();
|
||||||
} else {
|
} else {
|
||||||
if (type == ColumnTypeCode.CODENAME) {
|
if (type == ColumnTypeCode.CODENAME) {
|
||||||
setLocale(cd.getLocale());
|
setLocale(cd.getLocale());
|
||||||
|
@ -928,12 +994,13 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
changeColumnTypeSession.setPeriodDataType(cd
|
changeColumnTypeSession.setPeriodDataType(cd
|
||||||
.getPeriodDataType());
|
.getPeriodDataType());
|
||||||
comboPeriodType.setValue(cd.getPeriodDataType());
|
comboPeriodType.setValue(cd.getPeriodDataType());
|
||||||
ArrayList<ValueDataFormat> timeDataFormats = cd
|
ArrayList<ValueDataFormat> valueDataFormats = cd
|
||||||
.getPeriodDataType().getTimeDataFormats();
|
.getPeriodDataType().getTimeDataFormats();
|
||||||
comboValueDataFormat.clear();
|
comboValueDataFormat.clear();
|
||||||
comboValueDataFormat.reset();
|
comboValueDataFormat.reset();
|
||||||
comboValueDataFormat.getStore().clear();
|
comboValueDataFormat.getStore().clear();
|
||||||
comboValueDataFormat.getStore().addAll(timeDataFormats);
|
comboValueDataFormat.getStore()
|
||||||
|
.addAll(valueDataFormats);
|
||||||
comboValueDataFormat.redraw();
|
comboValueDataFormat.redraw();
|
||||||
} else {
|
} else {
|
||||||
// TODO
|
// TODO
|
||||||
|
@ -1057,8 +1124,8 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
|
|
||||||
// TODO
|
// TODO
|
||||||
protected void configureBtnChange(ColumnTypeCode columnTypeCode) {
|
protected void configureBtnChange(ColumnTypeCode columnTypeCode) {
|
||||||
ColumnTypeCode sourceTypeCode = ColumnTypeMap
|
ColumnTypeCode sourceTypeCode = ColumnTypeCode
|
||||||
.getColumnTypeCode(sourceColumnChangeType.getTypeCode());
|
.getColumnTypeCodeFromId(sourceColumnChangeType.getTypeCode());
|
||||||
|
|
||||||
switch (sourceTypeCode) {
|
switch (sourceTypeCode) {
|
||||||
case ANNOTATION:
|
case ANNOTATION:
|
||||||
|
@ -1121,7 +1188,16 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
if (dataType != null) {
|
if (dataType != null) {
|
||||||
changeColumnTypeSession
|
changeColumnTypeSession
|
||||||
.setColumnDataTypeTarget(dataType);
|
.setColumnDataTypeTarget(dataType);
|
||||||
callChangeColumnType();
|
ValueDataFormat valueDataFormat = comboValueDataFormat
|
||||||
|
.getCurrentValue();
|
||||||
|
if (valueDataFormat != null) {
|
||||||
|
changeColumnTypeSession.setValueDataFormat(valueDataFormat);
|
||||||
|
callChangeColumnType();
|
||||||
|
} else {
|
||||||
|
UtilsGXT3.alert("Attention",
|
||||||
|
"Type format not selected!");
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
UtilsGXT3.alert("Attention",
|
UtilsGXT3.alert("Attention",
|
||||||
"Column data type not selected!");
|
"Column data type not selected!");
|
||||||
|
@ -1142,7 +1218,15 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
if (dataType != null) {
|
if (dataType != null) {
|
||||||
changeColumnTypeSession
|
changeColumnTypeSession
|
||||||
.setColumnDataTypeTarget(dataType);
|
.setColumnDataTypeTarget(dataType);
|
||||||
callChangeColumnType();
|
ValueDataFormat valueDataFormat = comboValueDataFormat
|
||||||
|
.getCurrentValue();
|
||||||
|
if (valueDataFormat != null) {
|
||||||
|
changeColumnTypeSession.setValueDataFormat(valueDataFormat);
|
||||||
|
callChangeColumnType();
|
||||||
|
} else {
|
||||||
|
UtilsGXT3.alert("Attention",
|
||||||
|
"Type format not selected!");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
UtilsGXT3.alert("Attention",
|
UtilsGXT3.alert("Attention",
|
||||||
"Column data type not selected!");
|
"Column data type not selected!");
|
||||||
|
@ -1206,7 +1290,7 @@ public class ChangeColumnTypePanel extends FramedPanel implements
|
||||||
.getCurrentValue();
|
.getCurrentValue();
|
||||||
if (timeDataFormat != null) {
|
if (timeDataFormat != null) {
|
||||||
changeColumnTypeSession
|
changeColumnTypeSession
|
||||||
.setTimeDataFormat(timeDataFormat);
|
.setValueDataFormat(timeDataFormat);
|
||||||
callChangeColumnType();
|
callChangeColumnType();
|
||||||
} else {
|
} else {
|
||||||
UtilsGXT3.alert("Attention",
|
UtilsGXT3.alert("Attention",
|
||||||
|
|
Loading…
Reference in New Issue