package org.ovirt.engine.core.bll; import org.ovirt.engine.core.compat.*; import org.ovirt.engine.core.common.businessentities.*; import org.ovirt.engine.core.utils.*; import org.ovirt.engine.core.common.queries.*; public class SingleIQueryableQueryData extends QueryData { private IVdcQueryable _cache; @Override public IRegisterQueryUpdatedData GetQueryUpdatedDataFromQueryReturnValue(VdcQueryReturnValue QueryReturnValue, RefObject<Boolean> changed) { Object tempVar = QueryReturnValue.getReturnValue(); IVdcQueryable updatedQueryData = (IVdcQueryable) ((tempVar instanceof IVdcQueryable) ? tempVar : null); changed.argvalue = AreIVdcQueryablesEqual(_cache, updatedQueryData); _cache = updatedQueryData; return updatedQueryData; } public static boolean AreIVdcQueryablesEqual(IVdcQueryable first, IVdcQueryable second) { if (first == null && second == null) { return true; } if ((first == null && second != null) || (first != null && second == null)) { return false; } return ObjectCompareUtils.IsObjectsEqual(first, second, second.getChangeablePropertiesList()); } }