/**
 * StatServiceSoapBindingStub.java
 *
 * This file was auto-generated from WSDL
 * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter.
 */

package com.genesyslab.gis.services.statistic;

public class StatServiceSoapBindingStub extends org.apache.axis.client.Stub implements com.genesyslab.gis.services.statistic.StatService {
    private java.util.Vector cachedSerClasses = new java.util.Vector();
    private java.util.Vector cachedSerQNames = new java.util.Vector();
    private java.util.Vector cachedSerFactories = new java.util.Vector();
    private java.util.Vector cachedDeserFactories = new java.util.Vector();

    static org.apache.axis.description.OperationDesc [] _operations;

    static {
        _operations = new org.apache.axis.description.OperationDesc[5];
        _initOperationDesc1();
    }

    private static void _initOperationDesc1(){
        org.apache.axis.description.OperationDesc oper;
        org.apache.axis.description.ParameterDesc param;
        oper = new org.apache.axis.description.OperationDesc();
        oper.setName("subscribeStatistic");
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "statistic"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statistic"), com.genesyslab.gis.services.statistic.types.Statistic.class, false, false);
        oper.addParameter(param);
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "resource"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"), java.lang.String.class, false, false);
        oper.addParameter(param);
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "remoting"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "unsolicitedNotification"), com.genesyslab.gis.services.statistic.types.UnsolicitedNotification.class, false, false);
        oper.addParameter(param);
        oper.setReturnType(org.apache.axis.encoding.XMLType.AXIS_VOID);
        oper.setStyle(org.apache.axis.constants.Style.RPC);
        oper.setUse(org.apache.axis.constants.Use.ENCODED);
        _operations[0] = oper;

        oper = new org.apache.axis.description.OperationDesc();
        oper.setName("unsubscribeStatistic");
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "statisticId"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"), java.lang.String.class, false, false);
        oper.addParameter(param);
        oper.setReturnType(org.apache.axis.encoding.XMLType.AXIS_VOID);
        oper.setStyle(org.apache.axis.constants.Style.RPC);
        oper.setUse(org.apache.axis.constants.Use.ENCODED);
        _operations[1] = oper;

        oper = new org.apache.axis.description.OperationDesc();
        oper.setName("retrieveSubscribedStatistics");
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "subscriptions"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticSubscriptions"), com.genesyslab.gis.services.statistic.types.StatisticSubscriptions.class, false, false);
        oper.addParameter(param);
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "notification"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "notification"), com.genesyslab.gis.services.statistic.types.Notification.class, false, false);
        oper.addParameter(param);
        oper.setReturnType(new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "retrieveSubscribedStatisticsResponse"));
        oper.setReturnClass(com.genesyslab.gis.services.statistic.types.RetrieveSubscribedStatisticsResponse.class);
        oper.setReturnQName(new javax.xml.namespace.QName("", "retrieveSubscribedStatisticsResult"));
        oper.setStyle(org.apache.axis.constants.Style.RPC);
        oper.setUse(org.apache.axis.constants.Use.ENCODED);
        _operations[2] = oper;

        oper = new org.apache.axis.description.OperationDesc();
        oper.setName("retrieveStatistic");
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "statistic"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statistic"), com.genesyslab.gis.services.statistic.types.Statistic.class, false, false);
        oper.addParameter(param);
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "resource"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"), java.lang.String.class, false, false);
        oper.addParameter(param);
        oper.setReturnType(new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "retrieveStatisticResponse"));
        oper.setReturnClass(com.genesyslab.gis.services.statistic.types.RetrieveStatisticResponse.class);
        oper.setReturnQName(new javax.xml.namespace.QName("", "retrieveStatisticResult"));
        oper.setStyle(org.apache.axis.constants.Style.RPC);
        oper.setUse(org.apache.axis.constants.Use.ENCODED);
        _operations[3] = oper;

        oper = new org.apache.axis.description.OperationDesc();
        oper.setName("retrieveStatisticalProfile");
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "resource"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"), java.lang.String.class, false, false);
        oper.addParameter(param);
        param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "profileType"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticalProfileType"), com.genesyslab.gis.services.statistic.types.StatisticalProfileType.class, false, false);
        oper.addParameter(param);
        oper.setReturnType(new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "retrieveStatisticalProfileResponse"));
        oper.setReturnClass(com.genesyslab.gis.services.statistic.types.RetrieveStatisticalProfileResponse.class);
        oper.setReturnQName(new javax.xml.namespace.QName("", "retrieveStatisticalProfileResult"));
        oper.setStyle(org.apache.axis.constants.Style.RPC);
        oper.setUse(org.apache.axis.constants.Use.ENCODED);
        _operations[4] = oper;

    }

    public StatServiceSoapBindingStub() throws org.apache.axis.AxisFault {
         this(null);
    }

    public StatServiceSoapBindingStub(java.net.URL endpointURL, javax.xml.rpc.Service service) throws org.apache.axis.AxisFault {
         this(service);
         super.cachedEndpoint = endpointURL;
    }

    public StatServiceSoapBindingStub(javax.xml.rpc.Service service) throws org.apache.axis.AxisFault {
        if (service == null) {
            super.service = new org.apache.axis.client.Service();
        } else {
            super.service = service;
        }
        ((org.apache.axis.client.Service)super.service).setTypeMappingVersion("1.2");
            java.lang.Class cls;
            javax.xml.namespace.QName qName;
            javax.xml.namespace.QName qName2;
            java.lang.Class beansf = org.apache.axis.encoding.ser.BeanSerializerFactory.class;
            java.lang.Class beandf = org.apache.axis.encoding.ser.BeanDeserializerFactory.class;
            java.lang.Class enumsf = org.apache.axis.encoding.ser.EnumSerializerFactory.class;
            java.lang.Class enumdf = org.apache.axis.encoding.ser.EnumDeserializerFactory.class;
            java.lang.Class arraysf = org.apache.axis.encoding.ser.ArraySerializerFactory.class;
            java.lang.Class arraydf = org.apache.axis.encoding.ser.ArrayDeserializerFactory.class;
            java.lang.Class simplesf = org.apache.axis.encoding.ser.SimpleSerializerFactory.class;
            java.lang.Class simpledf = org.apache.axis.encoding.ser.SimpleDeserializerFactory.class;
            java.lang.Class simplelistsf = org.apache.axis.encoding.ser.SimpleListSerializerFactory.class;
            java.lang.Class simplelistdf = org.apache.axis.encoding.ser.SimpleListDeserializerFactory.class;
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "actions");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.Actions.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "ArrayOf_subscription");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticSubscription[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticSubscription");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "eventValue");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.EventValue.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "eventValues");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.EventValue[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "eventValue");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "eventValueTypeType");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.EventValueTypeType.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(enumsf);
            cachedDeserFactories.add(enumdf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "metric");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.Metric.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "notification");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.Notification.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "notificationMode");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.NotificationMode.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(enumsf);
            cachedDeserFactories.add(enumdf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "objectIdType");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.ObjectIdType.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "objectType");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.ObjectType.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(enumsf);
            cachedDeserFactories.add(enumdf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "objectTypes");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.ObjectType[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "objectType");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "parameter");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.Parameter.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "parameters");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.Parameter[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "parameter");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "profileInfo");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.ProfileInfo.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "retrieveStatisticalProfileResponse");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.RetrieveStatisticalProfileResponse.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "retrieveStatisticResponse");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.RetrieveStatisticResponse.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "retrieveSubscribedStatisticsResponse");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.RetrieveSubscribedStatisticsResponse.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "schedule");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.Schedule.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "scheduleMode");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.ScheduleMode.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(enumsf);
            cachedDeserFactories.add(enumdf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statistic");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.Statistic.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticalProfileType");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticalProfileType.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(enumsf);
            cachedDeserFactories.add(enumdf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticInfos");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticTypeInfoType[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticTypeInfoType");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticState");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticState.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticStateData");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticStateData.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticStates");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticState[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticState");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticStateType");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticStateType.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(enumsf);
            cachedDeserFactories.add(enumdf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticSubscription");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticSubscription.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticSubscriptions");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticSubscriptions.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticType");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticType.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticTypeInfoType");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticTypeInfoType.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticValue");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticValue.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticValues");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StatisticValue[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "statisticValue");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "timeInterval");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.TimeInterval.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "timeIntervalType");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.TimeIntervalType.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(enumsf);
            cachedDeserFactories.add(enumdf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "timeProfile");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.TimeProfile.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "timeProfiles");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.TimeProfile[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "timeProfile");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "timeRangeType");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.TimeRangeType.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2002/03", "unsolicitedNotification");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.UnsolicitedNotification.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "actions");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StateDNAction[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "stateDNAction");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "agentReasons");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.AgentReasons.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "agents");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.AgentStatus[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "agentStatus");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "agentStatus");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.AgentStatus.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "campaignStatus");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.CampaignStatus.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "connID");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.ConnID.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "dataCall");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.DataCall.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "dns");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.DnStatus[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "dnStatus");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "dnStatus");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.DnStatus.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "groupStatus");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.GroupStatus.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "keyValue");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.KeyValue.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "kvListValue");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.KeyValue[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "keyValue");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/types/2005/10", "stateDNAction");
            cachedSerQNames.add(qName);
            cls = com.genesyslab.gis.services.statistic.types.StateDNAction.class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);

            qName = new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/wsdl/2002/03", "ArrayOf_xsd_string");
            cachedSerQNames.add(qName);
            cls = java.lang.String[].class;
            cachedSerClasses.add(cls);
            qName = new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string");
            qName2 = null;
            cachedSerFactories.add(new org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
            cachedDeserFactories.add(new org.apache.axis.encoding.ser.ArrayDeserializerFactory());

    }

    protected org.apache.axis.client.Call createCall() throws java.rmi.RemoteException {
        try {
            org.apache.axis.client.Call _call = super._createCall();
            if (super.maintainSessionSet) {
                _call.setMaintainSession(super.maintainSession);
            }
            if (super.cachedUsername != null) {
                _call.setUsername(super.cachedUsername);
            }
            if (super.cachedPassword != null) {
                _call.setPassword(super.cachedPassword);
            }
            if (super.cachedEndpoint != null) {
                _call.setTargetEndpointAddress(super.cachedEndpoint);
            }
            if (super.cachedTimeout != null) {
                _call.setTimeout(super.cachedTimeout);
            }
            if (super.cachedPortName != null) {
                _call.setPortName(super.cachedPortName);
            }
            java.util.Enumeration keys = super.cachedProperties.keys();
            while (keys.hasMoreElements()) {
                java.lang.String key = (java.lang.String) keys.nextElement();
                _call.setProperty(key, super.cachedProperties.get(key));
            }
            // All the type mapping information is registered
            // when the first call is made.
            // The type mapping information is actually registered in
            // the TypeMappingRegistry of the service, which
            // is the reason why registration is only needed for the first call.
            synchronized (this) {
                if (firstCall()) {
                    // must set encoding style before registering serializers
                    _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
                    _call.setEncodingStyle(org.apache.axis.Constants.URI_SOAP11_ENC);
                    for (int i = 0; i < cachedSerFactories.size(); ++i) {
                        java.lang.Class cls = (java.lang.Class) cachedSerClasses.get(i);
                        javax.xml.namespace.QName qName =
                                (javax.xml.namespace.QName) cachedSerQNames.get(i);
                        java.lang.Object x = cachedSerFactories.get(i);
                        if (x instanceof Class) {
                            java.lang.Class sf = (java.lang.Class)
                                 cachedSerFactories.get(i);
                            java.lang.Class df = (java.lang.Class)
                                 cachedDeserFactories.get(i);
                            _call.registerTypeMapping(cls, qName, sf, df, false);
                        }
                        else if (x instanceof javax.xml.rpc.encoding.SerializerFactory) {
                            org.apache.axis.encoding.SerializerFactory sf = (org.apache.axis.encoding.SerializerFactory)
                                 cachedSerFactories.get(i);
                            org.apache.axis.encoding.DeserializerFactory df = (org.apache.axis.encoding.DeserializerFactory)
                                 cachedDeserFactories.get(i);
                            _call.registerTypeMapping(cls, qName, sf, df, false);
                        }
                    }
                }
            }
            return _call;
        }
        catch (java.lang.Throwable _t) {
            throw new org.apache.axis.AxisFault("Failure trying to get the Call object", _t);
        }
    }

    public void subscribeStatistic(com.genesyslab.gis.services.statistic.types.Statistic statistic, java.lang.String resource, com.genesyslab.gis.services.statistic.types.UnsolicitedNotification remoting) throws java.rmi.RemoteException {
        if (super.cachedEndpoint == null) {
            throw new org.apache.axis.NoEndPointException();
        }
        org.apache.axis.client.Call _call = createCall();
        _call.setOperation(_operations[0]);
        _call.setUseSOAPAction(true);
        _call.setSOAPActionURI("");
        _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
        _call.setOperationName(new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/wsdl/2002/03", "subscribeStatistic"));

        setRequestHeaders(_call);
        setAttachments(_call);
 try {        java.lang.Object _resp = _call.invoke(new java.lang.Object[] {statistic, resource, remoting});

        if (_resp instanceof java.rmi.RemoteException) {
            throw (java.rmi.RemoteException)_resp;
        }
        extractAttachments(_call);
  } catch (org.apache.axis.AxisFault axisFaultException) {
  throw axisFaultException;
}
    }

    public void unsubscribeStatistic(java.lang.String statisticId) throws java.rmi.RemoteException {
        if (super.cachedEndpoint == null) {
            throw new org.apache.axis.NoEndPointException();
        }
        org.apache.axis.client.Call _call = createCall();
        _call.setOperation(_operations[1]);
        _call.setUseSOAPAction(true);
        _call.setSOAPActionURI("");
        _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
        _call.setOperationName(new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/wsdl/2002/03", "unsubscribeStatistic"));

        setRequestHeaders(_call);
        setAttachments(_call);
 try {        java.lang.Object _resp = _call.invoke(new java.lang.Object[] {statisticId});

        if (_resp instanceof java.rmi.RemoteException) {
            throw (java.rmi.RemoteException)_resp;
        }
        extractAttachments(_call);
  } catch (org.apache.axis.AxisFault axisFaultException) {
  throw axisFaultException;
}
    }

    public com.genesyslab.gis.services.statistic.types.RetrieveSubscribedStatisticsResponse retrieveSubscribedStatistics(com.genesyslab.gis.services.statistic.types.StatisticSubscriptions subscriptions, com.genesyslab.gis.services.statistic.types.Notification notification) throws java.rmi.RemoteException {
        if (super.cachedEndpoint == null) {
            throw new org.apache.axis.NoEndPointException();
        }
        org.apache.axis.client.Call _call = createCall();
        _call.setOperation(_operations[2]);
        _call.setUseSOAPAction(true);
        _call.setSOAPActionURI("");
        _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
        _call.setOperationName(new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/wsdl/2002/03", "retrieveSubscribedStatistics"));

        setRequestHeaders(_call);
        setAttachments(_call);
 try {        java.lang.Object _resp = _call.invoke(new java.lang.Object[] {subscriptions, notification});

        if (_resp instanceof java.rmi.RemoteException) {
            throw (java.rmi.RemoteException)_resp;
        }
        else {
            extractAttachments(_call);
            try {
                return (com.genesyslab.gis.services.statistic.types.RetrieveSubscribedStatisticsResponse) _resp;
            } catch (java.lang.Exception _exception) {
                return (com.genesyslab.gis.services.statistic.types.RetrieveSubscribedStatisticsResponse) org.apache.axis.utils.JavaUtils.convert(_resp, com.genesyslab.gis.services.statistic.types.RetrieveSubscribedStatisticsResponse.class);
            }
        }
  } catch (org.apache.axis.AxisFault axisFaultException) {
  throw axisFaultException;
}
    }

    public com.genesyslab.gis.services.statistic.types.RetrieveStatisticResponse retrieveStatistic(com.genesyslab.gis.services.statistic.types.Statistic statistic, java.lang.String resource) throws java.rmi.RemoteException {
        if (super.cachedEndpoint == null) {
            throw new org.apache.axis.NoEndPointException();
        }
        org.apache.axis.client.Call _call = createCall();
        _call.setOperation(_operations[3]);
        _call.setUseSOAPAction(true);
        _call.setSOAPActionURI("");
        _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
        _call.setOperationName(new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/wsdl/2002/03", "retrieveStatistic"));

        setRequestHeaders(_call);
        setAttachments(_call);
 try {        java.lang.Object _resp = _call.invoke(new java.lang.Object[] {statistic, resource});

        if (_resp instanceof java.rmi.RemoteException) {
            throw (java.rmi.RemoteException)_resp;
        }
        else {
            extractAttachments(_call);
            try {
                return (com.genesyslab.gis.services.statistic.types.RetrieveStatisticResponse) _resp;
            } catch (java.lang.Exception _exception) {
                return (com.genesyslab.gis.services.statistic.types.RetrieveStatisticResponse) org.apache.axis.utils.JavaUtils.convert(_resp, com.genesyslab.gis.services.statistic.types.RetrieveStatisticResponse.class);
            }
        }
  } catch (org.apache.axis.AxisFault axisFaultException) {
  throw axisFaultException;
}
    }

    public com.genesyslab.gis.services.statistic.types.RetrieveStatisticalProfileResponse retrieveStatisticalProfile(java.lang.String resource, com.genesyslab.gis.services.statistic.types.StatisticalProfileType profileType) throws java.rmi.RemoteException {
        if (super.cachedEndpoint == null) {
            throw new org.apache.axis.NoEndPointException();
        }
        org.apache.axis.client.Call _call = createCall();
        _call.setOperation(_operations[4]);
        _call.setUseSOAPAction(true);
        _call.setSOAPActionURI("");
        _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
        _call.setOperationName(new javax.xml.namespace.QName("http://www.genesyslab.com/services/statservice/wsdl/2002/03", "retrieveStatisticalProfile"));

        setRequestHeaders(_call);
        setAttachments(_call);
 try {        java.lang.Object _resp = _call.invoke(new java.lang.Object[] {resource, profileType});

        if (_resp instanceof java.rmi.RemoteException) {
            throw (java.rmi.RemoteException)_resp;
        }
        else {
            extractAttachments(_call);
            try {
                return (com.genesyslab.gis.services.statistic.types.RetrieveStatisticalProfileResponse) _resp;
            } catch (java.lang.Exception _exception) {
                return (com.genesyslab.gis.services.statistic.types.RetrieveStatisticalProfileResponse) org.apache.axis.utils.JavaUtils.convert(_resp, com.genesyslab.gis.services.statistic.types.RetrieveStatisticalProfileResponse.class);
            }
        }
  } catch (org.apache.axis.AxisFault axisFaultException) {
  throw axisFaultException;
}
    }

}
