Daniel Erez has uploaded a new change for review. Change subject: webadmin: StorageRegisterEntityListModel - extract syncSearch ......................................................................
webadmin: StorageRegisterEntityListModel - extract syncSearch Extracted logic of syncSearch to StorageRegisterEntityListModel. Change-Id: Ia9cb6a096c61be38acfc3c93dc7399fdcfc506df Signed-off-by: Daniel Erez <[email protected]> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterEntityListModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterTemplateListModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterVmListModel.java 3 files changed, 29 insertions(+), 50 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/64/28764/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterEntityListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterEntityListModel.java index f28b7d0..3e6568f 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterEntityListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterEntityListModel.java @@ -1,7 +1,14 @@ package org.ovirt.engine.ui.uicommonweb.models.storage; +import org.ovirt.engine.core.common.businessentities.IVdcQueryable; import org.ovirt.engine.core.common.businessentities.StorageDomain; import org.ovirt.engine.core.common.businessentities.StorageDomainSharedStatus; +import org.ovirt.engine.core.common.queries.IdQueryParameters; +import org.ovirt.engine.core.common.queries.VdcQueryReturnValue; +import org.ovirt.engine.core.common.queries.VdcQueryType; +import org.ovirt.engine.ui.frontend.AsyncQuery; +import org.ovirt.engine.ui.frontend.Frontend; +import org.ovirt.engine.ui.frontend.INewAsyncCallback; import org.ovirt.engine.ui.uicommonweb.Linq; import org.ovirt.engine.ui.uicommonweb.UICommand; import org.ovirt.engine.ui.uicommonweb.models.SearchableListModel; @@ -10,6 +17,7 @@ import java.util.ArrayList; import java.util.Collections; +import java.util.Comparator; import java.util.List; public abstract class StorageRegisterEntityListModel extends SearchableListModel { @@ -82,6 +90,25 @@ } } + protected <T extends IVdcQueryable> void syncSearch(VdcQueryType vdcQueryType, final Comparator<T> comparator) { + if (getEntity() == null) { + return; + } + + IdQueryParameters parameters = new IdQueryParameters((getEntity()).getId()); + parameters.setRefresh(getIsQueryFirstTime()); + + Frontend.getInstance().runQuery(vdcQueryType, parameters, + new AsyncQuery(this, new INewAsyncCallback() { + @Override + public void onSuccess(Object model, Object ReturnValue) { + List<T> entities = (ArrayList<T>) ((VdcQueryReturnValue) ReturnValue).getReturnValue(); + Collections.sort(entities, comparator); + setItems(entities); + } + })); + } + @Override public void executeCommand(UICommand command) { super.executeCommand(command); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterTemplateListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterTemplateListModel.java index 32aee14..2ae93d3 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterTemplateListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterTemplateListModel.java @@ -1,21 +1,12 @@ package org.ovirt.engine.ui.uicommonweb.models.storage; import org.ovirt.engine.core.common.businessentities.VmTemplate; -import org.ovirt.engine.core.common.queries.IdQueryParameters; -import org.ovirt.engine.core.common.queries.VdcQueryReturnValue; import org.ovirt.engine.core.common.queries.VdcQueryType; -import org.ovirt.engine.ui.frontend.AsyncQuery; -import org.ovirt.engine.ui.frontend.Frontend; -import org.ovirt.engine.ui.frontend.INewAsyncCallback; import org.ovirt.engine.ui.uicommonweb.Linq; import org.ovirt.engine.ui.uicommonweb.help.HelpTag; import org.ovirt.engine.ui.uicommonweb.models.vms.ImportEntityData; import org.ovirt.engine.ui.uicommonweb.models.vms.ImportTemplateData; import org.ovirt.engine.ui.uicompat.ConstantsManager; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; public class StorageRegisterTemplateListModel extends StorageRegisterEntityListModel { @@ -42,22 +33,7 @@ @Override protected void syncSearch() { - if (getEntity() == null) { - return; - } - - IdQueryParameters parameters = new IdQueryParameters((getEntity()).getId()); - parameters.setRefresh(getIsQueryFirstTime()); - - Frontend.getInstance().runQuery(VdcQueryType.GetUnregisteredVmTemplates, parameters, - new AsyncQuery(this, new INewAsyncCallback() { - @Override - public void onSuccess(Object model, Object ReturnValue) { - List<VmTemplate> templates = (ArrayList<VmTemplate>) ((VdcQueryReturnValue) ReturnValue).getReturnValue(); - Collections.sort(templates, new Linq.VmTemplateComparator()); - setItems(templates); - } - })); + syncSearch(VdcQueryType.GetUnregisteredVmTemplates, new Linq.VmTemplateComparator()); } @Override diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterVmListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterVmListModel.java index 4a4504f..0c3c9e7b 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterVmListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageRegisterVmListModel.java @@ -1,21 +1,12 @@ package org.ovirt.engine.ui.uicommonweb.models.storage; import org.ovirt.engine.core.common.businessentities.VM; -import org.ovirt.engine.core.common.queries.IdQueryParameters; -import org.ovirt.engine.core.common.queries.VdcQueryReturnValue; import org.ovirt.engine.core.common.queries.VdcQueryType; -import org.ovirt.engine.ui.frontend.AsyncQuery; -import org.ovirt.engine.ui.frontend.Frontend; -import org.ovirt.engine.ui.frontend.INewAsyncCallback; import org.ovirt.engine.ui.uicommonweb.Linq; import org.ovirt.engine.ui.uicommonweb.help.HelpTag; import org.ovirt.engine.ui.uicommonweb.models.vms.ImportEntityData; import org.ovirt.engine.ui.uicommonweb.models.vms.ImportVmData; import org.ovirt.engine.ui.uicompat.ConstantsManager; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; public class StorageRegisterVmListModel extends StorageRegisterEntityListModel { @@ -42,22 +33,7 @@ @Override protected void syncSearch() { - if (getEntity() == null) { - return; - } - - IdQueryParameters parameters = new IdQueryParameters((getEntity()).getId()); - parameters.setRefresh(getIsQueryFirstTime()); - - Frontend.getInstance().runQuery(VdcQueryType.GetUnregisteredVms, parameters, - new AsyncQuery(this, new INewAsyncCallback() { - @Override - public void onSuccess(Object model, Object ReturnValue) { - List<VM> vms = (ArrayList<VM>) ((VdcQueryReturnValue) ReturnValue).getReturnValue(); - Collections.sort(vms, new Linq.VmComparator()); - setItems(vms); - } - })); + syncSearch(VdcQueryType.GetUnregisteredVms, new Linq.VmComparator()); } @Override -- To view, visit http://gerrit.ovirt.org/28764 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia9cb6a096c61be38acfc3c93dc7399fdcfc506df Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Daniel Erez <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
