Package org.wso2.carbon.statistics.transport.services

Source Code of org.wso2.carbon.statistics.transport.services.TransportStatisticsAdmin

/*
* Copyright 2004,2005 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*      http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package org.wso2.carbon.statistics.transport.services;


import org.wso2.carbon.core.AbstractAdmin;
import org.wso2.carbon.statistics.transport.services.util.*;
import org.apache.axis2.transport.TransportListener;
import org.apache.axis2.transport.TransportSender;
import org.apache.axis2.transport.base.ManagementSupport;

import java.lang.management.ManagementFactory;

/**
*  Admin service for the transport-statistics component.
*/
public class TransportStatisticsAdmin extends AbstractAdmin {

    public String[] getExposedTransports() {
        return ConfigHolder.getInstance().getAllTransports();
    }

    public TransportStatistics getTransportStatistic(String transportName) {
        return new TransportStatistics(transportName);
    }

    public ThreadViewStatistics getThreadViewStatistics() {
        return new ThreadViewStatistics(ManagementFactory.getPlatformMBeanServer());
    }

    // TODO : should update the wsdl
    public LatencyViewStatistics getLatencyViewStatistics() {
        return new LatencyViewStatistics(ManagementFactory.getPlatformMBeanServer());
    }

    public SystemTransportStatistics getAllTransportStatistics() {
        String[] transports = ConfigHolder.getInstance().getAllTransports();
        SystemTransportStatistics sysTransportStat = new SystemTransportStatistics();
        for (String transport : transports) {
            sysTransportStat.addTransportStatistics(new TransportStatistics(transport));
        }
        return sysTransportStat;
    }


    public String getTransportClassName(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ConfigHolder.getInstance().getTransportListenerClassName(transportName);
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ConfigHolder.getInstance().getTransportSenderClassName(transportName);
        }
        return "";
    }

    public int getActiveThreadCount(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getActiveThreadCount();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getActiveThreadCount();
        }
        return 0;
    }

    public double getAvgSizeReceived(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getAvgSizeReceived();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getAvgSizeReceived();
        }
        return 0;
    }

    public double getAvgSizeSent(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getAvgSizeSent();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getAvgSizeSent();
        }
        return 0;
    }

    public long getBytesReceived(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getBytesReceived();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getBytesReceived();
        }
        return 0;
    }

    public long getBytesSent(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getBytesSent();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getBytesSent();
        }
        return 0;
    }

    public long getFaultsReceiving(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getFaultsReceiving();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getFaultsReceiving();
        }
        return 0;
    }

    public long getFaultsSending(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getFaultsSending();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getFaultsSending();
        }
        return 0;
    }

    public long getLastResetTime(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getLastResetTime();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getLastResetTime();
        }
        return 0;
    }

    public long getMaxSizeReceived(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getMaxSizeReceived();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getMaxSizeReceived();
        }
        return 0;
    }

    public long getMaxSizeSent(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getMaxSizeSent();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getMaxSizeSent();
        }
        return 0;
    }

    public long getMessagesReceived(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getMessagesReceived();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getMessagesReceived();
        }
        return 0;
    }

    public long getMessagesSent(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getMessagesSent();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().
                    getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getMessagesSent();
        }
        return 0;
    }

    public long getMetricsWindow(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getMetricsWindow();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getMetricsWindow();
        }
        return 0;
    }

    public long getMinSizeReceived(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getMinSizeReceived();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getMinSizeReceived();
        }
        return 0;
    }

    public long getMinSizeSent(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getMinSizeSent();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getMinSizeSent();
        }
        return 0;
    }

    public int getQueueSize(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getQueueSize();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getQueueSize();
        }
        return 0;
    }

    public long getTimeoutsReceiving(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getTimeoutsReceiving();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getTimeoutsReceiving();
        }
        return 0;
    }

    public long getTimeoutsSending(String transportType, String transportName) {
        if (TransportStatisticsConstants.LISTENER.equalsIgnoreCase(transportType)) {
            TransportListener trpListener = ConfigHolder.getInstance().
                    getTransportListener(transportName);
            if (trpListener instanceof ManagementSupport)
                return ((ManagementSupport) trpListener).getTimeoutsSending();
        }
        if (TransportStatisticsConstants.SENDER.equalsIgnoreCase(transportType)) {
            TransportSender trpSender = ConfigHolder.getInstance().getTransportSender(transportName);
            if (trpSender instanceof ManagementSupport)
                return ((ManagementSupport) trpSender).getTimeoutsSending();
        }
        return 0;
    }

}
TOP

Related Classes of org.wso2.carbon.statistics.transport.services.TransportStatisticsAdmin

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.