package org.ovirt.engine.core.bll; import org.ovirt.engine.core.common.config.Config; import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.common.queries.SignStringParameters; import org.ovirt.engine.core.utils.crypt.EngineEncryptionUtils; import org.ovirt.engine.core.uutils.crypto.ticket.TicketEncoder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class SignStringQuery<P extends SignStringParameters> extends QueriesCommandBase<P> { private static final Logger log = LoggerFactory.getLogger(SignStringQuery.class); public SignStringQuery(P parameters) { super(parameters); } @Override protected void executeQueryCommand() { getQueryReturnValue().setSucceeded(false); try { getQueryReturnValue().setReturnValue( new TicketEncoder( EngineEncryptionUtils.getPrivateKeyEntry().getCertificate(), EngineEncryptionUtils.getPrivateKeyEntry().getPrivateKey(), Config.<Integer> getValue (ConfigValues.WebSocketProxyTicketValiditySeconds) ).encode(getParameters().getString()) ); getQueryReturnValue().setSucceeded(true); } catch (Exception e) { log.error("Ticket encoding failed: {}", e.getMessage()); log.debug("Exception", e); } } }