use of org.ovirt.engine.ui.common.widget.table.column.AbstractColumn in project ovirt-engine by oVirt.
the class MainVirtualMachineView method initTable.
void initTable() {
getTable().enableColumnResizing();
VmStatusColumn<VM> statusIconColumn = new VmStatusColumn<>();
statusIconColumn.setContextMenuTitle(constants.statusIconVm());
statusIconColumn.makeSortable(VmConditionFieldAutoCompleter.STATUS);
// $NON-NLS-1$
getTable().addColumn(statusIconColumn, constants.empty(), "35px");
VmTypeColumn typeColumn = new VmTypeColumn();
typeColumn.setContextMenuTitle(constants.typeVm());
typeColumn.makeSortable(VmConditionFieldAutoCompleter.TYPE);
// $NON-NLS-1$
getTable().addColumn(typeColumn, constants.empty(), "60px");
AbstractTextColumn<VM> nameColumn = new AbstractLinkColumn<VM>(new FieldUpdater<VM, String>() {
@Override
public void update(int index, VM vm, String value) {
Map<String, String> parameters = new HashMap<>();
parameters.put(FragmentParams.NAME.getName(), vm.getName());
// The link was clicked, now fire an event to switch to details.
getPlaceTransitionHandler().handlePlaceTransition(WebAdminApplicationPlaces.virtualMachineGeneralSubTabPlace, parameters);
}
}) {
@Override
public String getValue(VM object) {
return object.getName();
}
};
nameColumn.makeSortable(VmConditionFieldAutoCompleter.NAME);
// $NON-NLS-1$
getTable().addColumn(nameColumn, constants.nameVm(), "120px");
CommentColumn<VM> commentColumn = new CommentColumn<>();
getTable().addColumnWithHtmlHeader(commentColumn, SafeHtmlUtils.fromSafeConstant(constants.commentLabel()), // $NON-NLS-1$
"75px");
AbstractTextColumn<VM> hostColumn = new AbstractLinkColumn<VM>(new FieldUpdater<VM, String>() {
@Override
public void update(int index, VM vm, String value) {
Map<String, String> parameters = new HashMap<>();
parameters.put(FragmentParams.NAME.getName(), vm.getRunOnVdsName());
getPlaceTransitionHandler().handlePlaceTransition(WebAdminApplicationPlaces.hostGeneralSubTabPlace, parameters);
}
}) {
@Override
public String getValue(VM object) {
return object.getRunOnVdsName();
}
};
hostColumn.makeSortable(VmConditionFieldAutoCompleter.HOST);
// $NON-NLS-1$
getTable().addColumn(hostColumn, constants.hostVm(), "120px");
AbstractTextColumn<VM> ipColumn = new AbstractTextColumn<VM>() {
@Override
public String getValue(VM object) {
return object.getIp();
}
};
ipColumn.makeSortable(VmConditionFieldAutoCompleter.IP);
// $NON-NLS-1$
getTable().addColumn(ipColumn, constants.ipVm(), "120px");
AbstractTextColumn<VM> fqdnColumn = new AbstractTextColumn<VM>() {
@Override
public String getValue(VM object) {
return object.getFqdn();
}
};
fqdnColumn.makeSortable(VmConditionFieldAutoCompleter.FQDN);
// $NON-NLS-1$
getTable().addColumn(fqdnColumn, constants.fqdn(), "120px");
AbstractTextColumn<VM> clusterColumn = new AbstractLinkColumn<VM>(new FieldUpdater<VM, String>() {
@Override
public void update(int index, VM vm, String value) {
Map<String, String> parameters = new HashMap<>();
parameters.put(FragmentParams.NAME.getName(), vm.getClusterName());
getPlaceTransitionHandler().handlePlaceTransition(WebAdminApplicationPlaces.clusterGeneralSubTabPlace, parameters);
}
}) {
@Override
public String getValue(VM object) {
return object.getClusterName();
}
};
clusterColumn.makeSortable(VmConditionFieldAutoCompleter.CLUSTER);
// $NON-NLS-1$
getTable().addColumn(clusterColumn, constants.clusterVm(), "120px");
AbstractTextColumn<VM> dcColumn = new AbstractLinkColumn<VM>(new FieldUpdater<VM, String>() {
@Override
public void update(int index, VM vm, String value) {
Map<String, String> parameters = new HashMap<>();
parameters.put(FragmentParams.NAME.getName(), vm.getStoragePoolName());
getPlaceTransitionHandler().handlePlaceTransition(WebAdminApplicationPlaces.dataCenterStorageSubTabPlace, parameters);
}
}) {
@Override
public String getValue(VM object) {
return object.getStoragePoolName();
}
};
dcColumn.makeSortable(VmConditionFieldAutoCompleter.DATACENTER);
// $NON-NLS-1$
getTable().addColumn(dcColumn, constants.dcVm(), "120px");
getTable().addColumn(new ColumnResizeTableLineChartProgressBar<VM>(getTable(), VmConditionFieldAutoCompleter.MEM_USAGE) {
@Override
protected List<Integer> getProgressValues(VM object) {
return object.getMemoryUsageHistory();
}
}, constants.memoryVm(), // $NON-NLS-1$
"80px");
getTable().addColumn(new ColumnResizeTableLineChartProgressBar<VM>(getTable(), VmConditionFieldAutoCompleter.CPU_USAGE) {
@Override
protected List<Integer> getProgressValues(VM object) {
return object.getCpuUsageHistory();
}
}, constants.cpuVm(), // $NON-NLS-1$
"80px");
getTable().addColumn(new ColumnResizeTableLineChartProgressBar<VM>(getTable(), VmConditionFieldAutoCompleter.NETWORK_USAGE) {
@Override
protected List<Integer> getProgressValues(VM object) {
return object.getNetworkUsageHistory();
}
}, constants.networkVm(), // $NON-NLS-1$
"80px");
AbstractTextColumn<VM> graphicsColumn = new AbstractEnumColumn<VM, UnitVmModel.GraphicsTypes>() {
@Override
protected UnitVmModel.GraphicsTypes getRawValue(VM vm) {
if ((vm.getStatus() == VMStatus.Down) || (vm.getStatus() == VMStatus.ImageLocked)) {
return UnitVmModel.GraphicsTypes.NONE;
}
Map<GraphicsType, GraphicsInfo> graphicsInfos = vm.getGraphicsInfos();
return UnitVmModel.GraphicsTypes.fromGraphicsTypes(graphicsInfos.keySet());
}
};
// $NON-NLS-1$
getTable().addColumn(graphicsColumn, constants.graphicsVm(), "70px");
AbstractTextColumn<VM> statusColumn = new AbstractEnumColumn<VM, VMStatus>() {
@Override
public VMStatus getRawValue(VM object) {
return object.getStatus();
}
@Override
public String getValue(VM vm) {
if (vm.getStatus() == VMStatus.MigratingFrom) {
// will be rendered by progress column
return null;
}
if (vm.getBackgroundOperationDescription() != null) {
// will be rendered by progress column
return null;
}
return super.getValue(vm);
}
};
MigrationProgressColumn migrationProgressColumn = new MigrationProgressColumn();
ImportProgressColumn importProgressColumn = new ImportProgressColumn();
ReasonColumn<VM> reasonColumn = new ReasonColumn<VM>() {
@Override
protected String getReason(VM value) {
return value.getStopReason();
}
};
List<HasCell<VM, ?>> list = new ArrayList<>();
list.add(statusColumn);
list.add(reasonColumn);
list.add(migrationProgressColumn);
list.add(importProgressColumn);
Cell<VM> compositeCell = new StatusCompositeCell<>(list);
AbstractColumn<VM, VM> statusTextColumn = new AbstractColumn<VM, VM>(compositeCell) {
@Override
public VM getValue(VM object) {
return object;
}
@Override
public SafeHtml getTooltip(VM value) {
String stopReason = value.getStopReason();
if (stopReason != null && !stopReason.trim().isEmpty()) {
return SafeHtmlUtils.fromString(stopReason);
}
return null;
}
};
statusTextColumn.makeSortable(VmConditionFieldAutoCompleter.STATUS);
// $NON-NLS-1$
getTable().addColumn(statusTextColumn, constants.statusVm(), "120px");
AbstractTextColumn<VM> uptimeColumn = new AbstractUptimeColumn<VM>() {
@Override
public Double getRawValue(VM object) {
return object.getElapsedTime();
}
};
uptimeColumn.makeSortable(VmConditionFieldAutoCompleter.UPTIME);
// $NON-NLS-1$
getTable().addColumn(uptimeColumn, constants.uptimeVm(), "100px");
AbstractTextColumn<VM> descriptionColumn = new AbstractTextColumn<VM>() {
@Override
public String getValue(VM object) {
return object.getDescription();
}
};
descriptionColumn.makeSortable(VmConditionFieldAutoCompleter.DESCRIPTION);
// $NON-NLS-1$
getTable().addColumn(descriptionColumn, constants.description(), "150px");
}
use of org.ovirt.engine.ui.common.widget.table.column.AbstractColumn in project ovirt-engine by oVirt.
the class ImportVmFromExportDomainPopupView method addAllocationColumn.
protected void addAllocationColumn() {
ArrayList<String> allocationTypes = new ArrayList<>();
allocationTypes.add(constants.thinAllocation());
allocationTypes.add(constants.preallocatedAllocation());
customSelectionCellFormatType = new CustomSelectionCell(allocationTypes);
customSelectionCellFormatType.setStyle(EMPTY_STYLE);
AbstractColumn<DiskImage, String> allocationColumn = new AbstractColumn<DiskImage, String>(customSelectionCellFormatType) {
@Override
public String getValue(DiskImage disk) {
ImportDiskData importData = importModel.getDiskImportData(disk.getId());
if (importData == null) {
return "";
}
return new EnumRenderer<VolumeType>().render(VolumeType.forValue(importData.getSelectedVolumeType().getValue()));
}
@Override
public SafeHtml getTooltip(DiskImage object) {
return SafeHtmlUtils.fromSafeConstant(constants.importAllocationModifiedCollapse());
}
};
allocationColumn.setFieldUpdater((index, disk, value) -> {
VolumeType tempVolumeType = VolumeType.Sparse;
if (value.equals(constants.thinAllocation())) {
tempVolumeType = VolumeType.Sparse;
} else if (value.equals(constants.preallocatedAllocation())) {
tempVolumeType = VolumeType.Preallocated;
}
ImportDiskData importData = importModel.getDiskImportData(disk.getId());
if (importData != null) {
importData.setSelectedVolumeType(tempVolumeType);
}
});
// $NON-NLS-1$
diskTable.addColumn(allocationColumn, constants.allocationDisk(), "150px");
}
use of org.ovirt.engine.ui.common.widget.table.column.AbstractColumn in project ovirt-engine by oVirt.
the class RegisterEntityInfoPanel method getDiskQuotaColumn.
private Column<Disk, String> getDiskQuotaColumn() {
CustomSelectionCell customSelectionCell = new CustomSelectionCell(new ArrayList<String>());
// $NON-NLS-1$
customSelectionCell.setStyle("input-group col-xs-11");
AbstractColumn<Disk, String> column = new AbstractColumn<Disk, String>(customSelectionCell) {
@Override
public String getValue(Disk disk) {
if (disk.getDiskStorageType() == DiskStorageType.LUN) {
return null;
}
List<Quota> quotas = (List<Quota>) registerEntityModel.getStorageQuota().getItems();
if (quotas == null || quotas.isEmpty()) {
return constants.empty();
}
Map<Guid, Quota> diskQuotaMap = registerEntityModel.getDiskQuotaMap().getEntity();
if (diskQuotaMap.get(disk.getId()) == null) {
diskQuotaMap.put(disk.getId(), quotas.get(0));
((CustomSelectionCell) getCell()).setOptions(registerEntityModel.getQuotaNames(quotas));
}
return diskQuotaMap.get(disk.getId()).getQuotaName();
}
};
column.setFieldUpdater((index, disk, value) -> {
Quota quota = registerEntityModel.getQuotaByName(value, (List<Quota>) registerEntityModel.getStorageQuota().getItems());
registerEntityModel.getDiskQuotaMap().getEntity().put(disk.getId(), quota);
});
return column;
}
use of org.ovirt.engine.ui.common.widget.table.column.AbstractColumn in project ovirt-engine by oVirt.
the class DisksViewColumns method getStatusColumn.
public static final AbstractColumn<Disk, Disk> getStatusColumn(String sortBy) {
DiskTransferProgressColumn uploadImageProgressColumn = new DiskTransferProgressColumn();
DiskProgressColumn diskProgressColumn = new DiskProgressColumn();
List<HasCell<Disk, ?>> list = new ArrayList<>();
list.add(getStatusOnlyColumn(null));
list.add(uploadImageProgressColumn);
list.add(diskProgressColumn);
Cell<Disk> compositeCell = new StatusCompositeCell<>(list);
AbstractColumn<Disk, Disk> column = new AbstractColumn<Disk, Disk>(compositeCell) {
@Override
public Disk getValue(Disk object) {
return object;
}
};
if (sortBy != null) {
column.makeSortable(sortBy);
}
return column;
}
use of org.ovirt.engine.ui.common.widget.table.column.AbstractColumn in project ovirt-engine by oVirt.
the class MainHostView method initTable.
void initTable() {
getTable().enableColumnResizing();
HostStatusColumn<VDS> statusIconColumn = new HostStatusColumn<>();
statusIconColumn.setContextMenuTitle(constants.statusIconHost());
// $NON-NLS-1$
getTable().addColumn(statusIconColumn, constants.empty(), "35px");
HostAdditionalStatusColumn additionalStatusColumn = new HostAdditionalStatusColumn();
additionalStatusColumn.setContextMenuTitle(constants.additionalStatusHost());
// $NON-NLS-1$
getTable().addColumn(additionalStatusColumn, constants.empty(), "60px");
AbstractTextColumn<VDS> nameColumn = new AbstractLinkColumn<VDS>(new FieldUpdater<VDS, String>() {
@Override
public void update(int index, VDS host, String value) {
Map<String, String> parameters = new HashMap<>();
parameters.put(FragmentParams.NAME.getName(), host.getName());
// The link was clicked, now fire an event to switch to details.
getPlaceTransitionHandler().handlePlaceTransition(WebAdminApplicationPlaces.hostGeneralSubTabPlace, parameters);
}
}) {
@Override
public String getValue(VDS object) {
return object.getName();
}
};
nameColumn.makeSortable(VdsConditionFieldAutoCompleter.NAME);
// $NON-NLS-1$
getTable().addColumn(nameColumn, constants.nameHost(), "150px");
CommentColumn<VDS> commentColumn = new CommentColumn<>();
getTable().addColumnWithHtmlHeader(commentColumn, SafeHtmlUtils.fromSafeConstant(constants.commentLabel()), // $NON-NLS-1$
"75px");
AbstractTextColumn<VDS> hostColumn = new AbstractTextColumn<VDS>() {
@Override
public String getValue(VDS object) {
return object.getHostName();
}
};
hostColumn.makeSortable(VdsConditionFieldAutoCompleter.ADDRESS);
// $NON-NLS-1$
getTable().addColumn(hostColumn, constants.ipHost(), "150px");
AbstractTextColumn<VDS> clusterColumn = new AbstractLinkColumn<VDS>(new FieldUpdater<VDS, String>() {
@Override
public void update(int index, VDS host, String value) {
Map<String, String> parameters = new HashMap<>();
parameters.put(FragmentParams.NAME.getName(), host.getClusterName());
getPlaceTransitionHandler().handlePlaceTransition(WebAdminApplicationPlaces.clusterGeneralSubTabPlace, parameters);
}
}) {
@Override
public String getValue(VDS object) {
return object.getClusterName();
}
};
clusterColumn.makeSortable(VdsConditionFieldAutoCompleter.CLUSTER);
// $NON-NLS-1$
getTable().addColumn(clusterColumn, constants.clusterHost(), "150px");
if (ApplicationModeHelper.getUiMode() != ApplicationMode.GlusterOnly) {
AbstractTextColumn<VDS> dcColumn = new AbstractLinkColumn<VDS>(new FieldUpdater<VDS, String>() {
@Override
public void update(int index, VDS host, String value) {
Map<String, String> parameters = new HashMap<>();
parameters.put(FragmentParams.NAME.getName(), host.getStoragePoolName());
getPlaceTransitionHandler().handlePlaceTransition(WebAdminApplicationPlaces.dataCenterStorageSubTabPlace, parameters);
}
}) {
@Override
public String getValue(VDS object) {
return object.getStoragePoolName();
}
};
dcColumn.makeSortable(VdsConditionFieldAutoCompleter.DATACENTER);
// $NON-NLS-1$
getTable().addColumn(dcColumn, constants.dcHost(), "150px");
}
AbstractTextColumn<VDS> statusColumn = new AbstractEnumColumn<VDS, VDSStatus>() {
@Override
public VDSStatus getRawValue(VDS object) {
return object.getStatus();
}
};
ReasonColumn<VDS> reasonColumn = new ReasonColumn<VDS>() {
@Override
protected String getReason(VDS value) {
return value.getMaintenanceReason();
}
};
List<HasCell<VDS, ?>> list = new ArrayList<>();
list.add(statusColumn);
list.add(reasonColumn);
Cell<VDS> compositeCell = new StatusCompositeCell<>(list);
AbstractColumn<VDS, VDS> statusTextColumn = new AbstractColumn<VDS, VDS>(compositeCell) {
@Override
public VDS getValue(VDS object) {
return object;
}
@Override
public SafeHtml getTooltip(VDS value) {
String maintenanceReason = value.getMaintenanceReason();
if (maintenanceReason != null && !maintenanceReason.trim().isEmpty()) {
return SafeHtmlUtils.fromString(maintenanceReason);
}
return null;
}
};
statusTextColumn.makeSortable(VdsConditionFieldAutoCompleter.STATUS);
// $NON-NLS-1$
getTable().addColumn(statusTextColumn, constants.statusHost(), "100px");
if (ApplicationModeHelper.getUiMode() != ApplicationMode.GlusterOnly) {
VmCountColumn vmCountColumn = new VmCountColumn();
vmCountColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
vmCountColumn.makeSortable(VdsConditionFieldAutoCompleter.ACTIVE_VMS);
// $NON-NLS-1$
getTable().addColumn(vmCountColumn, constants.vmsCount(), "110px");
}
AbstractPercentColumn<VDS> memColumn = new AbstractPercentColumn<VDS>() {
@Override
public Integer getProgressValue(VDS object) {
return object.getUsageMemPercent();
}
};
memColumn.makeSortable(VdsConditionFieldAutoCompleter.MEM_USAGE);
// $NON-NLS-1$
getTable().addColumn(memColumn, constants.memoryHost(), "80px");
AbstractPercentColumn<VDS> cpuColumn = new AbstractPercentColumn<VDS>() {
@Override
public Integer getProgressValue(VDS object) {
return object.getUsageCpuPercent();
}
};
cpuColumn.makeSortable(VdsConditionFieldAutoCompleter.CPU_USAGE);
// $NON-NLS-1$
getTable().addColumn(cpuColumn, constants.cpuHost(), "80px");
AbstractPercentColumn<VDS> netColumn = new AbstractPercentColumn<VDS>() {
@Override
public Integer getProgressValue(VDS object) {
return object.getUsageNetworkPercent();
}
};
netColumn.makeSortable(VdsConditionFieldAutoCompleter.NETWORK_USAGE);
// $NON-NLS-1$
getTable().addColumn(netColumn, constants.networkHost(), "80px");
if (ApplicationModeHelper.getUiMode() != ApplicationMode.GlusterOnly) {
AbstractTextColumn<VDS> spmColumn = new AbstractTextColumn<VDS>() {
@Override
public String getValue(VDS object) {
int value = object.getVdsSpmPriority();
int lowValue = defaultSpmPriority / 2;
int highValue = defaultSpmPriority + (maxSpmPriority - defaultSpmPriority) / 2;
if (object.getSpmStatus() != VdsSpmStatus.None) {
return object.getSpmStatus().name();
}
if (value == -1) {
return constants.spmNeverText();
} else if (value == lowValue) {
return constants.spmLowText();
} else if (value == defaultSpmPriority) {
return constants.spmNormalText();
} else if (value == highValue) {
return constants.spmHighText();
}
return constants.spmCustomText();
}
};
// $NON-NLS-1$
getTable().addColumn(spmColumn, constants.spmPriorityHost(), "100px");
}
}
Aggregations