package org.ovirt.engine.ui.webadmin.section.main.view.tab.storage; import java.util.ArrayList; import java.util.Date; import java.util.Map.Entry; import org.ovirt.engine.core.common.businessentities.DiskImage; import org.ovirt.engine.core.common.businessentities.OriginType; import org.ovirt.engine.core.common.businessentities.VmTemplate; import org.ovirt.engine.core.common.businessentities.storage_domains; import org.ovirt.engine.ui.uicommonweb.models.storage.StorageListModel; import org.ovirt.engine.ui.uicommonweb.models.storage.TemplateBackupModel; import org.ovirt.engine.ui.webadmin.section.main.presenter.tab.storage.SubTabStorageTemplateBackupPresenter; import org.ovirt.engine.ui.webadmin.section.main.view.AbstractSubTabTableView; import org.ovirt.engine.ui.webadmin.uicommon.model.SearchableDetailModelProvider; import org.ovirt.engine.ui.webadmin.widget.table.column.EnumColumn; import org.ovirt.engine.ui.webadmin.widget.table.column.GeneralDateTimeColumn; import org.ovirt.engine.ui.webadmin.widget.table.column.TextColumnWithTooltip; import com.google.inject.Inject; public class SubTabStorageTemplateBackupView extends AbstractSubTabTableView<storage_domains, Entry<VmTemplate, ArrayList<DiskImage>>, StorageListModel, TemplateBackupModel> implements SubTabStorageTemplateBackupPresenter.ViewDef { @Inject public SubTabStorageTemplateBackupView(SearchableDetailModelProvider<Entry<VmTemplate, ArrayList<DiskImage>>, StorageListModel, TemplateBackupModel> modelProvider) { super(modelProvider); initTable(); initWidget(getTable()); } void initTable() { TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>> nameColumn = new TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>>() { @Override public String getValue(Entry<VmTemplate, ArrayList<DiskImage>> object) { return object.getKey().getname(); } }; getTable().addColumn(nameColumn, "Name"); TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>> originColumn = new EnumColumn<Entry<VmTemplate, ArrayList<DiskImage>>, OriginType>() { @Override protected OriginType getRawValue(Entry<VmTemplate, ArrayList<DiskImage>> object) { return object.getKey().getorigin(); } }; getTable().addColumn(originColumn, "Origin"); TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>> memoryColumn = new TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>>() { @Override public String getValue(Entry<VmTemplate, ArrayList<DiskImage>> object) { return String.valueOf(object.getKey().getmem_size_mb()) + " MB"; } }; getTable().addColumn(memoryColumn, "Memory"); TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>> cpuColumn = new TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>>() { @Override public String getValue(Entry<VmTemplate, ArrayList<DiskImage>> object) { return String.valueOf(object.getKey().getnum_of_cpus()); } }; getTable().addColumn(cpuColumn, "CPUs"); TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>> diskColumn = new TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>>() { @Override public String getValue(Entry<VmTemplate, ArrayList<DiskImage>> object) { return String.valueOf(object.getKey().getDiskMap().size()); } }; getTable().addColumn(diskColumn, "Disks"); TextColumnWithTooltip<Entry<VmTemplate, ArrayList<DiskImage>>> creationDateColumn = new GeneralDateTimeColumn<Entry<VmTemplate, ArrayList<DiskImage>>>() { @Override protected Date getRawValue(Entry<VmTemplate, ArrayList<DiskImage>> object) { return object.getKey().getcreation_date(); } }; getTable().addColumn(creationDateColumn, "Creation Date"); } }