Juan Hernandez has uploaded a new change for review. Change subject: core, frontend: Query to get raw provider certificates ......................................................................
core, frontend: Query to get raw provider certificates Currently we have a query that retrieves the certificates of an external provider converted to a string, and this string is displayed to the user. The RESTAPI can't easily consume this text, it should rather get the raw certificates and render them so that callers can decide what information to extract. To make this possible this patch renames the existing query, to make it clear that it returns just the text, and adds a new one that returns the raw certificates, intended for use by the RESTAPI. Change-Id: Ie5270bff9b671943fdea1c31369b7ad1d0dd4f67 Related-To: Bug-Url: https://bugzilla.redhat.com/1132259 Signed-off-by: Juan Hernandez <juan.hernan...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetProviderCertificateChainQuery.java A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetProviderCertificateChainTextQuery.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java 4 files changed, 41 insertions(+), 17 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/61/33961/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetProviderCertificateChainQuery.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetProviderCertificateChainQuery.java index 352751b..6d872be 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetProviderCertificateChainQuery.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetProviderCertificateChainQuery.java @@ -1,8 +1,5 @@ package org.ovirt.engine.core.bll; -import java.security.cert.Certificate; -import java.util.List; - import org.ovirt.engine.core.bll.provider.ProviderProxy; import org.ovirt.engine.core.bll.provider.ProviderProxyFactory; import org.ovirt.engine.core.common.businessentities.Provider; @@ -21,17 +18,6 @@ protected void executeQueryCommand() { Provider provider = getProvider(); ProviderProxy proxy = ProviderProxyFactory.getInstance().create(provider); - getQueryReturnValue().setReturnValue(chainToString(proxy.getCertificateChain())); - } - - private String chainToString(List<? extends Certificate> chain) { - StringBuilder certStringBuilder = new StringBuilder(); - if (chain != null) { - for( Certificate certificate : chain ) { - certStringBuilder.append(certificate.toString()); - certStringBuilder.append('\n'); - } - } - return certStringBuilder.toString(); + getQueryReturnValue().setReturnValue(proxy.getCertificateChain()); } } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetProviderCertificateChainTextQuery.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetProviderCertificateChainTextQuery.java new file mode 100644 index 0000000..45a261e --- /dev/null +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetProviderCertificateChainTextQuery.java @@ -0,0 +1,37 @@ +package org.ovirt.engine.core.bll; + +import java.security.cert.Certificate; +import java.util.List; + +import org.ovirt.engine.core.bll.provider.ProviderProxy; +import org.ovirt.engine.core.bll.provider.ProviderProxyFactory; +import org.ovirt.engine.core.common.businessentities.Provider; +import org.ovirt.engine.core.common.queries.ProviderQueryParameters; + +public class GetProviderCertificateChainTextQuery<P extends ProviderQueryParameters> extends QueriesCommandBase<P> { + public GetProviderCertificateChainTextQuery(P parameters) { + super(parameters); + } + + private Provider getProvider() { + return getParameters().getProvider(); + } + + @Override + protected void executeQueryCommand() { + Provider provider = getProvider(); + ProviderProxy proxy = ProviderProxyFactory.getInstance().create(provider); + getQueryReturnValue().setReturnValue(chainToString(proxy.getCertificateChain())); + } + + private String chainToString(List<? extends Certificate> chain) { + StringBuilder certStringBuilder = new StringBuilder(); + if (chain != null) { + for( Certificate certificate : chain ) { + certStringBuilder.append(certificate.toString()); + certStringBuilder.append('\n'); + } + } + return certStringBuilder.toString(); + } +} diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java index cac4b0b..c9b542a 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java @@ -48,7 +48,8 @@ GetHostGroupsFromExternalProvider(), GetComputeResourceFromExternalProvider(), GetDiscoveredHostListFromExternalProvider(), - GetProviderCertificateChain(), + GetProviderCertificateChainText, + GetProviderCertificateChain, GetHostsForStorageOperation, GetServerSSHPublicKey, GetServerSSHKeyFingerprint, diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java index 8a9bdae..40b7051 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java @@ -3008,7 +3008,7 @@ return source; } }; - Frontend.getInstance().runQuery(VdcQueryType.GetProviderCertificateChain, new ProviderQueryParameters(provider), aQuery); + Frontend.getInstance().runQuery(VdcQueryType.GetProviderCertificateChainText, new ProviderQueryParameters(provider), aQuery); } private void getAllChildVlanInterfaces(Guid vdsID, -- To view, visit http://gerrit.ovirt.org/33961 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ie5270bff9b671943fdea1c31369b7ad1d0dd4f67 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Juan Hernandez <juan.hernan...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches