package org.ovirt.engine.core.bll; import org.ovirt.engine.core.bll.session.SessionDataContainer; import org.ovirt.engine.core.common.errors.VdcBllErrors; import org.ovirt.engine.core.common.errors.VdcFault; import org.ovirt.engine.core.common.queries.RegisterQueryParameters; import org.ovirt.engine.core.utils.ThreadLocalParamsContainer; public class RegisterQueryQuery<P extends RegisterQueryParameters> extends QueriesCommandBase<P> { public RegisterQueryQuery(P parameters) { super(parameters); } @Override protected void executeQueryCommand() { if (SessionDataContainer.getInstance().GetData("VdcUser") != null) { BackendCallBacksDirector.getInstance().RegisterQuery(getParameters()); } else { VdcFault fault = new VdcFault(); fault.setError(VdcBllErrors.SESSION_ERROR); fault.setMessage("Unkown session, please login again."); CallbackServer.Instance.SearchQueryException(getParameters().getQueryID(), getParameters().getQueryType(), fault); BackendCallBacksDirector.getInstance().RegisterFaultQuery(getParameters().getQueryID(), ThreadLocalParamsContainer.getHttpSessionId()); } } }