diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/manager/ComponentResultRepository.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/manager/ComponentResultRepository.java index 95c1c7c1..f6bdfbcc 100644 --- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/manager/ComponentResultRepository.java +++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/manager/ComponentResultRepository.java @@ -11,5 +11,4 @@ import java.util.UUID; public interface ComponentResultRepository extends JpaRepository { List findByBoardSerialNumber(String boardSerialNumber); - List findByCertificateSerialNumberAndMismatched(String boardSerialNumber, boolean mismatched); } diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/ComponentResult.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/ComponentResult.java index f513d15e..750a8686 100644 --- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/ComponentResult.java +++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/ComponentResult.java @@ -12,6 +12,7 @@ import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; +import java.util.LinkedList; import java.util.List; /** @@ -26,9 +27,9 @@ public class ComponentResult extends ArchivableEntity { private String boardSerialNumber; @Setter - private String expected; + private String expected = ""; @Setter - private String actual; + private String actual = ""; // embedded component info private String manufacturer; @@ -39,8 +40,9 @@ public class ComponentResult extends ArchivableEntity { // this is a string because component class doesn't inherit serializable. private String componentClass; private AttributeStatus attributeStatus; - private List componentAddress; + private String componentAddress; private boolean version2 = false; + private boolean mismatched = false; private String certificateType; @@ -60,7 +62,13 @@ public class ComponentResult extends ArchivableEntity { if (componentIdentifier.getFieldReplaceable() != null) { this.fieldReplaceable = componentIdentifier.getFieldReplaceable().isTrue(); } - this.componentAddress.addAll(componentIdentifier.getComponentAddress()); + StringBuilder sb = new StringBuilder(); + for (ComponentAddress element : componentIdentifier.getComponentAddress()) { + sb.append(String.format("%s:%s;",element.getAddressTypeValue(), + element.getAddressValue().toString())); + } + componentAddress = sb.toString(); + // V2 fields if (componentIdentifier.isVersion2()) { ComponentIdentifierV2 ciV2 = (ComponentIdentifierV2) componentIdentifier; @@ -68,14 +76,30 @@ public class ComponentResult extends ArchivableEntity { this.attributeStatus = ciV2.getAttributeStatus(); this.version2 = true; } + + checkMatchedStatus(); } /** - * This getting is used to set the component display to red. - * @return result of expected and actual string. + * This method is used to update the mismatched status flag for + * displaying red if there is a failure. */ - public boolean isMismatched() { - return this.actual.equals(this.expected); + public void checkMatchedStatus() { + this.mismatched = this.actual.equals(this.expected); + } + + public List getComponentAddresses() { + List addresses = new LinkedList<>(); + ComponentAddress address; + if (componentAddress != null && !componentAddress.isEmpty()) { + for (String s : componentAddress.split(";", 0)) { + address = new ComponentAddress(); + address.setAddressTypeString(s.split(":")[0]); + address.setAddressValueString(s.split(":")[1]); + addresses.add(address); + } + } + return addresses; } /** diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/attributes/ComponentAddress.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/attributes/ComponentAddress.java index 2b0fe50b..e979c4e2 100644 --- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/attributes/ComponentAddress.java +++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/attributes/ComponentAddress.java @@ -32,6 +32,8 @@ public class ComponentAddress { private ASN1ObjectIdentifier addressType; private ASN1UTF8String addressValue; + private String addressTypeString; + private String addressValueString; /** * Default constructor. diff --git a/HIRS_AttestationCAPortal/src/main/java/hirs/attestationca/portal/page/utils/CertificateStringMapBuilder.java b/HIRS_AttestationCAPortal/src/main/java/hirs/attestationca/portal/page/utils/CertificateStringMapBuilder.java index 9049c5ce..9e01190c 100644 --- a/HIRS_AttestationCAPortal/src/main/java/hirs/attestationca/portal/page/utils/CertificateStringMapBuilder.java +++ b/HIRS_AttestationCAPortal/src/main/java/hirs/attestationca/portal/page/utils/CertificateStringMapBuilder.java @@ -366,6 +366,7 @@ public final class CertificateStringMapBuilder { data.put("componentResults", componentResultRepository .findByBoardSerialNumber(certificate.getPlatformSerial())); + //Get platform Configuration values and set map with it PlatformConfiguration platformConfiguration = certificate.getPlatformConfiguration(); if (platformConfiguration != null) { diff --git a/HIRS_AttestationCAPortal/src/main/webapp/WEB-INF/jsp/certificate-details.jsp b/HIRS_AttestationCAPortal/src/main/webapp/WEB-INF/jsp/certificate-details.jsp index fc98b5ef..629c0e50 100644 --- a/HIRS_AttestationCAPortal/src/main/webapp/WEB-INF/jsp/certificate-details.jsp +++ b/HIRS_AttestationCAPortal/src/main/webapp/WEB-INF/jsp/certificate-details.jsp @@ -648,9 +648,9 @@ Revision: ${component.getRevisionNumber()}
- - ${address.getAddressTypeValue()} address: - ${address.getAddressValue()}
+ + ${address.getAddressTypeString()} address: + ${address.getAddressValueString()}
diff --git a/HIRS_Utils/src/main/java/hirs/utils/VersionHelper.java b/HIRS_Utils/src/main/java/hirs/utils/VersionHelper.java index 86d7e955..28523d65 100644 --- a/HIRS_Utils/src/main/java/hirs/utils/VersionHelper.java +++ b/HIRS_Utils/src/main/java/hirs/utils/VersionHelper.java @@ -59,7 +59,7 @@ public final class VersionHelper { try { version = getFileContents(filename.toString()); } catch (IOException ioEx) { - log.error(ioEx.getMessage()); + log.info(ioEx.getMessage()); version = ""; }