X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=models-pdp%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fpolicy%2Fmodels%2Fpdp%2Fconcepts%2FPdpStatistics.java;h=13b3bdc33ff45a87de7395029dbcd8032d7a28f7;hb=f78237c84420aa8db35ae70d8c9d177307471474;hp=36e8d00f8d0523e6d295c6de72591abfe2412342;hpb=a2ec30735da8be9228c4360489660f17030dcb07;p=policy%2Fmodels.git diff --git a/models-pdp/src/main/java/org/onap/policy/models/pdp/concepts/PdpStatistics.java b/models-pdp/src/main/java/org/onap/policy/models/pdp/concepts/PdpStatistics.java index 36e8d00f8..13b3bdc33 100644 --- a/models-pdp/src/main/java/org/onap/policy/models/pdp/concepts/PdpStatistics.java +++ b/models-pdp/src/main/java/org/onap/policy/models/pdp/concepts/PdpStatistics.java @@ -1,6 +1,6 @@ /*- * ============LICENSE_START======================================================= - * Copyright (C) 2019 Nordix Foundation. + * Copyright (C) 2019-2021 Nordix Foundation. * Modifications Copyright (C) 2019 AT&T Intellectual Property. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); @@ -21,25 +21,59 @@ package org.onap.policy.models.pdp.concepts; -import lombok.Getter; -import lombok.Setter; -import lombok.ToString; + +import java.time.Instant; +import java.util.List; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.NonNull; +import org.onap.policy.models.base.PfUtils; /** * Class to represent statistics of a running PDP. * * @author Ram Krishna Verma (ram.krishna.verma@est.tech) */ -@Getter -@Setter -@ToString +@Data +@NoArgsConstructor public class PdpStatistics { private String pdpInstanceId; - private long policyDeployCount; - private long policyDeploySuccessCount; - private long policyDeployFailCount; + private Instant timeStamp; + private Long generatedId; + private String pdpGroupName; + private String pdpSubGroupName; private long policyExecutedCount; private long policyExecutedSuccessCount; private long policyExecutedFailCount; + private long policyDeployCount; + private long policyDeploySuccessCount; + private long policyDeployFailCount; + private long policyUndeployCount; + private long policyUndeploySuccessCount; + private long policyUndeployFailCount; + private List engineStats; + + /** + * Constructs the object, making a deep copy. + * + * @param source source from which to copy + */ + public PdpStatistics(@NonNull PdpStatistics source) { + this.pdpInstanceId = source.pdpInstanceId; + this.timeStamp = source.timeStamp; + this.generatedId = source.generatedId; + this.pdpGroupName = source.pdpGroupName; + this.pdpSubGroupName = source.pdpSubGroupName; + this.policyExecutedCount = source.policyExecutedCount; + this.policyExecutedFailCount = source.policyExecutedFailCount; + this.policyExecutedSuccessCount = source.policyExecutedSuccessCount; + this.policyDeployCount = source.policyDeployCount; + this.policyDeployFailCount = source.policyDeployFailCount; + this.policyDeploySuccessCount = source.policyDeploySuccessCount; + this.policyUndeployCount = source.policyUndeployCount; + this.policyUndeployFailCount = source.policyUndeployFailCount; + this.policyUndeploySuccessCount = source.policyUndeploySuccessCount; + this.engineStats = PfUtils.mapList(source.engineStats, PdpEngineWorkerStatistics::new, null); + } }