StatisticsCollection.java
/*
* GovWay - A customizable API Gateway
* https://govway.org
*
* Copyright (c) 2005-2024 Link.it srl (https://link.it).
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 3, as published by
* the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
package org.openspcoop2.pdd.core.handlers.statistics;
import java.util.List;
import org.openspcoop2.core.constants.TipoPdD;
import org.openspcoop2.protocol.sdk.IProtocolFactory;
import org.openspcoop2.protocol.sdk.builder.EsitoTransazione;
import org.openspcoop2.protocol.utils.EsitiProperties;
import org.openspcoop2.utils.LoggerWrapperFactory;
import org.openspcoop2.utils.date.DateManager;
import org.slf4j.Logger;
/**
* StatisticsCollection
*
* @author Poli Andrea (apoli@link.it)
* @author $Author$
* @version $Rev$, $Date$
*/
public class StatisticsCollection {
private static final StatisticsCollection statisticsCollection = new StatisticsCollection();
public static StatisticsCollection getStatisticsCollection(){
return StatisticsCollection.statisticsCollection;
}
private static final long SOGLIA_DIMENSIONE = Long.MAX_VALUE-100000;
private static final int SOGLIA_TEMPORALE = 1000*60*30; // statistiche relative all'ultima mezz'ora.
private static Logger log = LoggerWrapperFactory.getLogger(StatisticsCollection.class);
private static boolean isEsitoOk(EsitoTransazione esito, IProtocolFactory<?> protocollo){
try{
if(esito==null) {
return false;
}
List<Integer> esitiOk = EsitiProperties.getInstance(log,protocollo).getEsitiCodeOk();
for (Integer esitoOk : esitiOk) {
if(esitoOk!=null && esito.getCode()!=null) {
if(esitoOk.intValue() == esito.getCode().intValue()){
return true;
}
}
}
return false;
}catch(Exception e){
// non sono previsti errori
throw new RuntimeException(e.getMessage(),e);
}
}
/* ***** UPDATE STATO ******* */
private static org.openspcoop2.utils.Semaphore semaphore = new org.openspcoop2.utils.Semaphore("StatisticsCollection");
public static void update(Statistic stat){
semaphore.acquireThrowRuntime("update");
try {
_update(stat);
}finally {
semaphore.release("update");
}
}
private static void _update(Statistic stat){
if(!TipoPdD.APPLICATIVA.equals(stat.getTipoPdD()) &&
!TipoPdD.DELEGATA.equals(stat.getTipoPdD()) ){
return;
}
// Check soglia temporale
if(StatisticsCollection.getStatisticsCollection().dataUltimoRefresh>0){
if((DateManager.getTimeMillis()-StatisticsCollection.getStatisticsCollection().dataUltimoRefresh)>StatisticsCollection.SOGLIA_TEMPORALE){
StatisticsCollection.reset();
}
}
else{
// Inserisco data arrivo richiesta
StatisticsCollection.getStatisticsCollection().dataUltimoRefresh = stat.getTimeMillisIngressoRichiesta();
if(StatisticsCollection.getStatisticsCollection().dataUltimoRefresh<=0){
StatisticsCollection.getStatisticsCollection().dataUltimoRefresh = DateManager.getTimeMillis();
}
}
// Cechk soglia sulla dimensione
/*if(needResetForOverSizeLong()){
reset();
}*/
// Contatori
StatisticsCollection.incrementCount(stat.getEsito(), stat.getProtocollo(), StatisticsCollection.statisticsCollection.statNumeroTransazioni);
if(TipoPdD.APPLICATIVA.equals(stat.getTipoPdD())){
StatisticsCollection.incrementCount(stat.getEsito(), stat.getProtocollo(), StatisticsCollection.statisticsCollection.statNumeroTransazioni_PA);
}else if(TipoPdD.DELEGATA.equals(stat.getTipoPdD())){
StatisticsCollection.incrementCount(stat.getEsito(), stat.getProtocollo(), StatisticsCollection.statisticsCollection.statNumeroTransazioni_PD);
}
// Latenze
if(isEsitoOk(stat.getEsito(),stat.getProtocollo())){
long latenzaTotale = -1;
if(stat.getTimeMillisUscitaRisposta()>0 && stat.getTimeMillisIngressoRichiesta()>0)
latenzaTotale = stat.getTimeMillisUscitaRisposta() - stat.getTimeMillisIngressoRichiesta();
if(latenzaTotale>0){
StatisticsCollection.computeLatenza(latenzaTotale, StatisticsCollection.statisticsCollection.statLatenzaAttraversamento);
if(TipoPdD.APPLICATIVA.equals(stat.getTipoPdD())){
StatisticsCollection.computeLatenza(latenzaTotale, StatisticsCollection.statisticsCollection.statLatenzaAttraversamento_PA);
}else if(TipoPdD.DELEGATA.equals(stat.getTipoPdD())){
StatisticsCollection.computeLatenza(latenzaTotale, StatisticsCollection.statisticsCollection.statLatenzaAttraversamento_PD);
}
}
long latenzaRichiesta = -1;
if(stat.getTimeMillisUscitaRichiesta()>0 && stat.getTimeMillisIngressoRichiesta()>0)
latenzaRichiesta = stat.getTimeMillisUscitaRichiesta() - stat.getTimeMillisIngressoRichiesta();
if(latenzaRichiesta>0){
StatisticsCollection.computeLatenza(latenzaRichiesta, StatisticsCollection.statisticsCollection.statLatenzaAttraversamento_request);
if(TipoPdD.APPLICATIVA.equals(stat.getTipoPdD())){
StatisticsCollection.computeLatenza(latenzaRichiesta, StatisticsCollection.statisticsCollection.statLatenzaAttraversamento_PA_request);
}else if(TipoPdD.DELEGATA.equals(stat.getTipoPdD())){
StatisticsCollection.computeLatenza(latenzaRichiesta, StatisticsCollection.statisticsCollection.statLatenzaAttraversamento_PD_request);
}
}
long latenzaRisposta = -1;
if(stat.getTimeMillisUscitaRisposta()>0 && stat.getTimeMillisIngressoRisposta()>0)
latenzaRisposta = stat.getTimeMillisUscitaRisposta() - stat.getTimeMillisIngressoRisposta();
if(latenzaRisposta>0){
StatisticsCollection.computeLatenza(latenzaRisposta, StatisticsCollection.statisticsCollection.statLatenzaAttraversamento_response);
if(TipoPdD.APPLICATIVA.equals(stat.getTipoPdD())){
StatisticsCollection.computeLatenza(latenzaRisposta, StatisticsCollection.statisticsCollection.statLatenzaAttraversamento_PA_response);
}else if(TipoPdD.DELEGATA.equals(stat.getTipoPdD())){
StatisticsCollection.computeLatenza(latenzaRisposta, StatisticsCollection.statisticsCollection.statLatenzaAttraversamento_PD_response);
}
}
}
// Dimensioni
long inRequestSize = stat.getDimensioneIngressoRichiesta();
if(inRequestSize>0){
StatisticsCollection.computeDimensione(inRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio);
StatisticsCollection.computeDimensione(inRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_in_request);
if(TipoPdD.APPLICATIVA.equals(stat.getTipoPdD())){
StatisticsCollection.computeDimensione(inRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PA);
StatisticsCollection.computeDimensione(inRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PA_in_request);
}else if(TipoPdD.DELEGATA.equals(stat.getTipoPdD())){
StatisticsCollection.computeDimensione(inRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PD);
StatisticsCollection.computeDimensione(inRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PD_in_request);
}
}
long outRequestSize = stat.getDimensioneUscitaRichiesta();
if(outRequestSize>0){
StatisticsCollection.computeDimensione(outRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio);
StatisticsCollection.computeDimensione(outRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_out_request);
if(TipoPdD.APPLICATIVA.equals(stat.getTipoPdD())){
StatisticsCollection.computeDimensione(outRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PA);
StatisticsCollection.computeDimensione(outRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PA_out_request);
}else if(TipoPdD.DELEGATA.equals(stat.getTipoPdD())){
StatisticsCollection.computeDimensione(outRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PD);
StatisticsCollection.computeDimensione(outRequestSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PD_out_request);
}
}
long inResponseSize = stat.getDimensioneIngressoRisposta();
if(inResponseSize>0){
StatisticsCollection.computeDimensione(inResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio);
StatisticsCollection.computeDimensione(inResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_in_response);
if(TipoPdD.APPLICATIVA.equals(stat.getTipoPdD())){
StatisticsCollection.computeDimensione(inResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PA);
StatisticsCollection.computeDimensione(inResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PA_in_response);
}else if(TipoPdD.DELEGATA.equals(stat.getTipoPdD())){
StatisticsCollection.computeDimensione(inResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PD);
StatisticsCollection.computeDimensione(inResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PD_in_response);
}
}
long outResponseSize = stat.getDimensioneUscitaRisposta();
if(outResponseSize>0){
StatisticsCollection.computeDimensione(outResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio);
StatisticsCollection.computeDimensione(outResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_out_response);
if(TipoPdD.APPLICATIVA.equals(stat.getTipoPdD())){
StatisticsCollection.computeDimensione(outResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PA);
StatisticsCollection.computeDimensione(outResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PA_out_response);
}else if(TipoPdD.DELEGATA.equals(stat.getTipoPdD())){
StatisticsCollection.computeDimensione(outResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PD);
StatisticsCollection.computeDimensione(outResponseSize, StatisticsCollection.statisticsCollection.statDimensioneMessaggio_PD_out_response);
}
}
}
@SuppressWarnings("unused")
private static boolean needResetForOverSizeLong(){
if(StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento.tmp_latenzaMediaAttraversamento_sumLatenze>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_request.tmp_latenzaMediaAttraversamento_sumLatenze>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_response.tmp_latenzaMediaAttraversamento_sumLatenze>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PD.tmp_latenzaMediaAttraversamento_sumLatenze>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PD_request.tmp_latenzaMediaAttraversamento_sumLatenze>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PD_response.tmp_latenzaMediaAttraversamento_sumLatenze>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PA.tmp_latenzaMediaAttraversamento_sumLatenze>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PA_request.tmp_latenzaMediaAttraversamento_sumLatenze>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PA_response.tmp_latenzaMediaAttraversamento_sumLatenze>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_in_request.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_out_request.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_in_response.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_out_response.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD_in_request.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD_out_request.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD_in_response.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD_out_response.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA_in_request.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA_out_request.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA_in_response.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
if(StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA_out_response.tmp_dimensioneMediaMessaggio_sumDimensioni>StatisticsCollection.SOGLIA_DIMENSIONE){
return true;
}
return false;
}
public static void reset(){
StatisticsCollection.getStatisticsCollection().dataUltimoRefresh = -1;
StatisticsCollection.getStatisticsCollection().statNumeroTransazioni = new StatisticCount();
StatisticsCollection.getStatisticsCollection().statNumeroTransazioni_PD = new StatisticCount();
StatisticsCollection.getStatisticsCollection().statNumeroTransazioni_PA = new StatisticCount();
StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento = new StatisticTime();
StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_request = new StatisticTime();
StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_response = new StatisticTime();
StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PD = new StatisticTime();
StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PD_request = new StatisticTime();
StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PD_response = new StatisticTime();
StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PA = new StatisticTime();
StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PA_request = new StatisticTime();
StatisticsCollection.getStatisticsCollection().statLatenzaAttraversamento_PA_response = new StatisticTime();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_in_request = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_out_request = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_in_response = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_out_response = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_response = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD_in_request = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD_out_request = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD_in_response = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PD_out_response = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA_in_request = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA_out_request = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA_in_response = new StatisticSize();
StatisticsCollection.getStatisticsCollection().statDimensioneMessaggio_PA_out_response = new StatisticSize();
}
private static void incrementCount(EsitoTransazione esito,IProtocolFactory<?> protocollo, StatisticCount statCount){
statCount.numeroTransazioni++;
if(isEsitoOk(esito,protocollo)){
statCount.numeroTransazioni_esitoOK++;
}else{
statCount.numeroTransazioni_esitoErrore++;
}
}
private static void computeLatenza(long latenza,StatisticTime statTime){
// Minima
if(statTime.latenzaMinimaAttraversamento<=0)
statTime.latenzaMinimaAttraversamento = latenza;
else if(latenza<statTime.latenzaMinimaAttraversamento)
statTime.latenzaMinimaAttraversamento = latenza;
// Massima
if(latenza>statTime.latenzaMassimaAttraversamento)
statTime.latenzaMassimaAttraversamento = latenza;
// Media
statTime.tmp_latenzaMediaAttraversamento_sumLatenze+=latenza;
statTime.tmp_latenzaMediaAttraversamento_countTransazioni++;
statTime.latenzaMediaAttraversamento = statTime.tmp_latenzaMediaAttraversamento_sumLatenze/statTime.tmp_latenzaMediaAttraversamento_countTransazioni;
// Effettuo refresh nel controllo iniziale, almeno tutti i dati sono consistenti rispetto all'intervallo temporale
// if(statTime.tmp_latenzaMediaAttraversamento_sumLatenze>SOGLIA_DIMENSIONE){
// // azzero temporanei
// statTime.tmp_latenzaMediaAttraversamento_sumLatenze=statTime.tmp_latenzaMediaAttraversamento_sumLatenze;
// statTime.tmp_latenzaMediaAttraversamento_countTransazioni=1;
// }
}
private static void computeDimensione(long dimensione,StatisticSize statSize){
// Minima
if(statSize.dimensioneMinimaMessaggio<=0)
statSize.dimensioneMinimaMessaggio = dimensione;
else if(dimensione<statSize.dimensioneMinimaMessaggio)
statSize.dimensioneMinimaMessaggio = dimensione;
// Massima
if(dimensione>statSize.dimensioneMassimaMessaggio)
statSize.dimensioneMassimaMessaggio = dimensione;
// Media
statSize.tmp_dimensioneMediaMessaggio_sumDimensioni+=dimensione;
statSize.tmp_dimensioneMediaMessaggio_countTransazioni++;
statSize.dimensioneMediaMessaggio = statSize.tmp_dimensioneMediaMessaggio_sumDimensioni/statSize.tmp_dimensioneMediaMessaggio_countTransazioni;
// Effettuo refresh nel controllo iniziale, almeno tutti i dati sono consistenti rispetto all'intervallo temporale
// if(statSize.tmp_dimensioneMediaMessaggio_sumDimensioni>SOGLIA_DIMENSIONE){
// // azzero temporanei
// statSize.tmp_dimensioneMediaMessaggio_sumDimensioni=statSize.dimensioneMediaMessaggio;
// statSize.tmp_dimensioneMediaMessaggio_countTransazioni=1;
// }
}
/* BEAN */
long dataUltimoRefresh = -1;
StatisticCount statNumeroTransazioni = new StatisticCount();
StatisticCount statNumeroTransazioni_PD = new StatisticCount();
StatisticCount statNumeroTransazioni_PA = new StatisticCount();
StatisticTime statLatenzaAttraversamento = new StatisticTime();
StatisticTime statLatenzaAttraversamento_request = new StatisticTime();
StatisticTime statLatenzaAttraversamento_response = new StatisticTime();
StatisticTime statLatenzaAttraversamento_PD = new StatisticTime();
StatisticTime statLatenzaAttraversamento_PD_request = new StatisticTime();
StatisticTime statLatenzaAttraversamento_PD_response = new StatisticTime();
StatisticTime statLatenzaAttraversamento_PA = new StatisticTime();
StatisticTime statLatenzaAttraversamento_PA_request = new StatisticTime();
StatisticTime statLatenzaAttraversamento_PA_response = new StatisticTime();
StatisticSize statDimensioneMessaggio = new StatisticSize();
StatisticSize statDimensioneMessaggio_in_request = new StatisticSize();
StatisticSize statDimensioneMessaggio_out_request = new StatisticSize();
StatisticSize statDimensioneMessaggio_in_response = new StatisticSize();
StatisticSize statDimensioneMessaggio_out_response = new StatisticSize();
StatisticSize statDimensioneMessaggio_response = new StatisticSize();
StatisticSize statDimensioneMessaggio_PD = new StatisticSize();
StatisticSize statDimensioneMessaggio_PD_in_request = new StatisticSize();
StatisticSize statDimensioneMessaggio_PD_out_request = new StatisticSize();
StatisticSize statDimensioneMessaggio_PD_in_response = new StatisticSize();
StatisticSize statDimensioneMessaggio_PD_out_response = new StatisticSize();
StatisticSize statDimensioneMessaggio_PA = new StatisticSize();
StatisticSize statDimensioneMessaggio_PA_in_request = new StatisticSize();
StatisticSize statDimensioneMessaggio_PA_out_request = new StatisticSize();
StatisticSize statDimensioneMessaggio_PA_in_response = new StatisticSize();
StatisticSize statDimensioneMessaggio_PA_out_response = new StatisticSize();
public StatisticSize getStatDimensioneMessaggio() {
return this.statDimensioneMessaggio;
}
public StatisticSize getStatDimensioneMessaggio_in_request() {
return this.statDimensioneMessaggio_in_request;
}
public StatisticSize getStatDimensioneMessaggio_out_request() {
return this.statDimensioneMessaggio_out_request;
}
public StatisticSize getStatDimensioneMessaggio_in_response() {
return this.statDimensioneMessaggio_in_response;
}
public StatisticSize getStatDimensioneMessaggio_out_response() {
return this.statDimensioneMessaggio_out_response;
}
public StatisticSize getStatDimensioneMessaggio_response() {
return this.statDimensioneMessaggio_response;
}
public StatisticSize getStatDimensioneMessaggio_PD() {
return this.statDimensioneMessaggio_PD;
}
public StatisticSize getStatDimensioneMessaggio_PD_in_request() {
return this.statDimensioneMessaggio_PD_in_request;
}
public StatisticSize getStatDimensioneMessaggio_PD_out_request() {
return this.statDimensioneMessaggio_PD_out_request;
}
public StatisticSize getStatDimensioneMessaggio_PD_in_response() {
return this.statDimensioneMessaggio_PD_in_response;
}
public StatisticSize getStatDimensioneMessaggio_PD_out_response() {
return this.statDimensioneMessaggio_PD_out_response;
}
public StatisticSize getStatDimensioneMessaggio_PA() {
return this.statDimensioneMessaggio_PA;
}
public StatisticSize getStatDimensioneMessaggio_PA_in_request() {
return this.statDimensioneMessaggio_PA_in_request;
}
public StatisticSize getStatDimensioneMessaggio_PA_out_request() {
return this.statDimensioneMessaggio_PA_out_request;
}
public StatisticSize getStatDimensioneMessaggio_PA_in_response() {
return this.statDimensioneMessaggio_PA_in_response;
}
public StatisticSize getStatDimensioneMessaggio_PA_out_response() {
return this.statDimensioneMessaggio_PA_out_response;
}
public StatisticCount getStatNumeroTransazioni() {
return this.statNumeroTransazioni;
}
public StatisticCount getStatNumeroTransazioni_PD() {
return this.statNumeroTransazioni_PD;
}
public StatisticCount getStatNumeroTransazioni_PA() {
return this.statNumeroTransazioni_PA;
}
public StatisticTime getStatLatenzaAttraversamento() {
return this.statLatenzaAttraversamento;
}
public StatisticTime getStatLatenzaAttraversamento_request() {
return this.statLatenzaAttraversamento_request;
}
public StatisticTime getStatLatenzaAttraversamento_response() {
return this.statLatenzaAttraversamento_response;
}
public StatisticTime getStatLatenzaAttraversamento_PD() {
return this.statLatenzaAttraversamento_PD;
}
public StatisticTime getStatLatenzaAttraversamento_PD_request() {
return this.statLatenzaAttraversamento_PD_request;
}
public StatisticTime getStatLatenzaAttraversamento_PD_response() {
return this.statLatenzaAttraversamento_PD_response;
}
public StatisticTime getStatLatenzaAttraversamento_PA() {
return this.statLatenzaAttraversamento_PA;
}
public StatisticTime getStatLatenzaAttraversamento_PA_request() {
return this.statLatenzaAttraversamento_PA_request;
}
public StatisticTime getStatLatenzaAttraversamento_PA_response() {
return this.statLatenzaAttraversamento_PA_response;
}
public long getDataUltimoRefresh() {
return this.dataUltimoRefresh;
}
}